Skip to main content

vtcode_llm/providers/gemini/wire/models/
response.rs

1use super::Content;
2use serde::{Deserialize, Serialize};
3use serde_json::Value;
4
5#[derive(Debug, Clone, Serialize, Deserialize)]
6pub struct GenerateContentResponse {
7    pub(crate) candidates: Vec<Candidate>,
8    #[serde(default, rename = "promptFeedback")]
9    pub(crate) prompt_feedback: Option<Value>,
10    #[serde(default, rename = "usageMetadata")]
11    pub(crate) usage_metadata: Option<Value>,
12}
13
14#[derive(Debug, Clone, Serialize, Deserialize)]
15pub struct Candidate {
16    pub(crate) content: Content,
17    #[serde(default, rename = "finishReason")]
18    pub(crate) finish_reason: Option<String>,
19}