From 48c60621b6fcca746a11366d481ee6b1c9c2522d Mon Sep 17 00:00:00 2001 From: Josh Hawkins <32435876+hawkeye217@users.noreply.github.com> Date: Sat, 12 Oct 2024 07:19:24 -0500 Subject: [PATCH] Fix substitution on genai prompts (#14298) --- frigate/embeddings/maintainer.py | 2 +- frigate/genai/__init__.py | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/frigate/embeddings/maintainer.py b/frigate/embeddings/maintainer.py index 238efcfdf..c7060b9a6 100644 --- a/frigate/embeddings/maintainer.py +++ b/frigate/embeddings/maintainer.py @@ -259,7 +259,7 @@ class EmbeddingMaintainer(threading.Thread): camera_config = self.config.cameras[event.camera] description = self.genai_client.generate_description( - camera_config, thumbnails, event.label + camera_config, thumbnails, event ) if not description: diff --git a/frigate/genai/__init__.py b/frigate/genai/__init__.py index caf13082d..dccb74c1d 100644 --- a/frigate/genai/__init__.py +++ b/frigate/genai/__init__.py @@ -5,6 +5,7 @@ import os from typing import Optional from frigate.config import CameraConfig, GenAIConfig, GenAIProviderEnum +from frigate.models import Event PROVIDERS = {} @@ -31,12 +32,12 @@ class GenAIClient: self, camera_config: CameraConfig, thumbnails: list[bytes], - label: str, + event: Event, ) -> Optional[str]: """Generate a description for the frame.""" prompt = camera_config.genai.object_prompts.get( - label, camera_config.genai.prompt - ).format(label=label) + event.label, camera_config.genai.prompt + ).format(**event) return self._send(prompt, thumbnails) def _init_provider(self):