Nav apraksta

Seefs 355307223a fix: clarify affinity disabled channel retry message 2 nedēļas atpakaļ
.github 4d2993e4cc Merge remote-tracking branch 'origin/main' into nightly 1 mēnesi atpakaļ
bin 6a34813bea chore: add model parameter to the time_test script (#245) 2 gadi atpakaļ
common 209645e26b feat(topup-log): add NODE_NAME env var for audit logs 3 nedēļas atpakaļ
constant b4df9955f4 fix: isStream status in error logs instead of hardcoded false (#4195) 3 nedēļas atpakaļ
controller a7c38ec851 fix: add PaymentProvider field to prevent cross-gateway callback attacks 2 nedēļas atpakaļ
docs f7adf02eb4 feat(claude): add cache_control and speed passthrough controls (#4247) 3 nedēļas atpakaļ
dto 6bde1a9c8d Merge origin/main into nightly 2 nedēļas atpakaļ
electron 346de02683 chore(deps-dev): bump @xmldom/xmldom from 0.8.12 to 0.8.13 in /electron 2 nedēļas atpakaļ
i18n 355307223a fix: clarify affinity disabled channel retry message 2 nedēļas atpakaļ
logger dcd0911612 fix: log management race condition, partial delete reporting, and UX issues 1 mēnesi atpakaļ
middleware 355307223a fix: clarify affinity disabled channel retry message 2 nedēļas atpakaļ
model a7c38ec851 fix: add PaymentProvider field to prevent cross-gateway callback attacks 2 nedēļas atpakaļ
oauth 1911520eba fix: normalize generic oauth bearer token type 1 mēnesi atpakaļ
pkg f2f3410dcf feat: add `len` variable for tier conditions and LLM prompt helper 2 nedēļas atpakaļ
relay f2f3410dcf feat: add `len` variable for tier conditions and LLM prompt helper 2 nedēļas atpakaļ
router f995a868e4 Merge pull request #4089 from seefs001/feature/waffo-pay 3 nedēļas atpakaļ
service f2f3410dcf feat: add `len` variable for tier conditions and LLM prompt helper 2 nedēļas atpakaļ
setting f2f3410dcf feat: add `len` variable for tier conditions and LLM prompt helper 2 nedēļas atpakaļ
types ed7f839911 feat: improve model price error UX with role-aware messages and cleaner UI 4 nedēļas atpakaļ
web f2f3410dcf feat: add `len` variable for tier conditions and LLM prompt helper 2 nedēļas atpakaļ
.dockerignore b10f1f7b85 feat: ionet integrate (#2105) 4 mēneši atpakaļ
.env.example cf1b485389 add 添加 启用错误日志记录到env配置中 1 mēnesi atpakaļ
.gitattributes 986aa02bf2 chore: update .gitattributes 2 mēneši atpakaļ
.gitignore 6bde1a9c8d Merge origin/main into nightly 2 nedēļas atpakaļ
AGENTS.md eab478bdc8 fix: miscellaneous quick fixes from CodeRabbit review 2 nedēļas atpakaļ
CLAUDE.md eab478bdc8 fix: miscellaneous quick fixes from CodeRabbit review 2 nedēļas atpakaļ
Dockerfile a5e20269dd security: harden Docker and release CI workflows 1 mēnesi atpakaļ
LICENSE f2108a7deb Update LICENSE file 3 mēneši atpakaļ
README.fr.md 06fc6015bb Update README 2 mēneši atpakaļ
README.ja.md 06fc6015bb Update README 2 mēneši atpakaļ
README.md 06fc6015bb Update README 2 mēneši atpakaļ
README.zh_CN.md cf86fe5fea docs: 完善宝塔面板部署教程并修复链接错误 1 mēnesi atpakaļ
README.zh_TW.md 4e492b26f6 Update README.zh_TW.md 1 mēnesi atpakaļ
VERSION f4450040b9 fix: add a blank VERSION file (#135) 2 gadi atpakaļ
docker-compose.yml d75a046791 chore(docker-compose): set default redis password 3 nedēļas atpakaļ
go.mod eab478bdc8 fix: miscellaneous quick fixes from CodeRabbit review 2 nedēļas atpakaļ
go.sum 6bde1a9c8d Merge origin/main into nightly 2 nedēļas atpakaļ
main.go 70821e2051 feat: auto fetch upstream models (#2979) 2 mēneši atpakaļ
makefile 8c9dfd3bb4 feat: use bun when develop locally 11 mēneši atpakaļ
new-api.service 5010f2d004 format: package name -> github.com/QuantumNous/new-api (#2017) 7 mēneši atpakaļ

README.fr.md

![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 GoReportCard


Démarrage rapideFonctionnalités clésDéploiementDocumentationAide

📝 Description du projet

[!IMPORTANT]


🤝 Partenaires de confiance

Sans ordre particulier

Cherry Studio Aion UI 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é)

# 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
# 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/en/docs) | [![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
⚙️ Configuration de l'environnement Variables d'environnement
📡 Documentation de l'API Documentation de l'API
❓ FAQ FAQ
💬 Interaction avec la communauté Canaux de communication

✨ 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 simplifié, le chinois traditionnel, l'anglais, le français et 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 Discord
  • 🤖 Connexion par autorisation LinuxDO
  • 📱 Connexion par autorisation Telegram
  • 🔑 Authentification unifiée OIDC
  • 🔍 Requête de quota d'utilisation de clé (avec neko-api-key-tool)

🚀 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 Compatible ⇄ Claude Messages
  • 🔄 OpenAI Compatible → Google Gemini
  • 🔄 Google Gemini → OpenAI Compatible - Texte uniquement, les appels de fonction ne sont pas encore pris en charge
  • 🚧 OpenAI Compatible ⇄ OpenAI Responses - En développement
  • 🔄 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 OpenAI :

  • o3-mini-high - Effort de raisonnement élevé
  • o3-mini-medium - Effort de raisonnement moyen
  • o3-mini-low - Effort de raisonnement faible
  • gpt-5-high - Effort de raisonnement élevé
  • gpt-5-medium - Effort de raisonnement moyen
  • gpt-5-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

Type de modèle Description Documentation
🤖 OpenAI-Compatible Modèles compatibles OpenAI Documentation
🤖 OpenAI Responses Format OpenAI Responses Documentation
🎨 Midjourney-Proxy Midjourney-Proxy(Plus) Documentation
🎵 Suno-API Suno API Documentation
🔄 Rerank Cohere, Jina Documentation
💬 Claude Format Messages Documentation
🌐 Gemini Format Google Gemini Documentation
🔧 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


🚢 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
PYROSCOPE_URL Adresse du serveur Pyroscope -
PYROSCOPE_APP_NAME Nom de l'application Pyroscope new-api
PYROSCOPE_BASIC_AUTH_USER Utilisateur Basic Auth Pyroscope -
PYROSCOPE_BASIC_AUTH_PASSWORD Mot de passe Basic Auth Pyroscope -
PYROSCOPE_MUTEX_RATE Taux d'échantillonnage mutex Pyroscope 5
PYROSCOPE_BLOCK_RATE Taux d'échantillonnage block Pyroscope 5
HOSTNAME Nom d'hôte tagué pour Pyroscope new-api

📖 Configuration complète: Documentation des variables d'environnement

🔧 Méthodes de déploiement

Méthode 1: Docker Compose (recommandé)
# 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:

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

💡 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)
  2. Recherchez New-API dans le magasin d'applications
  3. Installation en un clic

📖 Tutoriel avec des images

⚠️ 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 Base du projet original
Midjourney-Proxy Prise en charge de l'interface Midjourney

Outils d'accompagnement

Projet Description
neko-api-key-tool Outil de recherche de quota d'utilisation avec une clé
new-api-horizon Version optimisée haute performance de New API

💬 Aide et support

📖 Ressources de documentation

Ressource Lien
📘 FAQ FAQ
💬 Interaction avec la communauté Canaux de communication
🐛 Commentaires sur les problèmes Commentaires sur les problèmes
📚 Documentation complète Documentation officielle

🤝 Guide de contribution

Bienvenue à toutes les formes de contribution!

  • 🐛 Signaler des bogues
  • 💡 Proposer de nouvelles fonctionnalités
  • 📝 Améliorer la documentation
  • 🔧 Soumettre du code

📜 Licence

Ce projet est sous licence GNU Affero General Public License v3.0 (AGPLv3).

Il s'agit d'un projet open-source développé sur la base de One API (licence MIT).

Si les politiques de votre organisation ne permettent pas l'utilisation de logiciels sous licence AGPLv3, ou si vous souhaitez éviter les obligations open-source de l'AGPLv3, veuillez nous contacter à : support@quantumnous.com


🌟 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/en/docs)** • **[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