Before you go through this guide, make sure to create an account.
The agent
Our outbound agent navigates an IVR and gets a restaurant’s hours.Creating a new agent
To create a new agent, navigate to the Agents tab on the left sidebar and click the New Agent button on the top right. For this quickstart, we’ll walk through the pre-built agent together. You can clone this agent to your workspace by following the instructions here.Configuring the agent
Once you click into your cloned agent, you’ll see the agent’s configuration page. This is mission control for your agent, where you can configure the agent’s behavior and settings, go through past dials and run evaluations, and more.
Prompting the agent
Click on the Model tab to see the language model configuration for this agent. This specific agent comprises both an IVR navigation model and a conversational model. The IVR model triggers when Vogent detects that a line is from an IVR; once it detects a human line, it switches irreversibly to the conversational model. See the IVR Settings section for more information. You can view each model by going to the Version dropdown and selectingivr-version
or conversational-version
.
The IVR Model
The IVR model is a prompted agent on top of GPT-4o. The prompt is as follows:IVR Model Prompt
IVR Model Prompt
Ignore previous instructions. You are calling a restaurant, and I need you to navigate the IVR to find the hours (or, if the IVR does not give you the option to find the hours, I need you to navigate to reach a human).To press a button, output
<|press:n|>
, where n
is the button you want to press (so e.g. <|press:1|>
to press 1).
If you need to speak, just output the line that you want to say.If you do not want to do anything, please output <|silence|>
. Unless you need to press or say something, you should output <|silence|>
.If you have found the restaurant hours through their IVR, or if you reach a voicemail inbox or are asked to leave a message, output <|hangup|>
to end the call.If the IVR does not include the hours, then navigate to reach a human.Do not output anything else.The Conversational Model
The conversational model is a prompted agent on top of Vogent’s Base Conversations model. This is a custom model that we offer that has been fine-tuned to perform well on the phone with minimal prompting. The prompt is as follows:Conversational Model Prompt
Conversational Model Prompt
Ignore previous instructions. You are calling a restaurant,
{{restaurant_name}}
, to find out today’s hours.When the receptionist picks up, greet them and ask them what {{restaurant_name}}
’s hours are today. If they only offer the closing time, make sure to ask them for the opening time too.Once they answer, thank them and end the call by outputting <|hangup|>
.Do not ask any other questions. If asked, your name is Jay. You may be asked to be put on hold; if so, simply output <|silence|>
until the hold is over.Retrieving the hours post-call
After the call is completed, you can retrieve the hours from the call using the Dial Extractor webhook. The webhook will return the extracted hours in the format defined within the agent’s Extractor tab. You can also view the extracted hours by clicking on the dial in the agent’s Dials tab, or in the Dial History tab in the left sidebar. For this particular agent, we’ve defined the following extractor fields:Field Name | Type | Description | Nullable |
---|---|---|---|
opening_time | string | The opening time, in military time, in the format HH:MM | false |
closing_time | string | The closing time, in military time, in the format HH:MM | false |
opening_time
and closing_time
fields, and store them in the dial.
For more information on how to define extractors and use them effectively, see the extractors guide.
Making a call
Phone call
To make a phone call from an outbound agent, you’ll first need to create a phone number; see the getting started guide for more information. You can then follow these steps:1
Open the call modal
Click on the Make Call button on the top-right of the agent’s page.
2
Populate fields
In the Configure section, click on Find From Prompt to extract all of the variables from the prompt.
Then, for each variable (in this case, just
{{restaurant_name}}
), enter a value.3
Select an outbound phone number
Below the Configure section, toggle to Phone and select the phone number you want to call from.
4
Make the call
Enter the phone number that you’d like to dial, then click Dial.
Web call
To make a web call, you can follow the steps above; just toggle to Web instead of Phone.Viewing past calls
To view past calls to the agent, you can go to the agent’s Dials tab. This will show you a list of all past calls to the agent as well as the extractor results. You can click into any dial to listen to the recording and see the full transcript of the call, among other things. You can also filter calls by date range, call type, and more, or view dials across agents in the Dial History tab on the left sidebar.Testing new version on past calls
If you’ve made changes to your agent, you can test the new version on past calls by clicking the Run Counterfactual button when you’ve clicked into a dial. This will run the new agent on the same call transcript and show you the results.Counterfactuals will feed call history up to the current line to generate each response, so they won’t be perfect reconstructions of how the conversation would have gone. LLM-as-judge functionality is coming soon to enable more dynamic agent testing. See the counterfactuals guide for more information.