Adjust config propogation behavior

This commit is contained in:
Nicolas Mowen 2025-08-08 08:46:09 -06:00
parent 27372ffbcd
commit 5151a2516a
2 changed files with 10 additions and 5 deletions

View File

@ -108,6 +108,10 @@ class ObjectConfig(FrigateBaseModel):
default_factory=dict, title="Object filters." default_factory=dict, title="Object filters."
) )
mask: Union[str, list[str]] = Field(default="", title="Object mask.") mask: Union[str, list[str]] = Field(default="", title="Object mask.")
genai: GenAIObjectConfig = Field(
default_factory=GenAIObjectConfig,
title="Config for using genai to analyze objects.",
)
_all_objects: list[str] = PrivateAttr() _all_objects: list[str] = PrivateAttr()
@property @property

View File

@ -352,6 +352,11 @@ class FrigateConfig(FrigateBaseModel):
default_factory=ModelConfig, title="Detection model configuration." default_factory=ModelConfig, title="Detection model configuration."
) )
# GenAI config
genai: GenAIConfig = Field(
default_factory=GenAIConfig, title="Generative AI configuration."
)
# Camera config # Camera config
cameras: Dict[str, CameraConfig] = Field(title="Camera configuration.") cameras: Dict[str, CameraConfig] = Field(title="Camera configuration.")
audio: AudioConfig = Field( audio: AudioConfig = Field(
@ -366,9 +371,6 @@ class FrigateConfig(FrigateBaseModel):
ffmpeg: FfmpegConfig = Field( ffmpeg: FfmpegConfig = Field(
default_factory=FfmpegConfig, title="Global FFmpeg configuration." default_factory=FfmpegConfig, title="Global FFmpeg configuration."
) )
genai: GenAIConfig = Field(
default_factory=GenAIConfig, title="Generative AI configuration."
)
live: CameraLiveConfig = Field( live: CameraLiveConfig = Field(
default_factory=CameraLiveConfig, title="Live playback settings." default_factory=CameraLiveConfig, title="Live playback settings."
) )
@ -458,7 +460,6 @@ class FrigateConfig(FrigateBaseModel):
"live": ..., "live": ...,
"objects": ..., "objects": ...,
"review": ..., "review": ...,
"genai": ...,
"motion": ..., "motion": ...,
"notifications": ..., "notifications": ...,
"detect": ..., "detect": ...,
@ -606,7 +607,7 @@ class FrigateConfig(FrigateBaseModel):
camera_config.review.detections.enabled_in_config = ( camera_config.review.detections.enabled_in_config = (
camera_config.review.detections.enabled camera_config.review.detections.enabled
) )
camera_config.genai.enabled_in_config = camera_config.genai.enabled camera_config.objects.genai.enabled_in_config = camera_config.objects.genai.enabled
# Add default filters # Add default filters
object_keys = camera_config.objects.track object_keys = camera_config.objects.track