vtcode_config/core/agent/
small_model.rs1use serde::{Deserialize, Serialize};
4
5#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
15#[derive(Debug, Clone, Deserialize, Serialize)]
16pub struct AgentSmallModelConfig {
17 #[serde(default = "default_small_model_enabled")]
19 pub enabled: bool,
20
21 #[serde(default)]
24 pub model: String,
25
26 #[serde(default = "default_small_model_temperature")]
28 pub temperature: f32,
29
30 #[serde(default = "default_small_model_for_large_reads")]
32 pub use_for_large_reads: bool,
33
34 #[serde(default = "default_small_model_for_web_summary")]
36 pub use_for_web_summary: bool,
37
38 #[serde(default = "default_small_model_for_git_history")]
40 pub use_for_git_history: bool,
41
42 #[serde(default = "default_small_model_for_memory")]
44 pub use_for_memory: bool,
45}
46
47impl Default for AgentSmallModelConfig {
48 fn default() -> Self {
49 Self {
50 enabled: default_small_model_enabled(),
51 model: String::new(),
52 temperature: default_small_model_temperature(),
53 use_for_large_reads: default_small_model_for_large_reads(),
54 use_for_web_summary: default_small_model_for_web_summary(),
55 use_for_git_history: default_small_model_for_git_history(),
56 use_for_memory: default_small_model_for_memory(),
57 }
58 }
59}
60
61#[inline]
62const fn default_small_model_enabled() -> bool {
63 true }
65
66#[inline]
67const fn default_small_model_temperature() -> f32 {
68 0.3 }
70
71#[inline]
72const fn default_small_model_for_large_reads() -> bool {
73 true
74}
75
76#[inline]
77const fn default_small_model_for_web_summary() -> bool {
78 true
79}
80
81#[inline]
82const fn default_small_model_for_git_history() -> bool {
83 true
84}
85
86#[inline]
87const fn default_small_model_for_memory() -> bool {
88 true
89}