Skip to main content

vtcode_config/constants/models/
google.rs

1/// Default model - using stable version for production reliability
2pub const DEFAULT_MODEL: &str = "gemini-3-flash-preview";
3
4pub const SUPPORTED_MODELS: &[&str] = &[
5    "gemini-3.1-pro-preview",             // Latest Gemini 3.1 Pro flagship
6    "gemini-3.1-pro-preview-customtools", // Optimized for custom tools & bash
7    "gemini-3-flash-preview",             // Fast version of Gemini 3 Pro with 3-level thinking
8    "gemini-3-pro-image-preview",         // Image generation model with 4K resolution
9    "gemini-1.5-pro",
10    "gemini-1.5-flash",
11];
12
13/// Models that support thinking/reasoning capability with configurable thinking_level
14/// Based on: https://ai.google.dev/gemini-api/docs/gemini-3
15/// Gemini 3 Pro/Flash: supports low, high (default)
16/// Gemini 3 Flash only: also supports minimal, medium
17pub const REASONING_MODELS: &[&str] = &[
18    "gemini-3.1-pro-preview",
19    "gemini-3.1-pro-preview-customtools",
20    "gemini-3-flash-preview",
21    "gemini-1.5-pro",
22    "gemini-1.5-flash",
23];
24
25/// Models that support Gemini 3 extended thinking levels (minimal, medium)
26/// Only Gemini 3 Flash supports these additional levels beyond low/high
27pub const EXTENDED_THINKING_MODELS: &[&str] = &["gemini-3-flash-preview"];
28
29/// Models supporting image generation
30pub const IMAGE_GENERATION_MODELS: &[&str] = &["gemini-3-pro-image-preview"];
31
32/// Models that support context caching (min 2048 tokens required)
33/// Context caching reduces costs for repeated API calls with similar contexts
34/// Reference: https://ai.google.dev/gemini-api/docs/caching
35pub const CACHING_MODELS: &[&str] = &[
36    "gemini-3.1-pro-preview",
37    "gemini-3.1-pro-preview-customtools",
38    "gemini-3-flash-preview",
39    "gemini-1.5-pro",
40    "gemini-1.5-flash",
41];
42
43/// Models that support code execution (Python)
44/// Code execution allows models to write and execute Python code
45/// Reference: https://ai.google.dev/gemini-api/docs/code-execution
46pub const CODE_EXECUTION_MODELS: &[&str] = &[
47    "gemini-3.1-pro-preview",
48    "gemini-3.1-pro-preview-customtools",
49    "gemini-3-flash-preview",
50    "gemini-1.5-pro",
51    "gemini-1.5-flash",
52];
53
54// Convenience constants for commonly used models
55pub const GEMINI_3_1_PRO_PREVIEW: &str = "gemini-3.1-pro-preview";
56pub const GEMINI_3_1_PRO_PREVIEW_CUSTOMTOOLS: &str = "gemini-3.1-pro-preview-customtools";
57pub const GEMINI_3_FLASH_PREVIEW: &str = "gemini-3-flash-preview";
58pub const GEMINI_3_PRO_IMAGE_PREVIEW: &str = "gemini-3-pro-image-preview";