À propos du projet

## Présentation du Projet **cf-workers-ai-gateway** est une passerelle de déduction AI légère et sans coût, spécialement conçue pour maximiser l'utilisation des crédits gratuits de **Cloudflare Workers AI**. Le projet encapsule plusieurs modèles open source fournis par Cloudflare, tels que Qwen3 et GPT-OSS, dans une **API compatible OpenAI**, permettant aux utilisateurs d'interagir avec n'importe quel client compatible avec le protocole OpenAI, comme Cherry Studio, LobeChat, Open WebUI, Codex CLI, etc., de manière gratuite ou à très faible coût. Contrairement aux passerelles d'agrégation multi-fournisseurs traditionnelles (comme One-API, LiteLLM), ce projet ne regroupe pas les APIs payantes, mais se concentre sur la maximisation de la valeur d'un seul fournisseur gratuit (Cloudflare Workers AI). Grâce à la rotation de plusieurs comptes, à la routage basé sur le coût et à un mécanisme d'interruption intelligent, il permet aux utilisateurs personnels d'exécuter quotidiennement des centaines ou même des milliers d'inférences AI de haute qualité sans dépenser un centime. ## Caractéristiques Clés ### 1. Véritable zéro coût et superposition de crédits - **Utilisation des crédits gratuits** : chaque compte Cloudflare offre 10 000 Neurons de crédits gratuits par jour. Le projet prend en charge la superposition de jusqu'à 5 comptes, soit 50 000 Neurons par jour. - **Exécution gratuite de modèles haute performance** : grâce à la superposition de crédits, les utilisateurs peuvent exécuter gratuitement environ 150 fois par jour le modèle phare `qwen3.8-27b` (indice intelligent AA 52, niveau parmi les 6% meilleurs mondiaux), ou des milliers de fois des modèles légers comme `qwen3-30b-a3b-fp8`. ### 2. Rotation intelligente de plusieurs comptes - **Rotation par tranche de temps** : bascule automatiquement vers un compte préféré toutes les 10 minutes pour assurer une consommation uniforme des crédits de chaque compte et éviter l'épuisement prématuré d'un seul compte. - **Conception sans état** : adopte un algorithme de tranche de temps plutôt qu'un compteur en mémoire, s'adapte à des environnements sans serveur comme Vercel avec plusieurs instances de déploiement, sans partager l'état pour maintenir une rotation cohérente. ### 3. Routage et interruption basés sur le coût - **Système de niveaux** : abstrait les modèles en trois niveaux : `fast` (par défaut, à faible coût), `eco` (économique) et `smart` (haute performance, coût élevé). Par défaut, le routage se fait vers le niveau `fast` le moins cher pour économiser des crédits, les utilisateurs peuvent spécifier manuellement le niveau `smart` pour les tâches d'inférence complexes. - **Interruption graduée** : met en œuvre différentes stratégies de refroidissement pour différents types d'erreurs (épuisement des crédits, limitation de vitesse, erreurs de réseau, etc.). Par exemple, après l'épuisement des crédits, adopte une "récupération par sondage" qui tente automatiquement de rétablir le service une fois par heure, jusqu'à ce que les crédits Cloudflare soient réinitialisés (ce qui peut prendre un certain temps). - **Routage stratifié pour les grandes demandes** : calcule automatiquement la limite de demande en fonction de la fenêtre de contexte du modèle. Si la demande est trop grande, essaie d'abord de réduire les messages historiques ; si cela dépasse toujours la limite, dégrade automatiquement vers un niveau de modèle avec une fenêtre de contexte plus grande. ### 4. Normalisation et optimisation du protocole - **Compatible OpenAI** : entièrement compatible avec les API Chat Completions et Responses, prend en charge la sortie différée (SSE). - **Compression de la chaîne de pensée** : pour les modèles de la série Qwen3, injecte automatiquement le commutateur logiciel `/no_think`, réduisant considérablement la consommation de jetons de sortie de la chaîne de pensée (dans les tests, de 165 mots à 2 mots), sans affecter les fonctionnalités d'appel d'outils. - **Standardisation du format** : traite automatiquement le champ `reasoning` renvoyé par Cloudflare, les appels d'outils en double et les problèmes de ligne vide SSE, garantissant que la sortie est strictement conforme aux spécifications OpenAI. ## Démarrage rapide ### 1. Obtenir les informations d'identification Cloudflare 1. Inscrivez-vous sur [Cloudflare](https://dash.cloudflare.com/sign-up). 2. Créez un jeton API : accédez à **Mon profil → Jeton API → Créer un jeton**, sélectionnez le modèle "Workers AI". 3. Enregistrez l'**ID du compte** et le **jeton API**. 4. (Facultatif) Inscrivez-vous à plusieurs comptes pour superposer les crédits, jusqu'à 5 comptes. ### 2. Configuration et lancement ```bash cp .env.example .env # Éditez .env et renseignez CF_ACCOUNT_ID, CF_API_TOKEN et JY_AI_KEY node server.js ``` Le service est lancé par défaut sur `http://localhost:3000`. ### 3. Test ```bash curl http://localhost:3000/api/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer your_secret_key" \ -d '{ "model": "fast", "messages": [{"role": "user", "content": "Bonjour"}] }' ``` ## Conseils de déploiement - **Déploiement local** : exécutez directement `node server.js`. - **Déploiement Vercel (recommandé)** : bifurquez ce référentiel et importez-le sur Vercel, configurez les variables d'environnement. Le projet est adapté aux fonctions sans serveur et ne nécessite pas de base de données. ## Foire aux questions - **Délai de réinitialisation des crédits** : la documentation officielle de Cloudflare indique une réinitialisation quotidienne à 00:00 UTC, mais il existe un délai de synchronisation. La passerelle gère automatiquement ce problème grâce au mécanisme de "récupération par sondage", sans nécessiter d'intervention manuelle. - **Démarrage à froid lent** : le démarrage à froid des modèles Cloudflare peut prendre 19-25 secondes. La passerelle intègre une temporisation pour la réception du premier octet (par défaut 12s), qui bascule automatiquement vers un autre canal ou compte disponible pour améliorer l'expérience utilisateur. - **Modèles payants non pris en charge** : ce projet ne prend en charge que les modèles gratuits / open source sur Cloudflare Workers AI, pas les APIs payantes comme Claude, GPT-4. ## Résumé **cf-workers-ai-gateway** fournit une solution d'accès AI efficace, gratuite et stable pour les développeurs personnels et les amateurs. Grâce à des moyens ingénieux d'ingénierie, il résout les problèmes de gestion des crédits gratuits, de coordination multi-comptes, de compatibilité des protocoles et d'optimisation des coûts, et constitue un outil idéal pour maximiser la valeur de Cloudflare Workers AI.