@@ -1216,8 +1216,8 @@ def to_response(self, response, chat, started_at, context=None):
12161216 def chat_summary (self , chat ):
12171217 return chat_summary (chat )
12181218
1219- def process_chat (self , chat , provider_id = None ):
1220- return process_chat (chat , provider_id )
1219+ async def process_chat (self , chat , provider_id = None ):
1220+ return await process_chat (chat , provider_id )
12211221
12221222 async def chat (self , chat , context = None ):
12231223 chat ["model" ] = self .provider_model (chat ["model" ]) or chat ["model" ]
@@ -1272,7 +1272,7 @@ async def chat(self, chat, context=None):
12721272 if self .enable_thinking is not None :
12731273 chat ["enable_thinking" ] = self .enable_thinking
12741274
1275- chat = await process_chat (chat , provider_id = self .id )
1275+ chat = await self . process_chat (chat , provider_id = self .id )
12761276 _log (f"POST { self .chat_url } " )
12771277 _log (chat_summary (chat ))
12781278 # remove metadata if any (conflicts with some providers, e.g. Z.ai)
@@ -1304,6 +1304,15 @@ def __init__(self, **kwargs):
13041304 kwargs ["api" ] = "https://api.groq.com/openai/v1"
13051305 super ().__init__ (** kwargs )
13061306
1307+ async def process_chat (self , chat , provider_id = None ):
1308+ ret = await process_chat (chat , provider_id )
1309+ chat .pop ("modalities" , None ) # groq doesn't support modalities
1310+ messages = chat .get ("messages" , []).copy ()
1311+ for message in messages :
1312+ message .pop ("timestamp" , None ) # groq doesn't support timestamp
1313+ ret ["messages" ] = messages
1314+ return ret
1315+
13071316
13081317class XaiProvider (OpenAiCompatible ):
13091318 sdk = "@ai-sdk/xai"
0 commit comments