diff --git a/astrbot/core/provider/sources/gemini_source.py b/astrbot/core/provider/sources/gemini_source.py index af4b55bd5..3ce08968d 100644 --- a/astrbot/core/provider/sources/gemini_source.py +++ b/astrbot/core/provider/sources/gemini_source.py @@ -106,6 +106,9 @@ class ProviderGoogleGenAI(Provider): for message in payloads["messages"]: if message["role"] == "user": if isinstance(message["content"], str): + if not message['content']: + message['content'] = "" + google_genai_conversation.append({ "role": "user", "parts": [{"text": message["content"]}] @@ -115,6 +118,8 @@ class ProviderGoogleGenAI(Provider): parts = [] for part in message["content"]: if part["type"] == "text": + if not part["text"]: + part["text"] = "" parts.append({"text": part["text"]}) elif part["type"] == "image_url": parts.append({"inline_data": { @@ -127,6 +132,8 @@ class ProviderGoogleGenAI(Provider): }) elif message["role"] == "assistant": + if not message["content"]: + message["content"] = "" google_genai_conversation.append({ "role": "model", "parts": [{"text": message["content"]}]