QuantumNous / new-api
A unified AI model hub for aggregation & distribution. It supports cross-converting various LLMs into OpenAI-compatible, Claude-compatible, or Gemini-compatible formats. A centralized gateway for personal and enterprise model management. ๐ฅ
AI Architecture Analysis
This repository is indexed by RepoMind. By analyzing QuantumNous/new-api in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Summary (README)
Preview
New API
๐ฅ Next-Generation LLM Gateway and AI Asset Management System
<p align="center"> <a href="./README.zh_CN.md">็ฎไฝไธญๆ</a> | <a href="./README.zh_TW.md">็น้ซไธญๆ</a> | <strong>English</strong> | <a href="./README.fr.md">Franรงais</a> | <a href="./README.ja.md">ๆฅๆฌ่ช</a> </p> <p align="center"> <a href="https://raw.githubusercontent.com/Calcium-Ion/new-api/main/LICENSE"> <img src="https://img.shields.io/github/license/Calcium-Ion/new-api?color=brightgreen" alt="license"> </a><!-- --><a href="https://github.com/Calcium-Ion/new-api/releases/latest"> <img src="https://img.shields.io/github/v/release/Calcium-Ion/new-api?color=brightgreen&include_prereleases" alt="release"> </a><!-- --><a href="https://hub.docker.com/r/CalciumIon/new-api"> <img src="https://img.shields.io/badge/docker-dockerHub-blue" alt="docker"> </a><!-- --><a href="https://goreportcard.com/report/github.com/Calcium-Ion/new-api"> <img src="https://goreportcard.com/badge/github.com/Calcium-Ion/new-api" alt="GoReportCard"> </a> </p> <p align="center"> <a href="https://trendshift.io/repositories/20180" target="_blank"> <img src="https://trendshift.io/api/badge/repositories/20180" alt="QuantumNous%2Fnew-api | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/> </a> <br> <a href="https://hellogithub.com/repository/QuantumNous/new-api" target="_blank"> <img src="https://api.hellogithub.com/v1/widgets/recommend.svg?rid=539ac4217e69431684ad4a0bab768811&claim_uid=tbFPfKIDHpc4TzR" alt="Featured๏ฝHelloGitHub" style="width: 250px; height: 54px;" width="250" height="54" /> </a><!-- --><a href="https://www.producthunt.com/products/new-api/launches/new-api?embed=true&utm_source=badge-featured&utm_medium=badge&utm_campaign=badge-new-api" target="_blank" rel="noopener noreferrer"> <img src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=1047693&theme=light&t=1769577875005" alt="New API - All-in-one AI asset management gateway. | Product Hunt" style="width: 250px; height: 54px;" width="250" height="54" /> </a> </p> <p align="center"> <a href="#-quick-start">Quick Start</a> โข <a href="#-key-features">Key Features</a> โข <a href="#-deployment">Deployment</a> โข <a href="#-documentation">Documentation</a> โข <a href="#-help-support">Help</a> </p> </div>๐ Project Description
[!IMPORTANT]
- This project is for personal learning purposes only, with no guarantee of stability or technical support
- Users must comply with OpenAI's Terms of Use and applicable laws and regulations, and must not use it for illegal purposes
- According to the ใInterim Measures for the Management of Generative Artificial Intelligence Servicesใ, please do not provide any unregistered generative AI services to the public in China.
๐ค Trusted Partners
<p align="center"> <em>No particular order</em> </p> <p align="center"> <a href="https://www.cherry-ai.com/" target="_blank"> <img src="./docs/images/cherry-studio.png" alt="Cherry Studio" height="80" /> </a><!-- --><a href="https://github.com/iOfficeAI/AionUi/" target="_blank"> <img src="./docs/images/aionui.png" alt="Aion UI" height="80" /> </a><!-- --><a href="https://bda.pku.edu.cn/" target="_blank"> <img src="./docs/images/pku.png" alt="Peking University" height="80" /> </a><!-- --><a href="https://www.compshare.cn/?ytag=GPU_yy_gh_newapi" target="_blank"> <img src="./docs/images/ucloud.png" alt="UCloud" height="80" /> </a><!-- --><a href="https://www.aliyun.com/" target="_blank"> <img src="./docs/images/aliyun.png" alt="Alibaba Cloud" height="80" /> </a><!-- --><a href="https://io.net/" target="_blank"> <img src="./docs/images/io-net.png" alt="IO.NET" height="80" /> </a> </p>๐ Special Thanks
<p align="center"> <a href="https://www.jetbrains.com/?from=new-api" target="_blank"> <img src="https://resources.jetbrains.com/storage/products/company/brand/logos/jb_beam.png" alt="JetBrains Logo" width="120" /> </a> </p> <p align="center"> <strong>Thanks to <a href="https://www.jetbrains.com/?from=new-api">JetBrains</a> for providing free open-source development license for this project</strong> </p>๐ Quick Start
Using Docker Compose (Recommended)
# Clone the project
git clone https://github.com/QuantumNous/new-api.git
cd new-api
# Edit docker-compose.yml configuration
nano docker-compose.yml
# Start the service
docker-compose up -d
<details>
<summary><strong>Using Docker Commands</strong></summary>
# Pull the latest image
docker pull calciumion/new-api:latest
# Using SQLite (default)
docker run --name new-api -d --restart always \
-p 3000:3000 \
-e TZ=Asia/Shanghai \
-v ./data:/data \
calciumion/new-api:latest
# Using 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
</details>๐ก Tip:
-v ./data:/datawill save data in thedatafolder of the current directory, you can also change it to an absolute path like-v /your/custom/path:/data
๐ After deployment is complete, visit http://localhost:3000 to start using!
๐ For more deployment methods, please refer to Deployment Guide
๐ Documentation
<div align="center">๐ Official Documentation | 
</div>
Quick Navigation:
| Category | Link |
|---|---|
| ๐ Deployment Guide | Installation Documentation |
| โ๏ธ Environment Configuration | Environment Variables |
| ๐ก API Documentation | API Documentation |
| โ FAQ | FAQ |
| ๐ฌ Community Interaction | Communication Channels |
โจ Key Features
For detailed features, please refer to Features Introduction
๐จ Core Functions
| Feature | Description |
|---|---|
| ๐จ New UI | Modern user interface design |
| ๐ Multi-language | Supports Simplified Chinese, Traditional Chinese, English, French, Japanese |
| ๐ Data Compatibility | Fully compatible with the original One API database |
| ๐ Data Dashboard | Visual console and statistical analysis |
| ๐ Permission Management | Token grouping, model restrictions, user management |
๐ฐ Payment and Billing
- โ Online recharge (EPay, Stripe)
- โ Pay-per-use model pricing
- โ Cache billing support (OpenAI, Azure, DeepSeek, Claude, Qwen and all supported models)
- โ Flexible billing policy configuration
๐ Authorization and Security
- ๐ Discord authorization login
- ๐ค LinuxDO authorization login
- ๐ฑ Telegram authorization login
- ๐ OIDC unified authentication
- ๐ Key quota query usage (with neko-api-key-tool)
๐ Advanced Features
API Format Support:
- โก OpenAI Responses
- โก OpenAI Realtime API (including Azure)
- โก Claude Messages
- โก Google Gemini
- ๐ Rerank Models (Cohere, Jina)
Intelligent Routing:
- โ๏ธ Channel weighted random
- ๐ Automatic retry on failure
- ๐ฆ User-level model rate limiting
Format Conversion:
- ๐ OpenAI Compatible โ Claude Messages
- ๐ OpenAI Compatible โ Google Gemini
- ๐ Google Gemini โ OpenAI Compatible - Text only, function calling not supported yet
- ๐ง OpenAI Compatible โ OpenAI Responses - In development
- ๐ Thinking-to-content functionality
Reasoning Effort Support:
<details> <summary>View detailed configuration</summary>OpenAI series models:
o3-mini-high- High reasoning efforto3-mini-medium- Medium reasoning efforto3-mini-low- Low reasoning effortgpt-5-high- High reasoning effortgpt-5-medium- Medium reasoning effortgpt-5-low- Low reasoning effort
Claude thinking models:
claude-3-7-sonnet-20250219-thinking- Enable thinking mode
Google Gemini series models:
gemini-2.5-flash-thinking- Enable thinking modegemini-2.5-flash-nothinking- Disable thinking modegemini-2.5-pro-thinking- Enable thinking modegemini-2.5-pro-thinking-128- Enable thinking mode with thinking budget of 128 tokens- You can also append
-low,-medium, or-highto any Gemini model name to request the corresponding reasoning effort (no extra thinking-budget suffix needed).
๐ค Model Support
For details, please refer to API Documentation - Relay Interface
| Model Type | Description | Documentation |
|---|---|---|
| ๐ค OpenAI-Compatible | OpenAI compatible models | Documentation |
| ๐ค OpenAI Responses | OpenAI Responses format | Documentation |
| ๐จ Midjourney-Proxy | Midjourney-Proxy(Plus) | Documentation |
| ๐ต Suno-API | Suno API | Documentation |
| ๐ Rerank | Cohere, Jina | Documentation |
| ๐ฌ Claude | Messages format | Documentation |
| ๐ Gemini | Google Gemini format | Documentation |
| ๐ง Dify | ChatFlow mode | - |
| ๐ฏ Custom | Supports complete call address | - |
๐ก Supported Interfaces
<details> <summary>View complete interface list</summary>- Chat Interface (Chat Completions)
- Response Interface (Responses)
- Image Interface (Image)
- Audio Interface (Audio)
- Video Interface (Video)
- Embedding Interface (Embeddings)
- Rerank Interface (Rerank)
- Realtime Conversation (Realtime)
- Claude Chat
- Google Gemini Chat
๐ข Deployment
[!TIP] Latest Docker image:
calciumion/new-api:latest
๐ Deployment Requirements
| Component | Requirement |
|---|---|
| Local database | SQLite (Docker must mount /data directory) |
| Remote database | MySQL โฅ 5.7.8 or PostgreSQL โฅ 9.6 |
| Container engine | Docker / Docker Compose |
โ๏ธ Environment Variable Configuration
<details> <summary>Common environment variable configuration</summary>| Variable Name | Description | Default Value |
|---|---|---|
SESSION_SECRET | Session secret (required for multi-machine deployment) | - |
CRYPTO_SECRET | Encryption secret (required for Redis) | - |
SQL_DSN | Database connection string | - |
REDIS_CONN_STRING | Redis connection string | - |
STREAMING_TIMEOUT | Streaming timeout (seconds) | 300 |
STREAM_SCANNER_MAX_BUFFER_MB | Max per-line buffer (MB) for the stream scanner; increase when upstream sends huge image/base64 payloads | 64 |
MAX_REQUEST_BODY_MB | Max request body size (MB, counted after decompression; prevents huge requests/zip bombs from exhausting memory). Exceeding it returns 413 | 32 |
AZURE_DEFAULT_API_VERSION | Azure API version | 2025-04-01-preview |
ERROR_LOG_ENABLED | Error log switch | false |
PYROSCOPE_URL | Pyroscope server address | - |
PYROSCOPE_APP_NAME | Pyroscope application name | new-api |
PYROSCOPE_BASIC_AUTH_USER | Pyroscope basic auth user | - |
PYROSCOPE_BASIC_AUTH_PASSWORD | Pyroscope basic auth password | - |
PYROSCOPE_MUTEX_RATE | Pyroscope mutex sampling rate | 5 |
PYROSCOPE_BLOCK_RATE | Pyroscope block sampling rate | 5 |
HOSTNAME | Hostname tag for Pyroscope | new-api |
๐ Complete configuration: Environment Variables Documentation
</details>๐ง Deployment Methods
<details> <summary><strong>Method 1: Docker Compose (Recommended)</strong></summary># Clone the project
git clone https://github.com/QuantumNous/new-api.git
cd new-api
# Edit configuration
nano docker-compose.yml
# Start service
docker-compose up -d
</details>
<details>
<summary><strong>Method 2: Docker Commands</strong></summary>
Using SQLite:
docker run --name new-api -d --restart always \
-p 3000:3000 \
-e TZ=Asia/Shanghai \
-v ./data:/data \
calciumion/new-api:latest
Using 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
</details> <details> <summary><strong>Method 3: BaoTa Panel</strong></summary>๐ก Path explanation:
./data:/data- Relative path, data saved in the data folder of the current directory- You can also use absolute path, e.g.:
/your/custom/path:/data
- Install BaoTa Panel (โฅ 9.2.0 version)
- Search for New-API in the application store
- One-click installation
๐ Tutorial with images
</details>โ ๏ธ Multi-machine Deployment Considerations
[!WARNING]
- Must set
SESSION_SECRET- Otherwise login status inconsistent- Shared Redis must set
CRYPTO_SECRET- Otherwise data cannot be decrypted
๐ Channel Retry and Cache
Retry configuration: Settings โ Operation Settings โ General Settings โ Failure Retry Count
Cache configuration:
REDIS_CONN_STRING: Redis cache (recommended)MEMORY_CACHE_ENABLED: Memory cache
๐ Related Projects
Upstream Projects
| Project | Description |
|---|---|
| One API | Original project base |
| Midjourney-Proxy | Midjourney interface support |
Supporting Tools
| Project | Description |
|---|---|
| neko-api-key-tool | Key quota query tool |
| new-api-horizon | New API high-performance optimized version |
๐ฌ Help Support
๐ Documentation Resources
| Resource | Link |
|---|---|
| ๐ FAQ | FAQ |
| ๐ฌ Community Interaction | Communication Channels |
| ๐ Issue Feedback | Issue Feedback |
| ๐ Complete Documentation | Official Documentation |
๐ค Contribution Guide
Welcome all forms of contribution!
- ๐ Report Bugs
- ๐ก Propose New Features
- ๐ Improve Documentation
- ๐ง Submit Code
๐ License
This project is licensed under the GNU Affero General Public License v3.0 (AGPLv3).
This is an open-source project developed based on One API (MIT License).
If your organization's policies do not permit the use of AGPLv3-licensed software, or if you wish to avoid the open-source obligations of AGPLv3, please contact us at: support@quantumnous.com
๐ Star History
<div align="center"> </div><div align="center">
๐ Thank you for using New API
If this project is helpful to you, welcome to give us a โญ๏ธ Star๏ผ
Official Documentation โข Issue Feedback โข Latest Release
<sub>Built with โค๏ธ by QuantumNous</sub>
</div>