![new-api](/web/public/logo.png) # New API 🍥 **Passerelle de modèles étendus de nouvelle génération et système de gestion d'actifs d'IA**

中文 | English | Français | 日本語

licence version docker docker GoReportCard

Calcium-Ion%2Fnew-api | Trendshift

Démarrage rapideFonctionnalités clésDéploiementDocumentationAide

## 📝 Description du projet > [!NOTE] > Il s'agit d'un projet open-source développé sur la base de [One API](https://github.com/songquanpeng/one-api) > [!IMPORTANT] > - Ce projet est uniquement destiné à des fins d'apprentissage personnel, sans garantie de stabilité ni de support technique. > - Les utilisateurs doivent se conformer aux [Conditions d'utilisation](https://openai.com/policies/terms-of-use) d'OpenAI et aux **lois et réglementations applicables**, et ne doivent pas l'utiliser à des fins illégales. > - Conformément aux [《Mesures provisoires pour la gestion des services d'intelligence artificielle générative》](http://www.cac.gov.cn/2023-07/13/c_1690898327029107.htm), veuillez ne fournir aucun service d'IA générative non enregistré au public en Chine. --- ## 🤝 Partenaires de confiance

Sans ordre particulier

Cherry Studio Université de Pékin UCloud Alibaba Cloud IO.NET

--- ## 🙏 Remerciements spéciaux

JetBrains Logo

Merci à JetBrains pour avoir fourni une licence de développement open-source gratuite pour ce projet

--- ## 🚀 Démarrage rapide ### Utilisation de Docker Compose (recommandé) ```bash # Cloner le projet git clone https://github.com/QuantumNous/new-api.git cd new-api # Modifier la configuration docker-compose.yml nano docker-compose.yml # Démarrer le service docker-compose up -d ```
Utilisation des commandes Docker ```bash # Tirer la dernière image docker pull calciumion/new-api:latest # Utilisation de SQLite (par défaut) docker run --name new-api -d --restart always \ -p 3000:3000 \ -e TZ=Asia/Shanghai \ -v ./data:/data \ calciumion/new-api:latest # Utilisation de MySQL docker run --name new-api -d --restart always \ -p 3000:3000 \ -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi" \ -e TZ=Asia/Shanghai \ -v ./data:/data \ calciumion/new-api:latest ``` > **💡 Astuce:** `-v ./data:/data` sauvegardera les données dans le dossier `data` du répertoire actuel, vous pouvez également le changer en chemin absolu comme `-v /your/custom/path:/data`
--- 🎉 Après le déploiement, visitez `http://localhost:3000` pour commencer à utiliser! 📖 Pour plus de méthodes de déploiement, veuillez vous référer à [Guide de déploiement](https://docs.newapi.pro/installation) --- ## 📚 Documentation
### 📖 [Documentation officielle](https://docs.newapi.pro/) | [![Demander à DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/QuantumNous/new-api)
**Navigation rapide:** | Catégorie | Lien | |------|------| | 🚀 Guide de déploiement | [Documentation d'installation](https://docs.newapi.pro/installation) | | ⚙️ Configuration de l'environnement | [Variables d'environnement](https://docs.newapi.pro/installation/environment-variables) | | 📡 Documentation de l'API | [Documentation de l'API](https://docs.newapi.pro/api) | | ❓ FAQ | [FAQ](https://docs.newapi.pro/support/faq) | | 💬 Interaction avec la communauté | [Canaux de communication](https://docs.newapi.pro/support/community-interaction) | --- ## ✨ Fonctionnalités clés > Pour les fonctionnalités détaillées, veuillez vous référer à [Présentation des fonctionnalités](https://docs.newapi.pro/wiki/features-introduction) | ### 🎨 Fonctions principales | Fonctionnalité | Description | |------|------| | 🎨 Nouvelle interface utilisateur | Conception d'interface utilisateur moderne | | 🌍 Multilingue | Prend en charge le chinois, l'anglais, le français, le japonais | | 🔄 Compatibilité des données | Complètement compatible avec la base de données originale de One API | | 📈 Tableau de bord des données | Console visuelle et analyse statistique | | 🔒 Gestion des permissions | Regroupement de jetons, restrictions de modèles, gestion des utilisateurs | ### 💰 Paiement et facturation - ✅ Recharge en ligne (EPay, Stripe) - ✅ Tarification des modèles de paiement à l'utilisation - ✅ Prise en charge de la facturation du cache (OpenAI, Azure, DeepSeek, Claude, Qwen et tous les modèles pris en charge) - ✅ Configuration flexible des politiques de facturation ### 🔐 Autorisation et sécurité - 🤖 Connexion par autorisation LinuxDO - 📱 Connexion par autorisation Telegram - 🔑 Authentification unifiée OIDC ### 🚀 Fonctionnalités avancées **Prise en charge des formats d'API:** - ⚡ [OpenAI Responses](https://docs.newapi.pro/api/openai-responses) - ⚡ [OpenAI Realtime API](https://docs.newapi.pro/api/openai-realtime) (y compris Azure) - ⚡ [Claude Messages](https://docs.newapi.pro/api/anthropic-chat) - ⚡ [Google Gemini](https://docs.newapi.pro/api/google-gemini-chat/) - 🔄 [Modèles Rerank](https://docs.newapi.pro/api/jinaai-rerank) (Cohere, Jina) **Routage intelligent:** - ⚖️ Sélection aléatoire pondérée des canaux - 🔄 Nouvelle tentative automatique en cas d'échec - 🚦 Limitation du débit du modèle pour les utilisateurs **Conversion de format:** - 🔄 OpenAI ⇄ Claude Messages - 🔄 OpenAI ⇄ Gemini Chat - 🔄 Fonctionnalité de la pensée au contenu **Prise en charge de l'effort de raisonnement:**
Voir la configuration détaillée **Modèles de la série o d'OpenAI:** - `o3-mini-high` - Effort de raisonnement élevé - `o3-mini-medium` - Effort de raisonnement moyen - `o3-mini-low` - Effort de raisonnement faible **Modèles de pensée de Claude:** - `claude-3-7-sonnet-20250219-thinking` - Activer le mode de pensée **Modèles de la série Google Gemini:** - `gemini-2.5-flash-thinking` - Activer le mode de pensée - `gemini-2.5-flash-nothinking` - Désactiver le mode de pensée - `gemini-2.5-pro-thinking` - Activer le mode de pensée - `gemini-2.5-pro-thinking-128` - Activer le mode de pensée avec budget de pensée de 128 tokens - Vous pouvez également ajouter les suffixes `-low`, `-medium` ou `-high` aux modèles Gemini pour fixer le niveau d’effort de raisonnement (sans suffixe de budget supplémentaire).
--- ## 🤖 Prise en charge des modèles > Pour les détails, veuillez vous référer à [Documentation de l'API - Interface de relais](https://docs.newapi.pro/api) | Type de modèle | Description | Documentation | |---------|------|------| | 🤖 OpenAI GPTs | série gpt-4-gizmo-* | - | | 🎨 Midjourney-Proxy | [Midjourney-Proxy(Plus)](https://github.com/novicezk/midjourney-proxy) | [Documentation](https://docs.newapi.pro/api/midjourney-proxy-image) | | 🎵 Suno-API | [Suno API](https://github.com/Suno-API/Suno-API) | [Documentation](https://docs.newapi.pro/api/suno-music) | | 🔄 Rerank | Cohere, Jina | [Documentation](https://docs.newapi.pro/api/jinaai-rerank) | | 💬 Claude | Format Messages | [Documentation](https://docs.newapi.pro/api/anthropic-chat) | | 🌐 Gemini | Format Google Gemini | [Documentation](https://docs.newapi.pro/api/google-gemini-chat/) | | 🔧 Dify | Mode ChatFlow | - | | 🎯 Personnalisé | Prise en charge de l'adresse d'appel complète | - | ### 📡 Interfaces prises en charge
Voir la liste complète des interfaces - [Interface de discussion (Chat Completions)](https://docs.newapi.pro/api/openai-chat) - [Interface de réponse (Responses)](https://docs.newapi.pro/api/openai-responses) - [Interface d'image (Image)](https://docs.newapi.pro/api/openai-image) - [Interface audio (Audio)](https://docs.newapi.pro/api/openai-audio) - [Interface vidéo (Video)](https://docs.newapi.pro/api/openai-video) - [Interface d'incorporation (Embeddings)](https://docs.newapi.pro/api/openai-embeddings) - [Interface de rerank (Rerank)](https://docs.newapi.pro/api/jinaai-rerank) - [Conversation en temps réel (Realtime)](https://docs.newapi.pro/api/openai-realtime) - [Discussion Claude](https://docs.newapi.pro/api/anthropic-chat) - [Discussion Google Gemini](https://docs.newapi.pro/api/google-gemini-chat/)
--- ## 🚢 Déploiement > [!TIP] > **Dernière image Docker:** `calciumion/new-api:latest` ### 📋 Exigences de déploiement | Composant | Exigence | |------|------| | **Base de données locale** | SQLite (Docker doit monter le répertoire `/data`)| | **Base de données distante | MySQL ≥ 5.7.8 ou PostgreSQL ≥ 9.6 | | **Moteur de conteneur** | Docker / Docker Compose | ### ⚙️ Configuration des variables d'environnement
Configuration courante des variables d'environnement | Nom de variable | Description | Valeur par défaut | |--------|------|--------| | `SESSION_SECRET` | Secret de session (requis pour le déploiement multi-machines) | | `CRYPTO_SECRET` | Secret de chiffrement (requis pour Redis) | - | | `SQL_DSN` | Chaine de connexion à la base de données | - | | `REDIS_CONN_STRING` | Chaine de connexion Redis | - | | `STREAMING_TIMEOUT` | Délai d'expiration du streaming (secondes) | `300` | | `STREAM_SCANNER_MAX_BUFFER_MB` | Taille max du buffer par ligne (Mo) pour le scanner SSE ; à augmenter quand les sorties image/base64 sont très volumineuses (ex. images 4K) | `64` | | `MAX_REQUEST_BODY_MB` | Taille maximale du corps de requête (Mo, comptée **après décompression** ; évite les requêtes énormes/zip bombs qui saturent la mémoire). Dépassement ⇒ `413` | `32` | | `AZURE_DEFAULT_API_VERSION` | Version de l'API Azure | `2025-04-01-preview` | | `ERROR_LOG_ENABLED` | Interrupteur du journal d'erreurs | `false` | 📖 **Configuration complète:** [Documentation des variables d'environnement](https://docs.newapi.pro/installation/environment-variables)
### 🔧 Méthodes de déploiement
Méthode 1: Docker Compose (recommandé) ```bash # Cloner le projet git clone https://github.com/QuantumNous/new-api.git cd new-api # Modifier la configuration nano docker-compose.yml # Démarrer le service docker-compose up -d ```
Méthode 2: Commandes Docker **Utilisation de SQLite:** ```bash docker run --name new-api -d --restart always \ -p 3000:3000 \ -e TZ=Asia/Shanghai \ -v ./data:/data \ calciumion/new-api:latest ``` **Utilisation de MySQL:** ```bash docker run --name new-api -d --restart always \ -p 3000:3000 \ -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi" \ -e TZ=Asia/Shanghai \ -v ./data:/data \ calciumion/new-api:latest ``` > **💡 Explication du chemin:** > - `./data:/data` - Chemin relatif, données sauvegardées dans le dossier data du répertoire actuel > - Vous pouvez également utiliser un chemin absolu, par exemple : `/your/custom/path:/data`
Méthode 3: Panneau BaoTa 1. Installez le panneau BaoTa (version **9.2.0** ou supérieure), recherchez **New-API** dans le magasin d'applications et installez-le. 2. Recherchez **New-API** dans le magasin d'applications et installez-le. 📖 [Tutoriel avec des images](./docs/BT.md)
### ⚠️ Considérations sur le déploiement multi-machines > [!WARNING] > - **Doit définir** `SESSION_SECRET` - Sinon l'état de connexion sera incohérent sur plusieurs machines > - **Redis partagé doit définir** `CRYPTO_SECRET` - Sinon les données ne pourront pas être déchiffrées ### 🔄 Nouvelle tentative de canal et cache **Configuration de la nouvelle tentative:** `Paramètres → Paramètres de fonctionnement → Paramètres généraux → Nombre de tentatives en cas d'échec` **Configuration du cache:** - `REDIS_CONN_STRING`: Cache Redis (recommandé) - `MEMORY_CACHE_ENABLED`: Cache mémoire --- ## 🔗 Projets connexes ### Projets en amont | Projet | Description | |------|------| | [One API](https://github.com/songquanpeng/one-api) | Base du projet original | | [Midjourney-Proxy](https://github.com/novicezk/midjourney-proxy) | Prise en charge de l'interface Midjourney | ### Outils d'accompagnement | Projet | Description | |------|------| | [neko-api-key-tool](https://github.com/Calcium-Ion/neko-api-key-tool) | Outil de recherche de quota d'utilisation avec une clé | --- ## 💬 Aide et support ### 📖 Ressources de documentation | Ressource | Lien | |------|------| | 📘 FAQ | [FAQ](https://docs.newapi.pro/support/faq) | | 💬 Interaction avec la communauté | [Canaux de communication](https://docs.newapi.pro/support/community-interaction) | | 🐛 Commentaires sur les problèmes | [Commentaires sur les problèmes](https://docs.newapi.pro/support/feedback-issues) | | 📚 Documentation complète | [Documentation officielle](https://docs.newapi.pro/support) | ### 🤝 Guide de contribution Bienvenue à toutes les formes de contribution! - 🐛 Signaler des bogues - 💡 Proposer de nouvelles fonctionnalités - 📝 Améliorer la documentation - 🔧 Soumettre du code --- ## 🌟 Historique des étoiles
[![Graphique de l'historique des étoiles](https://api.star-history.com/svg?repos=Calcium-Ion/new-api&type=Date)](https://star-history.com/#Calcium-Ion/new-api&Date)
---
### 💖 Merci d'utiliser New API Si ce projet vous est utile, bienvenue à nous donner une ⭐️ Étoile! **[Documentation officielle](https://docs.newapi.pro/)** • **[Commentaires sur les problèmes](https://github.com/Calcium-Ion/new-api/issues)** • **[Dernière version](https://github.com/Calcium-Ion/new-api/releases)** Construit avec ❤️ par QuantumNous