assistant: Fix issue when using inline assistant with Gemini models (#29407)

Closes #29020

Release Notes:

- assistant: Fix issue when using inline assistant with Gemini models
This commit is contained in:
Bennet Bo Fenner
2025-04-25 12:24:21 +00:00
committed by GitHub
parent c39adc5242
commit 93862838bd
2 changed files with 17 additions and 8 deletions
@@ -2611,7 +2611,9 @@ impl AssistantContext {
.map(MessageContent::Text),
);
completion_request.messages.push(request_message);
if !request_message.contents_empty() {
completion_request.messages.push(request_message);
}
}
if let RequestType::SuggestEdits = request_type {
+14 -7
View File
@@ -442,13 +442,20 @@ pub fn into_google(
contents: request
.messages
.into_iter()
.map(|message| google_ai::Content {
parts: map_content(message.content),
role: match message.role {
Role::User => google_ai::Role::User,
Role::Assistant => google_ai::Role::Model,
Role::System => google_ai::Role::User, // Google AI doesn't have a system role
},
.filter_map(|message| {
let parts = map_content(message.content);
if parts.is_empty() {
None
} else {
Some(google_ai::Content {
parts,
role: match message.role {
Role::User => google_ai::Role::User,
Role::Assistant => google_ai::Role::Model,
Role::System => google_ai::Role::User, // Google AI doesn't have a system role
},
})
}
})
.collect(),
generation_config: Some(google_ai::GenerationConfig {