Skip to main content

Configuration

Environment Variables

AutoGen requires proper configuration for API access and functionality:

Ubuntu Configuration

bash

# Create environment file
sudo mkdir -p /etc/autogen
sudo touch /etc/autogen/config.env
# Set permissions
sudo chown $USER:$USER /etc/autogen/config.env
chmod 600 /etc/autogen/config.env

RHEL8 Configuration

bash


# Create configuration directory
sudo mkdir -p /etc/autogen
sudo touch /etc/autogen/config.env
# Set SELinux context (if SELinux is enabled)
sudo setsebool -P httpd_can_network_connect 1
sudo chcon -R -t admin_home_t /etc/autogen/
API Configuration File

Create the main configuration file:

bash



# Edit configuration file
vim /etc/autogen/config.env

Add the following content:

ini


# OpenAI Configuration
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_API_BASE=https://api.openai.com/v1
# Azure OpenAI Configuration (if using Azure)
AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
AZURE_OPENAI_API_KEY=your_azure_api_key
AZURE_OPENAI_API_VERSION=2023-12-01-preview
# Model Configuration
DEFAULT_MODEL=gpt-4
TEMPERATURE=0.7
MAX_TOKENS=2000
# Code Execution Settings
CODE_EXECUTION_CONFIG_WORK_DIR=/tmp/autogen_code
CODE_EXECUTION_CONFIG_USE_DOCKER=false

LLM Configuration

Create a Python configuration file for model settings:

python


# /opt/autogen/llm_config.py
import os
from dotenv import load_dotenv
# Load environment variables
load_dotenv('/etc/autogen/config.env')
# LLM Configuration for different providers
llm_config = {
"config_list": [
{
"model": "gpt-4",
"api_key": os.getenv("OPENAI_API_KEY"),
"api_type": "openai",
"base_url": os.getenv("OPENAI_API_BASE", "https://api.openai.com/v1")
}
],
"temperature": float(os.getenv("TEMPERATURE", "0.7")),
"max_tokens": int(os.getenv("MAX_TOKENS", "2000")),
"timeout": 300,
}
# Azure OpenAI Configuration
azure_llm_config = {
"config_list": [
{
"model": "gpt-4",
"api_key": os.getenv("AZURE_OPENAI_API_KEY"),
"api_type": "azure",
"base_url": os.getenv("AZURE_OPENAI_ENDPOINT"),
"api_version": os.getenv("AZURE_OPENAI_API_VERSION")
}
],
"temperature": 0.7,
"max_tokens": 2000
}

Code Execution Configuration

Set up secure code execution environments:

Ubuntu Code Execution Setup

bash


# Create work directory
sudo mkdir -p /tmp/autogen_code
sudo chown $USER:$USER /tmp/autogen_code
chmod 755 /tmp/autogen_code
# Install Docker (optional but recommended)
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
# Start Docker service
sudo systemctl enable docker
sudo systemctl start docker

RHEL8 Code Execution Setup

bash


# Create work directory
sudo mkdir -p /tmp/autogen_code
sudo chown $USER:$USER /tmp/autogen_code
sudo chmod 755 /tmp/autogen_code
# Install Docker
sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install -y docker-ce docker-ce-cli containerd.io
sudo usermod -aG docker $USER
# Configure SELinux for Docker (if enabled)
sudo setsebool -P container_manage_cgroup true
# Start Docker
sudo systemctl enable docker
sudo systemctl start docker