Skip to main content

openai-router

Project description

🚀 OpenAI Router

轻量级、持久化、零配置的 OpenAI API 统一网关
一键聚合 vLLM、SGLang、lmdeploy、Ollama…


  • 将不同推理框架(vLLM、SGLang、lmdeploy、Ollama… )、不同Host、不同PortOpenAI API接口统一聚合到同一个base_url上,实现更便捷的模型调用。

✨ Features

Feature Description
🌍 统一入口 /chat/completions/embeddings/images/generations… 全部转发
🧩 多后端 vLLM、SGLang、lmdeploy、Ollama… 任意组合
💾 持久化 SQLite + SQLModel 零配置存储路由
⚡ 负载均衡 可配置多个同名模型,自动进行轮询式负载均衡(暂不支持异常踢出机制)
🎨 Web UI Gradio 即用的管理面板
🔍 兼容 OpenAI SDK / LangChain / AutoGen / LlamaIndex / CrewAI …等 一行代码都不用改

📦 Quick Start

Step-1:安装

PyPI(推荐)

uv add openai-router -U

或者

pip install openai-router -U

Step-2:启动

openai-router --host localhost --port 8000 

浏览器自动打开
📍 UI:http://localhost:8000
📍 API 文档:http://localhost:8000/docs

Step-3:添加后端样例

在 Web UI 「添加 / 更新」填入:

  • 模型名:gpt-4
  • 后端 URL:http://localhost:8082/v1
  • 后端 API 密钥 (可选) : 如果提供,路由器将使用此密钥覆盖原始请求中的 Authorization 标头。如果留空,将透传原始请求的密钥。

🔧 API Usage

像官方 OpenAI SDK一样调用

from openai import OpenAI 
client = OpenAI(
      base_url="http://localhost:8000/v1",
      api_key="sk-dummy"
)
resp = client.chat.completions.create(
      model="gpt-4",
      messages=[{"role":"user","content":"hello"}],
      stream=True 
)
for chunk in resp:
      print(chunk.choices[0].delta.content or "", end="")

cURL

curl http://localhost:8000/v1/chat/completions \
     -H "Content-Type: application/json" \
     -d '{"model":"gpt-4","messages":[{"role":"user","content":"hi"}],"stream":true}'

🗂️ Endpoints

Method Path Description
GET / Gradio Admin UI
GET /docs OpenAPI Swagger
GET /v1/models List available models
POST /v1/responses Responses API
POST /v1/chat/completions Chat completion
POST /v1/embeddings Text embeddings
POST /v1/images/generations DALL·E style
POST /v1/audio/transcriptions Whisper
All OpenAI endpoints supported

⚙️ Configuration

CLI Options

openai-router --help 
Flag Default Description
--host localhost Bind address
--port 8000 Bind port

🏗️ Architecture

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openai_router-0.1.3.tar.gz (13.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openai_router-0.1.3-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file openai_router-0.1.3.tar.gz.

File metadata

  • Download URL: openai_router-0.1.3.tar.gz
  • Upload date:
  • Size: 13.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for openai_router-0.1.3.tar.gz
Algorithm Hash digest
SHA256 1b08e125f2147a61d24aa148fb71ed72df9c57b171ab5ca7714199074294ead5
MD5 fefb73a32f1d4ce79b6fc9128f3b13c2
BLAKE2b-256 2a1df55bc1bdc7c66424dbb93bf035fdacf99721ccb900487ce37e7f4d4bd146

See more details on using hashes here.

Provenance

The following attestation bundles were made for openai_router-0.1.3.tar.gz:

Publisher: pypi.yml on shell-nlp/openai_router

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file openai_router-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: openai_router-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for openai_router-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b0c550027ff2e48de284aa48ab3758dc6add6811841ae0c877015964f75d8299
MD5 a5857967813a012999cad77e461fe959
BLAKE2b-256 e062e1514e9618a1e527589e689dd755f1e851eac773392ccce60830ca7b922f

See more details on using hashes here.

Provenance

The following attestation bundles were made for openai_router-0.1.3-py3-none-any.whl:

Publisher: pypi.yml on shell-nlp/openai_router

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page