typia
typia copied to clipboard
OpenAI structured outputs support
Feature Request
I've been working with typia.llm.schema
for a while and it has been extremely helpful in generating JSON schemas to call LLMs from TS types. However, the new structured outputs API of OpenAI has some limitations in the type of schemas it can take.
In particular nullable
is not been taken into account. So it'd be great if we could map types X | null
to anyOf
. Maybe introducing a new flag to the typia.llm.schema
function.
Also, for types that don't extend from Record, we should mark [additionalProperties to false](https://platform.openai.com/docs/guides/structured-outputs/additionalproperties-false-must-always-be-set-in-objects)
.
I can contribute to this feature, but I may need some pointers for code references to start.