Change summary
crates/assistant_context_editor/src/context.rs | 4 ++
crates/language_models/src/provider/google.rs | 21 +++++++++++++------
2 files changed, 17 insertions(+), 8 deletions(-)
Detailed changes
@@ -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 {
@@ -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 {