O Claude Proxy é uma ferramenta de proxy de código aberto, hospedada no GitHub, criada para ajudar os desenvolvedores a converter as solicitações da API Claude do Anthropic para o formato da API do OpenAI. Ela permite que os usuários trabalhem perfeitamente com os modelos Claude por meio de uma configuração simples e é compatível com as ferramentas de cliente e front-end suportadas pela OpenAI. A ferramenta é adequada para desenvolvedores que precisam chamar grandes modelos de linguagem entre plataformas, fornecendo mapeamento flexível de modelos e suporte a respostas de streaming. Mantido por tingxifa, o projeto é implementado usando scripts Bash, que são fáceis de configurar e adequados para a rápida implantação em ambientes de produção. Os usuários só precisam definir a chave de API e o endereço de proxy, e podem chamar o modelo Claude por meio da linha de comando.
Lista de funções
- Converta as solicitações da API do Claude para o formato da API do OpenAI, compatível com os clientes compatíveis com o OpenAI.
- Há suporte para respostas de streaming e não streaming, garantindo total compatibilidade com os clientes Claude.
- Oferece mapeamento flexível de modelos com nomes de modelos personalizáveis (por exemplo
gemini-1.5-pro
). - Oferece suporte à rápida implementação de serviços de proxy por meio de scripts Bash.
- Permita que os usuários configurem chaves de API e endereços de serviços de proxy, adaptando-se a vários modelos de back-end.
- Código aberto, gratuito e transparente para que os desenvolvedores possam personalizar e ampliar.
Usando a Ajuda
Processo de instalação
Para usar o Claude Proxy, os usuários precisam seguir as etapas abaixo para configurar e executar o projeto localmente ou em um servidor. Veja abaixo um guia detalhado de instalação e uso:
- Clonagem do depósito do projeto
Abra um terminal e execute o seguinte comando para clonar o projeto localmente:git clone https://github.com/tingxifa/claude_proxy.git
Quando a clonagem estiver concluída, vá para o diretório do projeto:
cd claude_proxy
- Editar arquivo de configuração
No diretório do projeto, localize o arquivoclaude_proxy.sh
usando um editor de texto (como onano
talvezvim
) Aberto:nano claude_proxy.sh
Localize a parte do script denominada "Destaques: O que substituir" e altere as seguintes variáveis:
API_KEY
Substitua por sua chave de API, por exemplo:API_KEY="your_api_key_here"
OPEN_AI_URL
Configuração do endereço do serviço de proxy (semhttps://
), por exemplo:OPEN_AI_URL="api.example.com/v1"
OPEN_MODEL
Especifique o nome do modelo, por exemplo:OPEN_MODEL="gemini-1.5-pro"
Salve e saia do editor.
- Adição de privilégios de execução
Adicione permissões de executável ao script e execute-o:chmod +x claude_proxy.sh
- Execução do serviço de agente
Execute o script para iniciar o serviço do agente:./claude_proxy.sh
Após a inicialização bem-sucedida, o serviço de proxy começará a escutar em preparação para o processamento das solicitações da API do Claude.
Uso
Quando a configuração estiver concluída, os usuários poderão invocar o modelo Claude por meio da linha de comando ou de um cliente compatível com a API do OpenAI. Veja a seguir o procedimento:
- chamada de linha de comando
No terminal, use o comandocurl
para testar o serviço de proxy. Exemplo:curl http://localhost:port/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer your_api_key_here" \ -d '{ "model": "gemini-1.5-pro", "messages": [ {"role": "system", "content": "你是一个智能助手"}, {"role": "user", "content": "请告诉我今天的天气"} ] }'
O comando acima envia uma solicitação ao agente, que converte a API do Claude para o formato OpenAI e retorna uma resposta.
- Uso de ferramentas de front-end
O Claude Proxy é compatível com ferramentas de front-end compatíveis com a API do OpenAI (como o LibreChat ou o SillyTavern). Na configuração do front-end, defina o endereço da API como o URL do serviço de proxy (por exemplohttp://localhost:port/v1
) e insira sua chave de API. Depois disso, a ferramenta de front-end pode chamar o modelo Claude por meio do proxy. - Suporte a respostas de streaming
Se forem necessárias respostas de streaming em tempo real (como em um aplicativo de bate-papo), certifique-se de que o front-end ou o cliente ofereça suporte a eventos enviados pelo servidor (SSE). O agente lida automaticamente com dados de streaming para manter a compatibilidade com clientes Claude.
Operação da função em destaque
- mapeamento de modelos
Os usuários podem personalizar o mapeamento do modelo de acordo com suas necessidades. Por exemplo, mapear o modelo Haiku de Claude para o modelogpt-4o-mini
ou mapear um modelo Sonnet para ogemini-1.5-pro
. ModificaçõesOPEN_MODEL
variáveis podem ser implementadas. Exemplo:OPEN_MODEL="gpt-4o"
Depois de executar novamente o script, o agente processa a solicitação usando o modelo especificado.
- Suporte a vários back-ends
O Claude Proxy suporta a conexão com vários modelos de back-end (por exemplo, OpenAI, Gemini ou modelos locais). Ao modificar oOPEN_AI_URL
responder cantandoAPI_KEY
O usuário pode alternar entre diferentes provedores de API. Por exemplo, conectar-se a um modelo Ollama local:OPEN_AI_URL="http://localhost:11434/v1" API_KEY="dummy-key"
- Depuração e registro em log
Ao executar o script, o agente gera um registro no terminal mostrando detalhes das solicitações e respostas. Se tiver problemas, verifique o registro para localizar erros, como uma chave de API inválida ou um nome de modelo incorreto.
advertência
- Certifique-se de que o ambiente de rede seja estável e que o serviço de proxy exija acesso a APIs externas.
- As chaves de API precisam ser armazenadas adequadamente para evitar vazamentos.
- Se estiver usando um modelo local (por exemplo, Ollama), verifique se o servidor local está ativo e escutando na porta correta.
Com as etapas acima, os usuários podem configurar e executar rapidamente o Claude Proxy para converter perfeitamente a API do Claude em API do OpenAI, adequada para uma variedade de cenários de desenvolvimento.
cenário do aplicativo
- Chamadas de modelo entre plataformas
Os desenvolvedores que desejam usar os modelos do Claude em ferramentas compatíveis com a API OpenAI, o Claude Proxy converte as solicitações de API para o formato OpenAI, permitindo que os usuários chamem o Claude sem modificar o código de front-end. - Teste de desenvolvimento local
Teste o desempenho dos modelos Claude em um ambiente local. Os desenvolvedores podem configurar agentes para se conectarem a modelos locais, como o Ollama, para desenvolvimento e depuração de baixo custo. - Integração de aplicativos de bate-papo
Os desenvolvedores de aplicativos de bate-papo querem integrar o modelo Claude, mas o front-end só é compatível com a API OpenAI. O Claude Proxy fornece um serviço de proxy para garantir que o bate-papo em tempo real seja executado sem problemas. - Mudança de modelo e otimização
As organizações precisam alternar entre os modelos com base em requisitos de custo ou desempenho (por exemplo, do Claude para o Gemini), e os recursos de mapeamento de modelos do Claude Proxy permitem a rápida alternância e a redução dos custos de desenvolvimento.
QA
- Quais modelos são compatíveis com o Claude Proxy?
Suporte a qualquer modelo compatível com a OpenAI, comogpt-4o
egemini-1.5-pro
etc. Os usuários podem usar oOPEN_MODEL
Modelos personalizados variáveis. - Como lidar com vazamentos de chaves de API?
Se a chave for comprometida, substitua a chave de API por uma nova imediatamente eclaude_proxy.sh
Atualização médiaAPI_KEY
Variáveis. - O serviço de proxy oferece suporte a respostas de streaming?
Sim, o Claude Proxy suporta respostas de streaming e não streaming e é compatível com todos os recursos SSE do cliente Claude. - Preciso de uma chave de API do Anthropic?
Não necessariamente. Se você estiver usando outro backend (como OpenAI ou Gemini), basta fornecer a chave de API do backend apropriado.