Make keep_alive and options configurable

This commit is contained in:
Nicolas Mowen 2025-08-13 07:52:18 -06:00
parent 834cd10f99
commit 69c7d5047e
2 changed files with 5 additions and 2 deletions

View File

@ -1,5 +1,5 @@
from enum import Enum from enum import Enum
from typing import Optional from typing import Any, Optional
from pydantic import Field from pydantic import Field
@ -23,3 +23,5 @@ class GenAIConfig(FrigateBaseModel):
base_url: Optional[str] = Field(default=None, title="Provider base url.") base_url: Optional[str] = Field(default=None, title="Provider base url.")
model: str = Field(default="gpt-4o", title="GenAI model.") model: str = Field(default="gpt-4o", title="GenAI model.")
provider: GenAIProviderEnum | None = Field(default=None, title="GenAI provider.") provider: GenAIProviderEnum | None = Field(default=None, title="GenAI provider.")
keep_alive: int | str | None = Field(default="1h", title="Ollama keep_alive.")
extra_options: dict[str, Any] = Field(default={}, title="Ollama extra options.")

View File

@ -48,7 +48,8 @@ class OllamaClient(GenAIClient):
self.genai_config.model, self.genai_config.model,
prompt, prompt,
images=images if images else None, images=images if images else None,
keep_alive="1h", keep_alive=self.genai_config.keep_alive,
options=self.genai_config.extra_options,
) )
return result["response"].strip() return result["response"].strip()
except (TimeoutException, ResponseError) as e: except (TimeoutException, ResponseError) as e: