diff --git a/frigate/genai/gemini.py b/frigate/genai/gemini.py index e0c0c7698..d9644950d 100644 --- a/frigate/genai/gemini.py +++ b/frigate/genai/gemini.py @@ -50,9 +50,9 @@ class GeminiClient(GenAIClient): response_format: Optional[dict] = None, ) -> Optional[str]: """Submit a request to Gemini.""" - contents = [ + contents = [prompt] + [ types.Part.from_bytes(data=img, mime_type="image/jpeg") for img in images - ] + [prompt] + ] try: # Merge runtime_options into generation_config if provided generation_config_dict: dict[str, Any] = {"candidate_count": 1} diff --git a/frigate/genai/openai.py b/frigate/genai/openai.py index 02ad301fa..55fb21cc1 100644 --- a/frigate/genai/openai.py +++ b/frigate/genai/openai.py @@ -44,7 +44,12 @@ class OpenAIClient(GenAIClient): ) -> Optional[str]: """Submit a request to OpenAI.""" encoded_images = [base64.b64encode(image).decode("utf-8") for image in images] - messages_content = [] + messages_content: list[dict] = [ + { + "type": "text", + "text": prompt, + } + ] for image in encoded_images: messages_content.append( { @@ -55,12 +60,6 @@ class OpenAIClient(GenAIClient): }, } ) - messages_content.append( - { - "type": "text", - "text": prompt, - } - ) try: request_params = { "model": self.genai_config.model,