方法1,临时设置(当前终端有效)

openclaw AI小龙虾攻略 2

OpenClaw(AI小龙虾)环境变量配置通常有以下几种方式,以下是详细的配置方法:

方法1,临时设置(当前终端有效)-第1张图片-官方获取 | OpenClaw下载 - openclaw官网

配置方式

本地开发环境配置

Linux/macOS

export OPENCLAW_MODEL_PATH="/path/to/model"
export OPENCLAW_CACHE_DIR="./cache"
# 方法2:永久设置(添加到 ~/.bashrc 或 ~/.zshrc)
echo 'export OPENCLAW_API_KEY="your-api-key"' >> ~/.bashrc
echo 'export OPENCLAW_MODEL_PATH="$HOME/models/openclaw"' >> ~/.bashrc
source ~/.bashrc

Windows

# 命令提示符
set OPENCLAW_API_KEY=your-api-key
set OPENCLAW_MODEL_PATH=C:\path\to\model
# PowerShell
$env:OPENCLAW_API_KEY="your-api-key"
$env:OPENCLAW_MODEL_PATH="C:\path\to\model"
# 永久设置(系统属性)
# 1. 右键"此电脑" → 属性 → 高级系统设置
# 2. 环境变量 → 系统变量 → 新建

使用 .env 文件(推荐)

# 项目根目录创建 .env 文件
# .env 文件内容:
OPENCLAW_API_KEY=sk-your-key-here
OPENCLAW_BASE_URL=https://api.openclaw.ai/v1
OPENCLAW_MODEL=gpt-4-claw
OPENCLAW_MAX_TOKENS=4096
OPENCLAW_TEMPERATURE=0.7
OPENCLAW_LOG_LEVEL=INFO
OPENCLAW_CACHE_ENABLED=true

Python代码中加载:

from dotenv import load_dotenv
import os
load_dotenv()  # 加载.env文件
api_key = os.getenv("OPENCLAW_API_KEY")
base_url = os.getenv("OPENCLAW_BASE_URL", "https://api.openclaw.ai/v1")

Docker 环境配置

Dockerfile

FROM python:3.9
ENV OPENCLAW_API_KEY=""
ENV OPENCLAW_MODEL_PATH="/app/models"
ENV OPENCLAW_CACHE_DIR="/app/cache"
# ... 其他配置

docker-compose.yml

version: '3.8'
services:
  openclaw:
    image: openclaw/ai-service
    environment:
      - OPENCLAW_API_KEY=${OPENCLAW_API_KEY}
      - OPENCLAW_MODEL=gpt-4-claw
      - OPENCLAW_LOG_LEVEL=INFO
      - OPENCLAW_CACHE_ENABLED=true
    volumes:
      - ./models:/app/models
      - ./cache:/app/cache
    ports:
      - "8000:8000"

主要环境变量说明

必填变量

# API密钥(必须)
OPENCLAW_API_KEY=sk-xxxxxxxxxxxxxxxx
# 或使用多个API密钥(随机选择)
OPENCLAW_API_KEYS=sk-key1,sk-key2,sk-key3

模型相关

# 模型名称(默认:gpt-4-claw)
OPENCLAW_MODEL=gpt-4-claw
# 模型路径(本地部署时)
OPENCLAW_MODEL_PATH=/path/to/model
# 最大token数
OPENCLAW_MAX_TOKENS=4096
# 温度参数
OPENCLAW_TEMPERATURE=0.7
# 是否流式输出
OPENCLAW_STREAM=true

服务器配置

# API基础URL
OPENCLAW_BASE_URL=https://api.openclaw.ai/v1
# 超时设置(秒)
OPENCLAW_TIMEOUT=30
OPENCLAW_CONNECT_TIMEOUT=10
# 重试设置
OPENCLAW_MAX_RETRIES=3
OPENCLAW_RETRY_DELAY=1

缓存配置

# 启用缓存
OPENCLAW_CACHE_ENABLED=true
OPENCLAW_CACHE_DIR=./cache
OPENCLAW_CACHE_TTL=3600  # 缓存有效期(秒)
# Redis缓存(如果使用)
OPENCLAW_REDIS_URL=redis://localhost:6379/0

日志配置

# 日志级别
OPENCLAW_LOG_LEVEL=INFO  # DEBUG, INFO, WARNING, ERROR
# 日志文件
OPENCLAW_LOG_FILE=./logs/openclaw.log
# 是否输出到控制台
OPENCLAW_LOG_CONSOLE=true

代理配置

# HTTP代理
OPENCLAW_PROXY=http://proxy.example.com:8080
# 或使用环境变量格式
http_proxy=http://proxy.example.com:8080
https_proxy=http://proxy.example.com:8080

配置文件示例

config.py 配置文件

# config.py
import os
from dataclasses import dataclass
@dataclass
class OpenClawConfig:
    api_key: str = os.getenv("OPENCLAW_API_KEY", "")
    base_url: str = os.getenv("OPENCLAW_BASE_URL", "https://api.openclaw.ai/v1")
    model: str = os.getenv("OPENCLAW_MODEL", "gpt-4-claw")
    temperature: float = float(os.getenv("OPENCLAW_TEMPERATURE", 0.7))
    max_tokens: int = int(os.getenv("OPENCLAW_MAX_TOKENS", 4096))
    timeout: int = int(os.getenv("OPENCLAW_TIMEOUT", 30))
    cache_enabled: bool = os.getenv("OPENCLAW_CACHE_ENABLED", "true").lower() == "true"
    log_level: str = os.getenv("OPENCLAW_LOG_LEVEL", "INFO")
config = OpenClawConfig()

验证配置

# test_config.py
import os
from openclaw import OpenClawClient
# 验证环境变量
required_vars = ["OPENCLAW_API_KEY"]
missing_vars = [var for var in required_vars if not os.getenv(var)]
if missing_vars:
    print(f"Missing environment variables: {missing_vars}")
    exit(1)
# 测试连接
try:
    client = OpenClawClient(api_key=os.getenv("OPENCLAW_API_KEY"))
    models = client.list_models()
    print("Configuration successful!")
except Exception as e:
    print(f"Configuration error: {e}")

不同环境的配置管理

使用配置管理工具

# 安装direnv管理环境变量
brew install direnv  # macOS
apt install direnv   # Ubuntu
# 在项目目录创建 .envrc 文件
echo 'export OPENCLAW_API_KEY="your-key"' > .envrc
echo 'export OPENCLAW_ENV="development"' >> .envrc
direnv allow

多环境配置

# .env.development
OPENCLAW_API_KEY=dev-key
OPENCLAW_BASE_URL=http://localhost:8000
# .env.production
OPENCLAW_API_KEY=prod-key
OPENCLAW_BASE_URL=https://api.openclaw.ai/v1
# 加载对应环境
export ENV=development
source .env.$ENV

注意事项

  1. 安全提醒:不要将API密钥提交到版本控制系统
  2. 优先级:环境变量 > .env文件 > 默认值
  3. 格式检查:确保数值类型的变量能正确转换
  4. 兼容性:不同操作系统环境变量格式可能不同

根据你的具体使用场景选择合适的配置方式。

标签: 临时设置 会话有效

抱歉,评论功能暂时关闭!