Skip to content

Commit 6203282

Browse files
committed
Remove tools and message history for OpenRouter Image generations (not supported)
1 parent ee311f0 commit 6203282

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

llms/extensions/providers/openrouter.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,14 @@ def to_response(self, response, chat, started_at, context=None):
3939

4040
return response
4141

42+
async def process_chat(self, chat, provider_id=None):
43+
clone = json.loads(json.dumps(chat))
44+
# remove tools from chat
45+
clone.pop("tools", None)
46+
# OpenRouter doesn't support multiple messages for image generation
47+
clone["messages"] = [clone["messages"][-1]]
48+
return await super().process_chat(clone, provider_id)
49+
4250
async def chat(self, chat, provider=None, context=None):
4351
headers = self.get_headers(provider, chat)
4452
if provider is not None:
@@ -51,8 +59,6 @@ async def chat(self, chat, provider=None, context=None):
5159
return ctx.log_json(self.to_response(json.loads(text), chat, started_at))
5260
else:
5361
chat_url = provider.chat_url
54-
# remove tools
55-
chat.pop("tools", None)
5662
# most image models fail if specifying text modality, e.g: ["image","text"]
5763
chat["modalities"] = ["image"]
5864
chat = await self.process_chat(chat, provider_id=self.id)

0 commit comments

Comments
 (0)