Skip to main content

Agentic Actors

Agentic actors are actors whose functionality is provided by an AI model. These actors receive requests in natural language and respond in natural language.

The Agentic SDK makes is easy to deploy an agentic actor without writing any code. The SDK currently supports OpenAI models directly from OpenAI or via Azure. To create an agentic actor, you only need to define agentic configuration file. Here's an example configuration from the demonstration project:

name: Ticket Agent
instructions: |
You are a work ticket system agent that helps employees manage work tickets.
You use the function tools available to you to answer the employees questions about tickets and create/update tickets.
chat:
hello: What can I do for you?
tools:
- subject: ticket
action: create
description: |
Creates a new work ticket with the given description.
- subject: ticket
action: close
description: Changes the status of the ticket with the given ID to closed.
- subject: ticket
action: list
description: |
List all tickets that have the given status.

The instructions field is the system message included at the top of every prompt to the model. It should describe the functionality you expect the model to perform.

The chat.hello field is the initial message sent to the user when they start a new chat conversation.

The tools entries describe all the skills on the Paranet that you want to give the AI model access to. These skills are presented to the model as tools that can be called. Based on the user's prompt, the model will decide which tools to call to perform handle the request. The description should tell the model what the skill does and provide any guidance on when to use it.

Deployment

First, create a new folder for the agent configuration file. Second, you need to provide skill catalog file in the same folder which the agent uses to find the exact schema required for each skill. Use the Paranet CLI to create the catalog file by running the following command from the project root:

$ para catalog create --skillsets -o <agent folder>

This command will create the required skillsets.yaml file.

Next, add an actor entry in your paranet.yaml file for the agent. Here's an example paranet.yaml entry for an agentic agent:

  - name: agent_model
version: 1.0.0
path: ./agent
agentic: tickets.agent.yaml
env:
OPENAI_API_KEY:
from_env: OPENAI_API_KEY

The path points to the location of your agent configuration file and agentic is the name of the file. The agent will need an OpenAI API key to call the service, and that's provided here by loading from the local environment when the codes is deployed.

Finally, deploy the agent as usual. For example,

$ para docker deploy package

If you are using Azure's host OpenAI models, you need to provide these environment variables instead of the OPENAI_API_KEY:

  • AZURE_OPENAI_API_KEY
  • AZURE_OPENAI_ENDPOINT
  • AZURE_OPENAI_API_VERSION
  • AZURE_OPENAI_DEPLOYMENT