IGeminiSchema is a type metadata for the LLM (Large Language Model)
function calling in the Geminimi.
IGeminiSchema basically follows the JSON schema definition of the OpenAPI
v3.0 specification; OpenApiV3.IJsonSchema. However, IGeminiSchema
cannot understand union and reference types, represented by the oneOf and
$ref properties. Also, as OpenAPI v3.0 specification does not support the
tuple type, IGeminiSchema does not support the tuple type either.
If compare with OpenApi.IJsonSchema, the emended JSON schema type,
these are not supported in the Gemini schema. One thing interesting is, the
Gemini does not support the title property, so it would be revealed in the
IGeminiSchema.__IAttribute.description property instead.
Also, Gemini has banned below constraint properties. Instead, I'll will fill
the IGeminiSchema.__IAttribute.description property with the comment
text like "@format uuid".
Specified not only by the official documentation, but also by my
experiments. Therefore, its definitions can be inaccurate or be
changed in the future. If you find any wrong or outdated definitions,
please let me know by issue.
Type schema info for the Gemini function calling.
IGeminiSchema
is a type metadata for the LLM (Large Language Model) function calling in the Geminimi.IGeminiSchema
basically follows the JSON schema definition of the OpenAPI v3.0 specification; OpenApiV3.IJsonSchema. However,IGeminiSchema
cannot understand union and reference types, represented by theoneOf
and$ref
properties. Also, as OpenAPI v3.0 specification does not support the tuple type,IGeminiSchema
does not support the tuple type either.Does not support
If compare with OpenApi.IJsonSchema, the emended JSON schema type, these are not supported in the Gemini schema. One thing interesting is, the Gemini does not support the
title
property, so it would be revealed in the IGeminiSchema.__IAttribute.description property instead.Also, Gemini has banned below constraint properties. Instead, I'll will fill the IGeminiSchema.__IAttribute.description property with the comment text like
"@format uuid"
.