Building a Single Agent

Learn how to create and configure a single AI agent

Create one focused agent with instructions, tools, and memory—then iterate from a single prompt.

python
from praisonaiagents import Agent

agent = Agent(
    name="Assistant",
    instructions="You are a helpful assistant.",
)
agent.start("Say hello in one sentence.")

The user sends a prompt; the agent calls the model (and tools if configured) and returns text.

Diagram

Input

Agent

Output

This guide walks you through creating your first AI agent with PraisonAI.

Quick Start

  1. Install
    bash
    pip install praisonaiagents
    export OPENAI_API_KEY=your_api_key
  2. Create your first agent
    python
    from praisonaiagents import Agent
    
    agent = Agent(
        name="Assistant",
        instructions="You are a helpful assistant.",
    )
    
    result = agent.start("Hello! What can you help me with?")
    print(result)

Prerequisites

bash
pip install praisonaiagents

Set your API key:

bash
export OPENAI_API_KEY="your-api-key"

Basic Agent

python
from praisonaiagents import Agent

# Create a simple agent
agent = Agent(
    name="Assistant",
    instructions="You are a helpful assistant."
)

# Run the agent
result = agent.start("Hello! What can you help me with?")
print(result)

Agent with Custom Role

python
from praisonaiagents import Agent

agent = Agent(
    name="Researcher",
    role="Senior Research Analyst",
    goal="Provide accurate and comprehensive research",
    backstory="You are an experienced researcher with expertise in AI and technology.",
    instructions="Always cite sources and provide balanced perspectives."
)

result = agent.start("What are the latest trends in AI?")
print(result)

Agent with Tools

python
from praisonaiagents import Agent
from praisonaiagents import internet_search

agent = Agent(
    name="Web Researcher",
    instructions="Search the web to find accurate information.",
    tools=[internet_search]
)

result = agent.start("Find the latest news about OpenAI")
print(result)

Agent with Memory

python
from praisonaiagents import Agent, Memory

# Create memory instance
memory = Memory()

agent = Agent(
    name="Assistant",
    instructions="You are a helpful assistant with memory.",
    memory=memory
)

# First conversation
agent.start("My name is Alice")

# Agent remembers the name
result = agent.start("What's my name?")
print(result)  # "Your name is Alice"

Agent Configuration Options

ParameterTypeDescription
namestrAgent name
rolestrAgent’s role description
goalstrWhat the agent aims to achieve
backstorystrBackground context for the agent
instructionsstrSystem instructions
modelstrLLM model to use (default: gpt-4o-mini)
toolslistList of tools available to the agent
memoryMemoryMemory instance for persistence
output`str \OutputConfig`Output mode ("silent", "verbose", "stream", …) or OutputConfig(...) for fine-grained control

Using Different Models

python
from praisonaiagents import Agent

# OpenAI
agent = Agent(name="GPT Agent", llm="gpt-4o")

# Anthropic
agent = Agent(name="Claude Agent", llm="claude-3-5-sonnet-20241022")

# Ollama (local)
agent = Agent(name="Local Agent", llm="ollama/llama3.2")

# Google
agent = Agent(name="Gemini Agent", llm="gemini/gemini-2.0-flash")

Chat Mode

python
from praisonaiagents import Agent

agent = Agent(
    name="ChatBot",
    instructions="You are a friendly chatbot."
)

# Multi-turn conversation
messages = [
    {"role": "user", "content": "Hi!"},
    {"role": "assistant", "content": "Hello! How can I help?"},
    {"role": "user", "content": "Tell me a joke"}
]

result = agent.chat(messages)
print(result)

Best Practices

Write specific instructions

Clear, specific instructions lead to more consistent and useful agent behavior.

Add tools for external capabilities

Use tools to extend what your agent can do – search, code execution, file operations, and more.

Enable memory for context

Add memory=True for agents that need to remember information across multiple turns.

Use gpt-4o-mini for cost efficiency

Start with llm='gpt-4o-mini' for testing – switch to gpt-4o when you need more capability.

Next Steps

Related