Expected Behavior
The response format "json_schema" can be used. ChatCompletionRequest
:
{
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "my_schema",
"schema": {
"type" : "object",
"properties" : {
"myproperty" : {
"type" : "string"
},
...
},
"required": [ ... ],
},
"strict": false
}
},
...
}
Current Behavior
The additional "json_schema" property cannot be set at ResponseFormat
.
Context
This should solve the problem that the LLM does not adhere to the JSON schema provided as "free text" in the prompt.
See https://platform.openai.com/docs/guides/structured-outputs/introduction
Comment From: ThomasVitale
@markusheiden thanks for the feature request. @tzolov has implemented support for OpenAI Structured Output in https://github.com/spring-projects/spring-ai/issues/1196 right after the OpenAI announcement. You can find more information on how to use it in this blog post: https://spring.io/blog/2024/08/09/spring-ai-embraces-openais-structured-outputs-enhancing-json-response
Comment From: markusheiden
Sorry for opening an already stale issue. Thanks for already having implemented it :-)