{
"model": "gpt-3.5-turbo",
"stream": true,
"messages": [
{
"role": "user",
"content": "What is Meilisearch?"
}
],
"tools": [
{
"type": "function",
"function": {
"name": "_meiliSearchProgress",
"description": "Provides information about the current Meilisearch search operation",
"parameters": {
"type": "object",
"properties": {
"call_id": {
"type": "string",
"description": "The call ID to track the sources of the search"
},
"function_name": {
"type": "string",
"description": "The name of the function we are executing"
},
"function_parameters": {
"type": "string",
"description": "The parameters of the function we are executing, encoded in JSON"
}
},
"required": ["call_id", "function_name", "function_parameters"],
"additionalProperties": false
},
"strict": true
}
},
{
"type": "function",
"function": {
"name": "_meiliAppendConversationMessage",
"description": "Append a new message to the conversation based on what happened internally",
"parameters": {
"type": "object",
"properties": {
"role": {
"type": "string",
"description": "The role of the messages author, either `role` or `assistant`"
},
"content": {
"type": "string",
"description": "The contents of the `assistant` or `tool` message. Required unless `tool_calls` is specified."
},
"tool_calls": {
"type": ["array", "null"],
"description": "The tool calls generated by the model, such as function calls",
"items": {
"type": "object",
"properties": {
"function": {
"type": "object",
"description": "The function that the model called",
"properties": {
"name": {
"type": "string",
"description": "The name of the function to call"
},
"arguments": {
"type": "string",
"description": "The arguments to call the function with, as generated by the model in JSON format. Note that the model does not always generate valid JSON, and may hallucinate parameters not defined by your function schema. Validate the arguments in your code before calling your function."
}
}
},
"id": {
"type": "string",
"description": "The ID of the tool call"
},
"type": {
"type": "string",
"description": "The type of the tool. Currently, only function is supported"
}
}
}
},
"tool_call_id": {
"type": ["string", "null"],
"description": "Tool call that this message is responding to"
}
},
"required": ["role", "content", "tool_calls", "tool_call_id"],
"additionalProperties": false
},
"strict": true
}
},
{
"type": "function",
"function": {
"name": "_meiliSearchSources",
"description": "Provides sources of the search",
"parameters": {
"type": "object",
"properties": {
"call_id": {
"type": "string",
"description": "The call ID to track the original search associated to those sources"
},
"documents": {
"type": "object",
"description": "The documents associated with the search (call_id). Only the displayed attributes of the documents are returned"
}
},
"required": ["call_id", "documents"],
"additionalProperties": false
},
"strict": true
}
}
]
}