czty's picture
Add files using upload-large-folder tool
ef16689 verified
|
Raw
History Blame Contribute Delete
3.94 kB
# Biomni Configuration Guide
## Quick Start
**Recommended approach**: Use environment variables or modify `default_config` for consistent behavior across your entire application.
```python
from biomni.config import default_config
from biomni.agent import A1
# Option 1: Modify global defaults (affects everything)
default_config.llm = "gpt-4"
default_config.timeout_seconds = 1200
# Option 2: Use environment variables (set in .env file)
# BIOMNI_LLM=gpt-4
# BIOMNI_TIMEOUT_SECONDS=1200
agent = A1() # Uses your configuration
```
## Configuration Methods
### 1. Environment Variables (Recommended for Production)
Create a `.env` file in your project:
```bash
# Required API Keys (at least one)
ANTHROPIC_API_KEY=your_key
OPENAI_API_KEY=your_key
# Optional Settings
BIOMNI_LLM=claude-3-5-sonnet-20241022
BIOMNI_TIMEOUT_SECONDS=1200
BIOMNI_PATH=/path/to/data
```
### 2. Runtime Configuration (Recommended for Scripts)
```python
from biomni.config import default_config
# Changes apply to all agents and database queries
default_config.llm = "gpt-4"
default_config.timeout_seconds = 1200
```
### 3. Direct Parameters (Use with Caution)
```python
# ⚠️ Only affects this agent's reasoning, NOT database queries
agent = A1(llm="claude-3-5-sonnet-20241022")
```
## Common Examples
### Using Different Models
```python
# Use GPT-4 everywhere
default_config.llm = "gpt-4"
agent = A1()
```
### Cost Optimization (Different Models for Agent vs Database)
```python
# Cheaper model for database queries
default_config.llm = "claude-3-5-haiku-20241022"
# More powerful model for agent reasoning
agent = A1(llm="claude-3-5-sonnet-20241022")
```
### Custom/Local Models
```python
default_config.source = "Custom"
default_config.base_url = "http://localhost:8000/v1"
default_config.api_key = "local_key"
default_config.llm = "local-llama-70b"
```
## All Available Settings
### Environment Variables
```bash
# API Keys
ANTHROPIC_API_KEY=your_key
OPENAI_API_KEY=your_key
GEMINI_API_KEY=your_key
GROQ_API_KEY=your_key
AWS_BEARER_TOKEN_BEDROCK=your_key
AWS_REGION=us-east-1
# Azure OpenAI
OPENAI_ENDPOINT=https://your-resource.openai.azure.com/
# Biomni Settings
BIOMNI_PATH=/path/to/data # Default: ./data
BIOMNI_TIMEOUT_SECONDS=1200 # Default: 600
BIOMNI_LLM=model_name # Default: claude-sonnet-4-20250514
BIOMNI_TEMPERATURE=0.7 # Default: 0.7
BIOMNI_USE_TOOL_RETRIEVER=true # Default: true
BIOMNI_SOURCE=Anthropic # Auto-detected if not set
BIOMNI_CUSTOM_BASE_URL=http://localhost:8000/v1
BIOMNI_CUSTOM_API_KEY=custom_key
```
### Python Configuration
```python
from biomni.config import default_config
# All available settings
default_config.path = "./data"
default_config.timeout_seconds = 600
default_config.llm = "claude-sonnet-4-20250514"
default_config.temperature = 0.7
default_config.use_tool_retriever = True
default_config.source = None # Auto-detected
default_config.base_url = None # For custom models
default_config.api_key = None # For custom models
```
## Important Notes
- **For pip-installed packages**: You can't edit the package files, but you can still use environment variables or modify `default_config` at runtime
- **Configuration consistency**: Database queries always use `default_config`, regardless of agent parameters
- **Priority order**: Direct params > Runtime config > Env vars > Defaults
## Troubleshooting
**API Key Not Found**:
- Check `.env` file exists in your working directory
- Verify with: `echo $ANTHROPIC_API_KEY`
**Configuration Not Applied**:
- Changes to `default_config` only affect agents created after the change
- Direct parameters only affect that specific agent, not database queries
**Model Not Found**:
- Check spelling of model name
- For Azure, prefix with "azure-" (e.g., "azure-gpt-4o")
- Ensure you have the right API key for that provider