Sobre o projeto
## Visão Geral do Projeto
**cf-workers-ai-gateway** é um gateway de inferência de IA leve e de zero custo, projetado para maximizar o uso das cotas gratuitas do **Cloudflare Workers AI**. Ele encapsula vários modelos de código aberto fornecidos pela Cloudflare (como Qwen3, GPT-OSS) em uma **API compatível com OpenAI**, permitindo que os usuários interajam com IA de alta qualidade sem pagar nada, usando qualquer cliente que suporte o protocolo OpenAI (por exemplo, Cherry Studio, LobeChat, Open WebUI, Codex CLI).
Ao contrário dos gateways de agregação de vários fornecedores (como One-API, LiteLLM), este projeto não agrega APIs pagas; em vez disso, ele se concentra em **“espremer” o valor de um único fornecedor gratuito (Cloudflare Workers AI)**. Por meio de rotação de várias contas, roteamento consciente de custos e mecanismos de disjuntor inteligentes, ele permite que usuários individuais executem centenas ou até milhares de inferências de IA por dia sem gastar um centavo.
## Recursos Principais
### 1. Zero Custo e Agregação de Cotas
- **Utilização de Cota Gratuita:** Cada conta Cloudflare fornece 10.000 Neurons por dia. Este projeto suporta a agregação de até 5 contas, totalizando 50.000 Neurons por dia.
- **Execução Gratuita de Modelos de Alto Desempenho:** Com a agregação de cotas, os usuários podem executar gratuitamente cerca de 150 vezes o modelo de ponta `qwen3.8-27b` (AA Intelligence Index 52, top 6% global) ou milhares de vezes modelos mais leves como `qwen3-30b-a3b-fp8`.
### 2. Rotação Inteligente de Múltiplas Contas
- **Rotação de Fatias de Tempo:** O gateway alterna automaticamente a conta preferida a cada 10 minutos para garantir o consumo uniforme da cota, evitando que uma única conta se esgote cedo demais.
- **Design Sem Estado:** Utiliza um algoritmo de fatia de tempo em vez de contadores de memória, tornando-o adequado para implantações em ambientes Serverless como Vercel, onde a consistência da rotação é mantida sem estado compartilhado.
### 3. Roteamento Consciente de Custos e Disjuntor em Camadas
- **Sistema de Níveis:** Os modelos são abstraídos em três níveis: `fast` (padrão, baixo custo), `eco` (econômico) e `smart` (alto desempenho, alto custo). O roteamento padrão é para o nível `fast` para economizar cotas, enquanto os usuários podem especificar o nível `smart` para tarefas de inferência complexas.
- **Disjuntor em Camadas:** Implementa diferentes estratégias de resfriamento para vários tipos de erros (esgotamento de cota, limite de taxa, erros de rede). Por exemplo, após o esgotamento da cota, ele usa uma “recuperação de sondagem”, tentando novamente a cada hora até que a cota da Cloudflare seja redefinida.
- **Roteamento em Camadas para Grandes Solicitações:** Ajusta automaticamente o limite de solicitação com base na janela de contexto do modelo. Se uma solicitação for muito grande, ela primeiro tenta cortar mensagens históricas; se ainda exceder o limite, ela é rebaixada automaticamente para um modelo com uma janela de contexto maior.
### 4. Unificação e Otimização de Protocolo
- **Compatibilidade com OpenAI:** Totalmente compatível com as APIs Chat Completions e Responses, incluindo suporte para saída de streaming (SSE).
- **Compressão de Chain of Thought:** Para modelos da série Qwen3, injeta automaticamente o soft-switch `/no_think`, reduzindo significativamente o consumo de tokens de saída de raciocínio (de 165 caracteres para 2 caracteres), sem afetar a funcionalidade de chamada de ferramenta.
- **Padronização de Formato:** Processa automaticamente os campos `reasoning` nativos da Cloudflare, `tool_calls` duplicados e problemas de linha em branco SSE, garantindo que a saída esteja em estrita conformidade com as especificações da OpenAI.
## Primeiros Passos
### 1. Obtenha Credenciais da Cloudflare
1. Registre-se em uma conta [Cloudflare](https://dash.cloudflare.com/sign-up).
2. Crie um Token de API: Vá para **My Profile → API Tokens → Create Token** e selecione o modelo “Workers AI”.
3. Anote o `Account ID` e o `API Token`.
4. (Opcional) Registre várias contas para agregar cotas, até 5 no total.
### 2. Configure e Inicie
```bash
cp .env.example .env
# Edite .env para inserir CF_ACCOUNT_ID, CF_API_TOKEN e JY_AI_KEY
node server.js
```
O serviço é executado por padrão em `http://localhost:3000`.
### 3. Teste
```bash
curl http://localhost:3000/api/v1/chat/completions \
-H
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.