|
|
|
@ -262,7 +262,12 @@ pub fn gemini_build_chat_completions_body(
|
|
|
|
|
stream: _,
|
|
|
|
|
} = data;
|
|
|
|
|
|
|
|
|
|
patch_system_message(&mut messages);
|
|
|
|
|
let mut system_message = None;
|
|
|
|
|
if model.name().starts_with("gemini-1.5") {
|
|
|
|
|
system_message = extract_system_message(&mut messages);
|
|
|
|
|
} else {
|
|
|
|
|
patch_system_message(&mut messages);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
let mut network_image_urls = vec![];
|
|
|
|
|
let contents: Vec<Value> = messages
|
|
|
|
@ -333,6 +338,10 @@ pub fn gemini_build_chat_completions_body(
|
|
|
|
|
|
|
|
|
|
let mut body = json!({ "contents": contents, "generationConfig": {} });
|
|
|
|
|
|
|
|
|
|
if let Some(v) = system_message {
|
|
|
|
|
body["systemInstruction"] = json!({ "parts": [{ "text": v }] });
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if let Some(v) = model.max_tokens_param() {
|
|
|
|
|
body["generationConfig"]["maxOutputTokens"] = v.into();
|
|
|
|
|
}
|
|
|
|
|