mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-05-07 22:15:28 +03:00
Set min length for summary too
This commit is contained in:
parent
96a4ad4db5
commit
bce174af13
@ -8,8 +8,6 @@ class ReviewMetadata(BaseModel):
|
|||||||
description="A short title characterizing what took place and where, under 10 words."
|
description="A short title characterizing what took place and where, under 10 words."
|
||||||
)
|
)
|
||||||
scene: str = Field(
|
scene: str = Field(
|
||||||
min_length=120,
|
|
||||||
max_length=600,
|
|
||||||
description="A chronological narrative of what happens from start to finish.",
|
description="A chronological narrative of what happens from start to finish.",
|
||||||
)
|
)
|
||||||
shortSummary: str = Field(
|
shortSummary: str = Field(
|
||||||
|
|||||||
@ -151,6 +151,18 @@ Each line represents a detection state, not necessarily unique individuals. The
|
|||||||
if "other_concerns" in schema.get("required", []):
|
if "other_concerns" in schema.get("required", []):
|
||||||
schema["required"].remove("other_concerns")
|
schema["required"].remove("other_concerns")
|
||||||
|
|
||||||
|
# Length hints injected into the schema as suggestions to the model
|
||||||
|
# (enforced by grammar-based providers like llama.cpp) but kept off the
|
||||||
|
# Pydantic model so a non-compliant response does not fail validation.
|
||||||
|
length_hints = {
|
||||||
|
"scene": {"minLength": 120, "maxLength": 600},
|
||||||
|
"shortSummary": {"minLength": 70, "maxLength": 100},
|
||||||
|
}
|
||||||
|
for field, hints in length_hints.items():
|
||||||
|
prop = schema.get("properties", {}).get(field)
|
||||||
|
if prop is not None:
|
||||||
|
prop.update(hints)
|
||||||
|
|
||||||
# OpenAI strict mode requires additionalProperties: false on all objects
|
# OpenAI strict mode requires additionalProperties: false on all objects
|
||||||
schema["additionalProperties"] = False
|
schema["additionalProperties"] = False
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user