types: include the 'items' and '$defs' fields to properly handle "array" types (#10091)

---------

Co-authored-by: Parth Sareen <parth.sareen@ollama.com>
This commit is contained in:
Tom Sheffler
2025-04-09 17:45:49 -07:00
committed by GitHub
parent 42ecb9f138
commit ef65174df2
3 changed files with 16 additions and 0 deletions

View File

@@ -370,9 +370,12 @@ func TestGenerateChat(t *testing.T) {
Description: "Get the current weather",
Parameters: struct {
Type string `json:"type"`
Defs any `json:"$defs,omitempty"`
Items any `json:"items,omitempty"`
Required []string `json:"required"`
Properties map[string]struct {
Type api.PropertyType `json:"type"`
Items any `json:"items,omitempty"`
Description string `json:"description"`
Enum []any `json:"enum,omitempty"`
} `json:"properties"`
@@ -381,6 +384,7 @@ func TestGenerateChat(t *testing.T) {
Required: []string{"location"},
Properties: map[string]struct {
Type api.PropertyType `json:"type"`
Items any `json:"items,omitempty"`
Description string `json:"description"`
Enum []any `json:"enum,omitempty"`
}{
@@ -467,9 +471,12 @@ func TestGenerateChat(t *testing.T) {
Description: "Get the current weather",
Parameters: struct {
Type string `json:"type"`
Defs any `json:"$defs,omitempty"`
Items any `json:"items,omitempty"`
Required []string `json:"required"`
Properties map[string]struct {
Type api.PropertyType `json:"type"`
Items any `json:"items,omitempty"`
Description string `json:"description"`
Enum []any `json:"enum,omitempty"`
} `json:"properties"`
@@ -478,6 +485,7 @@ func TestGenerateChat(t *testing.T) {
Required: []string{"location"},
Properties: map[string]struct {
Type api.PropertyType `json:"type"`
Items any `json:"items,omitempty"`
Description string `json:"description"`
Enum []any `json:"enum,omitempty"`
}{