Skip to main content

vtcode_config/constants/models/
openai.rs

1pub const DEFAULT_MODEL: &str = "gpt-5.4";
2pub const SUPPORTED_MODELS: &[&str] = &[
3    GPT,
4    "gpt-5.4",
5    "gpt-5.4-pro",
6    "gpt-5.3-codex", // GPT-5.3 Codex optimized for agentic coding with xhigh reasoning support
7    "gpt-5.2-codex", // GPT-5.2 Codex optimized for agentic coding with xhigh reasoning support
8    "gpt-5.1-codex", // GPT-5.1 Codex optimized for agentic coding
9    "gpt-5.1-codex-max", // GPT-5.1 Codex Max higher-compute coding variant
10    "gpt-5-codex",   // GPT-5 Codex optimized for agentic coding
11    "gpt-5.2",
12    "gpt-5",
13    "gpt-5-mini",
14    "gpt-5-nano",
15    "o3",
16    "o4-mini",
17    "gpt-oss-20b",
18    "gpt-oss-120b",
19];
20
21/// Models that require the OpenAI Responses API
22pub const RESPONSES_API_MODELS: &[&str] = &[
23    GPT,
24    GPT_5,
25    GPT_5_2,
26    GPT_5_4,
27    GPT_5_4_PRO,
28    GPT_5_3_CODEX,
29    GPT_5_2_CODEX,
30    GPT_5_1_CODEX,
31    GPT_5_1_CODEX_MAX,
32    GPT_5_CODEX,
33    GPT_5_MINI,
34    GPT_5_NANO,
35    O3,
36    O4_MINI,
37];
38
39/// Models that support the OpenAI reasoning parameter payload
40pub const REASONING_MODELS: &[&str] = &[
41    GPT,
42    GPT_5,
43    GPT_5_2,
44    GPT_5_4,
45    GPT_5_4_PRO,
46    GPT_5_3_CODEX,
47    GPT_5_2_CODEX,
48    GPT_5_1_CODEX,
49    GPT_5_1_CODEX_MAX,
50    GPT_5_CODEX,
51    GPT_5_MINI,
52    GPT_5_NANO,
53    O3,
54    O4_MINI,
55];
56
57/// Models that support the native OpenAI `service_tier` request parameter.
58pub const SERVICE_TIER_MODELS: &[&str] = RESPONSES_API_MODELS;
59
60/// Models that do not expose structured tool calling on the OpenAI platform
61pub const TOOL_UNAVAILABLE_MODELS: &[&str] = &[];
62
63/// GPT-OSS models that use harmony tokenization
64pub const HARMONY_MODELS: &[&str] = &[GPT_OSS_20B, GPT_OSS_120B];
65
66// Convenience constants for commonly used models
67pub const GPT: &str = "gpt";
68pub const GPT_5: &str = "gpt-5";
69pub const GPT_5_2: &str = "gpt-5.2";
70pub const GPT_5_4: &str = "gpt-5.4";
71pub const GPT_5_4_PRO: &str = "gpt-5.4-pro";
72pub const GPT_5_3_CODEX: &str = "gpt-5.3-codex"; // GPT-5.3 Codex optimized for agentic coding
73pub const GPT_5_2_CODEX: &str = "gpt-5.2-codex"; // GPT-5.2 Codex optimized for agentic coding
74pub const GPT_5_1_CODEX: &str = "gpt-5.1-codex"; // GPT-5.1 Codex optimized for agentic coding
75pub const GPT_5_1_CODEX_MAX: &str = "gpt-5.1-codex-max"; // GPT-5.1 Codex Max optimized for longer-running coding tasks
76pub const GPT_5_CODEX: &str = "gpt-5-codex"; // GPT-5 Codex optimized for agentic coding
77pub const GPT_5_MINI: &str = "gpt-5-mini";
78pub const GPT_5_NANO: &str = "gpt-5-nano";
79pub const O3: &str = "o3";
80pub const O4_MINI: &str = "o4-mini";
81pub const GPT_OSS_20B: &str = "gpt-oss-20b";
82pub const GPT_OSS_120B: &str = "gpt-oss-120b";