📝 Description du projet
[!NOTE]
Il s'agit d'un projet open-source développé sur la base de One API
[!IMPORTANT]
🤝 Partenaires de confiance
Sans ordre particulier
🙏 Remerciements spéciaux
Merci à JetBrains pour avoir fourni une licence de développement open-source gratuite pour ce projet
🚀 Démarrage rapide
Utilisation de Docker Compose (recommandé)
# 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
📚 Documentation
### 📖 [Documentation officielle](https://docs.newapi.pro/) | [](https://deepwiki.com/QuantumNous/new-api)
Navigation rapide:
✨ Fonctionnalités clés
Pour les fonctionnalités détaillées, veuillez vous référer à Présentation des fonctionnalités |
🎨 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:
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
🤖 Prise en charge des modèles
Pour les détails, veuillez vous référer à Documentation de l'API - Interface de relais
📡 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` |
| `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
Outils d'accompagnement
| Projet |
Description |
| neko-api-key-tool |
Outil de recherche de quota d'utilisation avec une clé |
💬 Aide et support
📖 Ressources de documentation
🤝 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
[](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