Spaces:
Running
Running
Somrat Sorkar commited on
Commit ·
4a18107
1
Parent(s): 6275d3e
Remove LLM_PROVIDER entirely - auto-detect from model name
Browse files
README.md
CHANGED
|
@@ -82,8 +82,7 @@ See **`.env.example`** for the complete reference with examples.
|
|
| 82 |
|
| 83 |
| Variable | Default | Purpose |
|
| 84 |
|----------|---------|---------|
|
| 85 |
-
| `
|
| 86 |
-
| `LLM_MODEL` | `anthropic/claude-haiku-4-5` | Model to use |
|
| 87 |
|
| 88 |
#### Telegram
|
| 89 |
|
|
@@ -121,29 +120,28 @@ See **`.env.example`** for the complete reference with examples.
|
|
| 121 |
|
| 122 |
## 🤖 LLM Provider Setup
|
| 123 |
|
|
|
|
|
|
|
| 124 |
### Anthropic (Claude)
|
| 125 |
```
|
| 126 |
-
LLM_PROVIDER=anthropic
|
| 127 |
LLM_API_KEY=sk-ant-v0-...
|
| 128 |
LLM_MODEL=anthropic/claude-haiku-4-5
|
| 129 |
```
|
| 130 |
-
Models: `claude-opus-4-6` · `claude-sonnet-4-5` · `claude-haiku-4-5`
|
| 131 |
|
| 132 |
### OpenAI
|
| 133 |
```
|
| 134 |
-
LLM_PROVIDER=openai
|
| 135 |
LLM_API_KEY=sk-...
|
| 136 |
-
LLM_MODEL=gpt-4
|
| 137 |
```
|
| 138 |
-
Models: `gpt-4-turbo` · `gpt-4` · `gpt-3.5-turbo`
|
| 139 |
|
| 140 |
### Google (Gemini)
|
| 141 |
```
|
| 142 |
-
LLM_PROVIDER=google
|
| 143 |
LLM_API_KEY=AIzaSy...
|
| 144 |
-
LLM_MODEL=gemini-
|
| 145 |
```
|
| 146 |
-
Models: `gemini-
|
| 147 |
|
| 148 |
---
|
| 149 |
|
|
|
|
| 82 |
|
| 83 |
| Variable | Default | Purpose |
|
| 84 |
|----------|---------|---------|
|
| 85 |
+
| `LLM_MODEL` | `anthropic/claude-haiku-4-5` | Model to use (auto-detects provider from prefix) |
|
|
|
|
| 86 |
|
| 87 |
#### Telegram
|
| 88 |
|
|
|
|
| 120 |
|
| 121 |
## 🤖 LLM Provider Setup
|
| 122 |
|
| 123 |
+
Just set `LLM_MODEL` with the correct provider prefix — the provider is auto-detected!
|
| 124 |
+
|
| 125 |
### Anthropic (Claude)
|
| 126 |
```
|
|
|
|
| 127 |
LLM_API_KEY=sk-ant-v0-...
|
| 128 |
LLM_MODEL=anthropic/claude-haiku-4-5
|
| 129 |
```
|
| 130 |
+
Models: `anthropic/claude-opus-4-6` · `anthropic/claude-sonnet-4-5` · `anthropic/claude-haiku-4-5`
|
| 131 |
|
| 132 |
### OpenAI
|
| 133 |
```
|
|
|
|
| 134 |
LLM_API_KEY=sk-...
|
| 135 |
+
LLM_MODEL=openai/gpt-4
|
| 136 |
```
|
| 137 |
+
Models: `openai/gpt-4-turbo` · `openai/gpt-4` · `openai/gpt-3.5-turbo`
|
| 138 |
|
| 139 |
### Google (Gemini)
|
| 140 |
```
|
|
|
|
| 141 |
LLM_API_KEY=AIzaSy...
|
| 142 |
+
LLM_MODEL=google/gemini-2.5-flash
|
| 143 |
```
|
| 144 |
+
Models: `google/gemini-2.5-flash` · `google/gemini-2.0-flash` · `google/gemini-1.5-pro`
|
| 145 |
|
| 146 |
---
|
| 147 |
|
start.sh
CHANGED
|
@@ -28,8 +28,7 @@ if [ -n "$ERRORS" ]; then
|
|
| 28 |
exit 1
|
| 29 |
fi
|
| 30 |
|
| 31 |
-
# ── Set LLM env based on
|
| 32 |
-
LLM_PROVIDER="${LLM_PROVIDER:-anthropic}"
|
| 33 |
LLM_MODEL="${LLM_MODEL:-anthropic/claude-haiku-4-5}"
|
| 34 |
|
| 35 |
# Auto-correct Gemini models to use google/ prefix if anthropic/ was mistakenly used
|
|
@@ -38,22 +37,16 @@ if [[ "$LLM_MODEL" == "anthropic/gemini"* ]]; then
|
|
| 38 |
echo "⚠️ Corrected model from anthropic/gemini* to google/gemini*"
|
| 39 |
fi
|
| 40 |
|
| 41 |
-
# Auto-detect
|
| 42 |
if [[ "$LLM_MODEL" == "google/"* ]]; then
|
| 43 |
-
|
| 44 |
elif [[ "$LLM_MODEL" == "openai/"* ]]; then
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
|
|
|
| 48 |
fi
|
| 49 |
|
| 50 |
-
case "$LLM_PROVIDER" in
|
| 51 |
-
anthropic) export ANTHROPIC_API_KEY="$LLM_API_KEY" ;;
|
| 52 |
-
openai) export OPENAI_API_KEY="$LLM_API_KEY" ;;
|
| 53 |
-
google) export GOOGLE_API_KEY="$LLM_API_KEY" ;;
|
| 54 |
-
*) export LLM_API_KEY="$LLM_API_KEY" ;;
|
| 55 |
-
esac
|
| 56 |
-
|
| 57 |
# ── Setup directories ──
|
| 58 |
mkdir -p /home/node/.openclaw/agents/main/sessions
|
| 59 |
mkdir -p /home/node/.openclaw/credentials
|
|
@@ -196,7 +189,6 @@ echo ""
|
|
| 196 |
echo " ┌──────────────────────────────────────────┐"
|
| 197 |
echo " │ 📋 Configuration Summary │"
|
| 198 |
echo " ├──────────────────────────────────────────┤"
|
| 199 |
-
printf " │ %-40s │\n" "LLM: $LLM_PROVIDER"
|
| 200 |
printf " │ %-40s │\n" "Model: $LLM_MODEL"
|
| 201 |
if [ -n "$TELEGRAM_BOT_TOKEN" ]; then
|
| 202 |
printf " │ %-40s │\n" "Telegram: ✅ enabled"
|
|
|
|
| 28 |
exit 1
|
| 29 |
fi
|
| 30 |
|
| 31 |
+
# ── Set LLM env based on model name ──
|
|
|
|
| 32 |
LLM_MODEL="${LLM_MODEL:-anthropic/claude-haiku-4-5}"
|
| 33 |
|
| 34 |
# Auto-correct Gemini models to use google/ prefix if anthropic/ was mistakenly used
|
|
|
|
| 37 |
echo "⚠️ Corrected model from anthropic/gemini* to google/gemini*"
|
| 38 |
fi
|
| 39 |
|
| 40 |
+
# Auto-detect and set provider-specific API key from model name
|
| 41 |
if [[ "$LLM_MODEL" == "google/"* ]]; then
|
| 42 |
+
export GOOGLE_API_KEY="$LLM_API_KEY"
|
| 43 |
elif [[ "$LLM_MODEL" == "openai/"* ]]; then
|
| 44 |
+
export OPENAI_API_KEY="$LLM_API_KEY"
|
| 45 |
+
else
|
| 46 |
+
# Default to Anthropic for claude/* or anthropic/* models
|
| 47 |
+
export ANTHROPIC_API_KEY="$LLM_API_KEY"
|
| 48 |
fi
|
| 49 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 50 |
# ── Setup directories ──
|
| 51 |
mkdir -p /home/node/.openclaw/agents/main/sessions
|
| 52 |
mkdir -p /home/node/.openclaw/credentials
|
|
|
|
| 189 |
echo " ┌──────────────────────────────────────────┐"
|
| 190 |
echo " │ 📋 Configuration Summary │"
|
| 191 |
echo " ├──────────────────────────────────────────┤"
|
|
|
|
| 192 |
printf " │ %-40s │\n" "Model: $LLM_MODEL"
|
| 193 |
if [ -n "$TELEGRAM_BOT_TOKEN" ]; then
|
| 194 |
printf " │ %-40s │\n" "Telegram: ✅ enabled"
|