Tutorial

Python Version Requirements

CAMEL-AI requires Python >=3.10 and <=3.12. Here’s how to check your version:

python3 --version

If you need to update Python, visit python.org/downloads

CAMEL-AI supports multiple installation methods to suit different development workflows. Choose the method that best fits your needs.

1

Install CAMEL-AI 🐪

  • Basic Installation:

    Install the core CAMEL library:

    pip install camel-ai
    
  • Full Installation (Recommended):

    Install CAMEL with all features and dependencies:

    pip install 'camel-ai[all]'
    

    Some features may not work without their required dependencies. Install camel-ai[all] to ensure all dependencies are available, or install specific extras based on the features you need.

  • Custom Installation:

    Available extras for specific use cases:

    • all: Includes all features below
    • model_platforms: OpenAI, Google, Mistral, Anthropic Claude, Cohere etc.
    • huggingface: Transformers, Diffusers, Accelerate, Datasets, PyTorch etc.
    • rag: Sentence Transformers, Qdrant, Milvus, TiDB, BM25, OceanBase, Weaviate etc.
    • storage: Neo4j, Redis, Azure Blob, Google Cloud Storage, AWS S3 etc.
    • web_tools: DuckDuckGo, Wikipedia, WolframAlpha, Google Maps, Weather API etc.
    • document_tools: PDF, Word, OpenAPI, BeautifulSoup, Unstructured etc.
    • media_tools: Image Processing, Audio Processing, YouTube Download, FFmpeg etc.
    • communication_tools: Slack, Discord, Telegram, GitHub, Reddit, Notion etc.
    • data_tools: Pandas, TextBlob, DataCommons, OpenBB, Stripe etc.
    • research_tools: arXiv, Google Scholar etc.
    • dev_tools: Docker, Jupyter, Tree-sitter, Code Interpreter etc.

    Multiple extras can be combined:

    pip install 'camel-ai[rag,web_tools,document_tools]'  # Example: RAG system with web search and document processing
    
  • To verify that camel-ai is installed, run:

    pip show camel-ai
    
Installation successful! You’re ready to create your first multi-agent system! 🎉

Creating a CAMEL-AI Project

We recommend starting with a simple role-playing scenario to understand CAMEL’s multi-agent capabilities. Here’s how to get started:

1

Set Up Your Project Structure

  • Create a new project directory:
    mkdir my_camel_project
    cd my_camel_project
    
2

Configure Your Environment

  • Create a .env file with your API keys:

    OPENAI_API_KEY=<your_openai_api_key>
    OPENAI_API_BASE_URL=<your_openai_base_url>  # Optional: for proxy services
    ANTHROPIC_API_KEY=<your_anthropic_api_key>
    GOOGLE_API_KEY=<your_google_api_key>
    
  • Create a requirements.txt file:

    camel-ai[all]
    python-dotenv
    
3

Install Dependencies and Run

  • Install project dependencies:

    pip install -r requirements.txt
    
  • Set up your environment variables by loading the .env file:

    from dotenv import load_dotenv
    load_dotenv()
    
  • Run your first multi-agent example:

    python examples/role_playing.py
    

Want to see multi-agent collaboration at scale? Try running the workforce example:

python examples/workforce/multiple_single_agents.py

Alternative Installation Methods

CAMEL-AI offers multiple installation approaches for different development needs:

From Docker

  • Containerized deployment with pre-configured environment
  • Detailed guidance available at CAMEL Docker Guide

From Source with UV

  • Development installation with full source access
  • Supports Python 3.10, 3.11, 3.12
  • Includes development tools and testing capabilities
# Clone the repository
git clone https://github.com/camel-ai/camel.git
cd camel

# Install UV package manager
pip install uv

# Create virtual environment
uv venv .venv --python=3.10

# Activate environment (macOS/Linux)
source .venv/bin/activate
# For Windows: .venv\Scripts\activate

# Install CAMEL with all dependencies
uv pip install -e ".[all, dev, docs]"

Explore Development Setup

Learn about contributing to CAMEL-AI and development best practices

Configuration Options

1

Set Default Model Configuration

Configure default model platform and type using environment variables:

export DEFAULT_MODEL_PLATFORM_TYPE=openai  # e.g., openai, anthropic, etc.
export DEFAULT_MODEL_TYPE=gpt-4o-mini      # e.g., gpt-3.5-turbo, gpt-4o-mini, etc.

By default, CAMEL uses:

ModelPlatformType.DEFAULT = "openai"
ModelType.DEFAULT = "gpt-4o-mini"
2

Set Up API Keys

For Bash shell (Linux, macOS, Git Bash on Windows):

export OPENAI_API_KEY=<insert your OpenAI API key>
export OPENAI_API_BASE_URL=<insert your OpenAI API BASE URL>  # Optional

For Windows Command Prompt:

set OPENAI_API_KEY=<insert your OpenAI API key>
set OPENAI_API_BASE_URL=<insert your OpenAI API BASE URL>

For Windows PowerShell:

$env:OPENAI_API_KEY="<insert your OpenAI API key>"
$env:OPENAI_API_BASE_URL="<insert your OpenAI API BASE URL>"

Using .env File (Recommended):

OPENAI_API_KEY=<fill your API KEY here>
ANTHROPIC_API_KEY=<fill your Anthropic API KEY here>
GOOGLE_API_KEY=<fill your Google API KEY here>

Load in Python:

from dotenv import load_dotenv
load_dotenv()  # Use load_dotenv(override=True) to overwrite existing variables

Running Examples

After setting up your API keys, explore CAMEL’s capabilities:

# Two agents role-playing and collaborating
python examples/ai_society/role_playing.py

# Agent utilizing code execution tools
python examples/toolkits/code_execution_toolkit.py

# Generating knowledge graphs with agents
python examples/knowledge_graph/knowledge_graph_agent_example.py  

# Multiple agents collaborating on complex tasks
python examples/workforce/multiple_single_agents.py 

# Creative image generation with agents
python examples/vision/image_crafting.py

Testing Your Installation

Run the test suite to ensure everything is working:

# Activate virtual environment first
source .venv/bin/activate  # macOS/Linux
# .venv\Scripts\activate   # Windows

# Run all tests
pytest --fast-test-mode test/

# Run specific test categories
pytest -v apps/
pytest -v examples/

Next Steps

For additional feature examples and use cases, explore the examples directory in the CAMEL repository.