Set up tool calling to trigger functions from user speech using Tavus-hosted or custom LLMs.
llm
layer. It allows an AI agent to trigger functions based on user speech during a conversation.
Field | Type | Required | Description |
---|---|---|---|
type | string | ✅ | Must be "function" to enable tool calling. |
function | object | ✅ | Defines the function that can be called by the LLM. Contains metadata and a strict schema for arguments. |
function
Field | Type | Required | Description |
---|---|---|---|
name | string | ✅ | A unique identifier for the function. Must be in snake_case . The model uses this to refer to the function when calling it. |
description | string | ✅ | A natural language explanation of what the function does. Helps the LLM decide when to call it. |
parameters | object | ✅ | A JSON Schema object that describes the expected structure of the function’s input arguments. |
function.parameters
Field | Type | Required | Description |
---|---|---|---|
type | string | ✅ | Always "object" . Indicates the expected input is a structured object. |
properties | object | ✅ | Defines each expected parameter and its corresponding type, constraints, and description. |
required | array of strings | ✅ | Specifies which parameters are mandatory for the function to execute. |
function.parameters.properties
properties
defines a single parameter the model must supply when calling the function.
Field | Type | Required | Description |
---|---|---|---|
<parameter_name> | object | ✅ | Each key is a named parameter (e.g., location ). The value is a schema for that parameter. |
Subfield | Type | Required | Description |
---|---|---|---|
type | string | ✅ | Data type (e.g., string , number , boolean ). |
description | string | ❌ | Explains what the parameter represents and how it should be used. |
enum | array | ❌ | Defines a strict list of allowed values for this parameter. Useful for categorical choices. |
llm
layers:
description
fields to improve selection accuracy.get_current_time
function from the example configuration above.tools
definitions using the Update Persona API.
<api_key>
with your actual API key. You can generate one in the Developer Portal.