File size: 3,937 Bytes
ef16689 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 | # 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
|