An agent is the basic building block of agent apps. An agent app typically has many agents, where each agent is defined to handle specific tasks. The agent data is provided to the LLM, so it has the information it needs to answer questions and execute tasks. Each agent can provide information, send queries to external services, or defer conversation handling to a Dialogflow CX flow or another agent to handle sub-tasks.

Agent data

An agent is composed of the following data:

  • Agent name: a concise name in natural language that helps developers and the LLM to understand what tasks the agent handles
  • Goals: high level description of what the agent should accomplish
  • Instructions: defines the process steps that should be taken to accomplish the goal
  • Examples: sample conversations that are effectively few-shot prompt examples for the LLM
  • Parameters: are used to store information about a conversation like user input, user system information, results of actions, and so on.

Default agent

When you create an agent app, a default agent is created automatically.

The default agent is the starting point for conversations, so it has some important distinctions from other agents:

  • The default agent doesn't receive a summary of preceding conversation turns.
  • The default agent can't define or receive input parameters.