Agents
A Syllable agent can communicate with users via various channels, respond to their questions, and perform tasks on their behalf.
Creating an agent
To create an agent, click “Agents” on the left sidebar. This will take you to a list of the existing agents for your org. To create a new one, click “New agent” in the top-right corner.
- Agent name: The name of the agent is used to reference it elsewhere in Console, so you should pick something that’s easily identifiable.
- Agent description (optional): This description is displayed for extra context on the agent list screen you just saw.
- Prompt: The prompt that the agent will use for the LLM.
- Message: The message that the agent will deliver to the user at the beginning of a conversation.
- Timezone: The agent’s home timezone.
- Speech-to-text: The speech-to-text provider that the agent will use to interpret user input in voice conversations.
- Languages (optional): If you have configured a language group, you can select it here to provide the agent access to the language group’s languages and voices.
- Busy sound: The sound that will be played to the user in voice conversations after they finish speaking while they’re waiting for a response from the agent.
- Label (optional): Labels are used for filtering agents on the agent list screen.
Tool configuration
If you have configured a static parameter on a tool (see Tools), linked the tool to a prompt, and then linked that prompt to one or more agents, you can set override values for the static parameters at the agent level. When the agent calls the tool, for each static parameter, it will use its own override value if one exists; if not, it will use the tool’s default value for that static parameter if one exists. If there is no override value or default value for a given static parameter, the tool call will use a null
value for that parameter.
To do this, go to the page for your agent, click Edit, and scroll down to the “Tool configuration” section. Initially, the tool-level default value for the static parameter will be displayed, if one exists. If you override the value, any calls to the tool from this agent will use the agent’s override value instead of the default one. (If no override value is set for a given static parameter and the agent is therefore falling back to the tool-level default, note that any changes to the default will also affect this agent.)
For example, if you were using the get_weather
tool from the Tools doc linked above, and you wanted a specific agent to only fetch snowfall information rather than the full list of data specified as the tool-level default, you could navigate to that agent and set an override value for the current
static parameter to “snowfall”.
Session configuration
The “Session configuration” section allows you to set additional agent-level configuration.
- Session variables: If the agent’s prompt or message is referencing a variable, you can provide an agent-level value here. For example, if the message reads
“Hello! My name is {vars.name}! How can I assist you today?”
, and you provide a value for “vars.name” here, when a user talks to this agent, the agent-level value will be substituted into the message. This allows you to use the same prompt or message for multiple agents, but still include agent-specific information. - Tool headers: This section allows you to set HTTP headers and their values for tool API calls made by the agent. Note that headers configured here will be used by the agent for all tools.