[Bugfix] Fix AttributeError when passing StructuredOutputsParams to CompletionRequest (#35237)

Signed-off-by: Patrick Simianer <patrick@lilt.com>
This commit is contained in:
pks
2026-02-25 07:00:03 +01:00
committed by GitHub
parent 2ff3e436ad
commit af770b8e7b
2 changed files with 18 additions and 2 deletions

View File

@@ -555,8 +555,16 @@ class ChatCompletionRequest(OpenAIBaseModel):
return data
structured_outputs_kwargs = data["structured_outputs"]
# structured_outputs may arrive as a dict (from JSON/raw kwargs) or
# as a StructuredOutputsParams dataclass instance.
is_dataclass = isinstance(structured_outputs_kwargs, StructuredOutputsParams)
count = sum(
structured_outputs_kwargs.get(k) is not None
(
getattr(structured_outputs_kwargs, k, None)
if is_dataclass
else structured_outputs_kwargs.get(k)
)
is not None
for k in ("json", "regex", "choice")
)
# you can only use one kind of constraints for structured outputs