Edit

Share via


Quickstart: Create a prompt agent

In this quickstart, you create a prompt agent in Foundry Agent Service and have a conversation with it. A prompt agent is a declaratively defined agent that combines model configuration, instructions, tools, and natural language prompts to drive behavior.

If you don't have an Azure subscription, create a free account.

Prerequisites

Set environment variables

Store your project endpoint as an environment variable. Also set these values for use in your scripts.

Python and JavaScript

PROJECT_ENDPOINT=<endpoint copied from welcome screen>
AGENT_NAME="MyAgent"

C# and Java

ProjectEndpoint = <endpoint copied from welcome screen>
AgentName = "MyAgent"

Install packages and authenticate

Make sure you install the correct version of the packages as shown here.

  1. Install the current version of azure-ai-projects. This version uses the Foundry projects (new) API .

    pip install azure-ai-projects>=2.0.0
    
  2. Sign in using the CLI az login command to authenticate before running your Python scripts.

Tip

Code uses Azure AI Projects 2.x and is incompatible with Azure AI Projects 1.x. See the Foundry (classic) documentation for the Azure AI Projects 1.x version.

Create a prompt agent

Create a prompt agent using your deployed model. The agent uses a PromptAgentDefinition with instructions that define the agent's behavior. You can update or delete agents anytime.

from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient
from azure.ai.projects.models import PromptAgentDefinition

# Format: "https://resource_name.ai.azure.com/api/projects/project_name"
PROJECT_ENDPOINT = "your_project_endpoint"
AGENT_NAME = "your_agent_name"

# Create project client to call Foundry API
project = AIProjectClient(
    endpoint=PROJECT_ENDPOINT,
    credential=DefaultAzureCredential(),
)

# Create an agent with a model and instructions
agent = project.agents.create_version(
    agent_name=AGENT_NAME,
    definition=PromptAgentDefinition(
        model="gpt-5-mini",  # supports all Foundry direct models"
        instructions="You are a helpful assistant that answers general questions",
    ),
)
print(f"Agent created (id: {agent.id}, name: {agent.name}, version: {agent.version})")

The output confirms the agent was created. You see the agent name and ID printed to the console.

Chat with the agent

Use the agent you created to interact by asking a question and a related follow-up. The conversation maintains history across these interactions.

from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient

# Format: "https://resource_name.ai.azure.com/api/projects/project_name"
PROJECT_ENDPOINT = "your_project_endpoint"
AGENT_NAME = "your_agent_name"

# Create project and openai clients to call Foundry API
project = AIProjectClient(
    endpoint=PROJECT_ENDPOINT,
    credential=DefaultAzureCredential(),
)
openai = project.get_openai_client()

# Create a conversation for multi-turn chat
conversation = openai.conversations.create()

# Chat with the agent to answer questions
response = openai.responses.create(
    conversation=conversation.id,
    extra_body={"agent_reference": {"name": AGENT_NAME, "type": "agent_reference"}},
    input="What is the size of France in square miles?",
)
print(response.output_text)

# Ask a follow-up question in the same conversation
response = openai.responses.create(
    conversation=conversation.id,
    extra_body={"agent_reference": {"name": AGENT_NAME, "type": "agent_reference"}},
    input="And what is the capital city?",
)
print(response.output_text)

You see the agent's responses to both prompts. The follow-up response demonstrates that the agent maintains conversation history across turns.

Clean up resources

If you no longer need any of the resources you created, delete the resource group associated with your project.

  • In the Azure portal, select the resource group, and then select Delete. Confirm that you want to delete the resource group.