海外访问:www.kdjingpai.com
Ctrl + D 收藏本站

Any LLM in Claude Code 是一个开源代理工具,托管于 GitHub,由 chachako 开发,fork 自 CogAgent/claude-code-proxy。它允许用户在 Claude Code 中无需 Pro 订阅即可使用 LiteLLM 支持的任何语言模型(如 OpenAI、Vertex AI、xAI 的模型)。通过简单的环境变量配置,用户可为复杂任务(sonnet)和辅助任务(haiku)分配不同模型,优化性能和成本。项目基于 Python 和 LiteLLM,使用 uv 管理依赖,安装简便,适合 AI 开发者、Claude Code 用户和开源爱好者。文档清晰,社区活跃,提供详细的配置和调试指南。

 

功能列表

  • 支持在 Claude Code 中使用 LiteLLM 兼容的任何语言模型(如 OpenAI、Vertex AI、xAI)。
  • 提供大模型(sonnet)和小模型(haiku)的独立路由配置,优化任务分配。
  • 支持自定义 API 密钥和端点,兼容多种模型提供商。
  • 使用 LiteLLM 自动转换 API 请求和响应,确保与 Anthropic API 格式兼容。
  • 集成 uv 工具,自动管理项目依赖,简化部署流程。
  • 提供详细日志功能,记录请求和响应内容,便于调试和提示工程分析。
  • 支持本地模型服务器,允许配置自定义 API 端点。
  • 开源项目,支持用户修改代码或贡献功能。

使用帮助

安装流程

使用 Any LLM in Claude Code 需要完成以下安装和配置步骤,基于官方文档,确保清晰可操作:

  1. 克隆项目
    在终端运行以下命令,将项目克隆到本地:

    git clone https://github.com/chachako/freecc.git
    cd freecc
    

2. **安装 uv 工具**
项目使用 uv 管理 Python 依赖。若未安装 uv,运行以下命令:
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh

uv 会根据 pyproject.toml 自动安装依赖,无需手动操作。
3. 配置环境变量
项目通过 .env 文件配置模型路由和 API 密钥。复制示例文件:

cp .env.example .env

使用文本编辑器(如 nano)打开 .env,配置以下变量:

  • 模型路由配置
    • BIG_MODEL_PROVIDER:大模型提供商(如 openaivertexxai)。
    • BIG_MODEL_NAME:大模型名称(如 gpt-4.1gemini-1.5-pro)。
    • BIG_MODEL_API_KEY:大模型的 API 密钥。
    • BIG_MODEL_API_BASE:(可选)大模型的自定义 API 端点。
    • SMALL_MODEL_PROVIDER:小模型提供商。
    • SMALL_MODEL_NAME:小模型名称(如 gpt-4o-mini)。
    • SMALL_MODEL_API_KEY:小模型的 API 密钥。
    • SMALL_MODEL_API_BASE:(可选)小模型的自定义 API 端点。
  • 全局提供商配置(作为后备或直接请求):
    • OPENAI_API_KEYXAI_API_KEYGEMINI_API_KEYANTHROPIC_API_KEY:各提供商的 API 密钥。
    • OPENAI_API_BASEXAI_API_BASE 等:自定义 API 端点。
  • Vertex AI 特定配置
    • VERTEX_PROJECT_ID:Google Cloud 项目 ID。
    • VERTEX_LOCATION:Vertex AI 区域(如 us-central1)。
    • 配置 Google 应用默认凭据(ADC):
      gcloud auth application-default login
      

      或设置环境变量 GOOGLE_APPLICATION_CREDENTIALS 指向凭据文件。

  • 日志配置
    • FILE_LOG_LEVEL:日志文件(claude-proxy.log)级别(默认 DEBUG)。
    • CONSOLE_LOG_LEVEL:控制台日志级别(默认 INFO)。
    • LOG_REQUEST_BODY:设为 true 记录请求内容,便于分析提示工程。
    • LOG_RESPONSE_BODY:设为 true 记录模型响应内容。

示例 .env 配置:

BIG_MODEL_PROVIDER="vertex"
BIG_MODEL_NAME="gemini-1.5-pro-preview-0514"
BIG_MODEL_API_KEY="your-vertex-key"
VERTEX_PROJECT_ID="your-gcp-project-id"
VERTEX_LOCATION="us-central1"
SMALL_MODEL_PROVIDER="openai"
SMALL_MODEL_NAME="gpt-4o-mini"
SMALL_MODEL_API_KEY="sk-xxx"
SMALL_MODEL_API_BASE="https://xyz.llm.com/v1"
FILE_LOG_LEVEL="DEBUG"
LOG_REQUEST_BODY="true"
  1. 运行服务器
    配置完成后,启动代理服务器:

    uv run uvicorn server:app --host 127.0.0.1 --port 8082 --reload
    

    参数 --reload 可选,用于开发时自动重载。

  2. 连接 Claude Code
    安装 Claude Code(若未安装):

    npm install -g @anthropic-ai/claude-code
    

    设置环境变量,连接代理:

    export ANTHROPIC_BASE_URL=http://localhost:8082 && claude
    

功能操作

Any LLM in Claude Code 的核心是通过代理将 Claude Code 的请求路由到用户配置的模型。以下为详细操作说明:

  • 模型路由
    项目支持为 Claude Code 的 sonnet(主任务,如复杂代码生成)和 haiku(辅助任务,如快速语法检查)配置不同模型。例如:

    • 配置 BIG_MODEL_PROVIDER="vertex" 和 BIG_MODEL_NAME="gemini-1.5-pro",将 sonnet 路由到高性能模型。
    • 配置 SMALL_MODEL_PROVIDER="openai" 和 SMALL_MODEL_NAME="gpt-4o-mini",将 haiku 路由到轻量模型,降低成本。
      用户可通过 .env 文件灵活切换模型和提供商。
  • API 请求转换
    项目通过 LiteLLM 实现 API 格式转换,流程如下:

    1. Claude Code 发送 Anthropic 格式的请求(如调用 claude-3-sonnet-20240229)。
    2. 代理根据 .env 配置,将请求转换为目标模型格式(如 OpenAI 的 gpt-4.1)。
    3. 注入配置的 API 密钥和端点,发送请求。
    4. 将模型响应转换回 Anthropic 格式,返回给 Claude Code。
      用户无需手动干预,转换过程完全自动化。
  • 日志与调试
    项目提供详细日志功能:

    • 设置 LOG_REQUEST_BODY="true",记录 Claude Code 的请求内容,便于分析提示工程。
    • 设置 LOG_RESPONSE_BODY="true",记录模型响应,检查输出是否正确。
    • 日志保存在 claude-proxy.log,通过 FILE_LOG_LEVEL 和 CONSOLE_LOG_LEVEL 控制日志级别。
      若遇到问题,检查日志或验证 .env 中的密钥和端点。
  • 本地模型支持
    支持本地模型服务器。例如,配置 SMALL_MODEL_API_BASE="http://localhost:8000/v1",可将 haiku 路由到本地模型(如 LM Studio)。本地模型无需 API 密钥,适合隐私敏感场景。

注意事项

  • 确保网络连接稳定,API 密钥有效。
  • Vertex AI 用户需正确配置 VERTEX_PROJECT_IDVERTEX_LOCATION 和 ADC。
  • 定期访问 GitHub 项目页面(https://github.com/chachako/freecc),获取更新或社区支持。
  • 日志可能包含敏感信息,调试后建议关闭 LOG_REQUEST_BODY 和 LOG_RESPONSE_BODY

应用场景

  1. 提升 Claude Code 灵活性
    用户无需 Claude Pro 订阅即可使用高性能模型(如 Gemini 1.5 Pro)或低成本模型(如 gpt-4o-mini),扩展上下文窗口或降低成本。
  2. 模型性能对比
    开发者可通过代理快速切换模型(如 OpenAI、Vertex AI),测试不同模型在 Claude Code 中的表现,优化开发流程。
  3. 本地模型部署
    企业或研究者可配置本地模型服务器,保护数据隐私,适合本地化 AI 应用场景。
  4. 开源社区参与
    作为开源项目,开发者可通过 GitHub 提交代码,优化功能或修复问题,适合学习 Python 和 AI 开发的初学者。

QA

  1. Any LLM in Claude Code 支持哪些模型?
    支持 LiteLLM 兼容的所有模型,包括 OpenAI、Vertex AI、xAI、Anthropic 等,通过 .env 配置模型和提供商。
  2. 如何处理配置错误?
    查看 claude-proxy.log 日志,检查 API 密钥、端点和模型名称。确保 FILE_LOG_LEVEL="DEBUG" 获取详细日志。
  3. 需要 Claude Pro 订阅吗?
    不需要。项目通过代理支持免费用户使用其他模型,绕过订阅限制。
  4. 可以部署在远程服务器吗?
    可以。将 --host 设置为 0.0.0.0,确保端口(如 8082)开放。
  5. 如何贡献代码?
    访问 https://github.com/chachako/freecc,提交 Pull Request,建议先阅读贡献指南。
0已收藏
0已赞

相关推荐

找不到AI工具?在这试试!

输入关键词,即可 无障碍访问 必应 搜索,快速找到本站所有 AI 工具。

邮箱

联系我们

回顶部

zh_CN简体中文