文档 / 示例 / vLLM
vLLM 集成
面向 OpenAI 兼容后端的 vLLM 应用和代理配置,只需修改一行配置即可指向 RelayRouter。这让你无需改动应用代码,就能在本地推理与托管模型之间切换。
#OpenAI 兼容端点
RelayRouter 提供与 OpenAI 完全一致的 API 结构,因此任何接受自定义 base_url 的工具或框架都可以开箱即用。
| 配置项 | 取值 |
|---|---|
Base URL | https://relayrouter.io/v1 |
API Key | 你的 RelayRouter API 密钥 |
Model name | 任意受支持的模型 ID,例如 deepseek-v4-flash |
#将 vLLM 客户端指向 RelayRouter
如果你的客户端原本面向本地的 vllm serve 实例,而你希望改为通过 RelayRouter 进行路由:
terminalbash
# 将你的 vLLM 客户端指向 RelayRouter,而非 localhost
export OPENAI_API_BASE="https://relayrouter.io/v1"
export OPENAI_API_KEY="$RELAYROUTER_API_KEY"#Python(openai SDK)
vllm_client.pypython
from openai import OpenAI
import os
# 与任何 vLLM / OpenAI 应用的代码相同,只需修改 base_url
client = OpenAI(
api_key=os.environ["RELAYROUTER_API_KEY"],
base_url="https://relayrouter.io/v1",
)
response = client.chat.completions.create(
model="deepseek-v4-flash", # 或任意其他受支持的模型
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Summarise the theory of relativity in 3 bullet points."},
],
temperature=0.7,
max_tokens=512,
)
print(response.choices[0].message.content)#LiteLLM 代理
LiteLLM 通过 openai/ 前缀和自定义的 api_base 支持 RelayRouter:
litellm_config.yamlyaml
model_list:
- model_name: deepseek-v4-flash
litellm_params:
model: openai/deepseek-v4-flash
api_base: https://relayrouter.io/v1
api_key: os.environ/RELAYROUTER_API_KEY#LangChain
langchain_example.pypython
from langchain_openai import ChatOpenAI
import os
llm = ChatOpenAI(
model="deepseek-v4-flash",
openai_api_key=os.environ["RELAYROUTER_API_KEY"],
openai_api_base="https://relayrouter.io/v1",
)
result = llm.invoke("Explain transformer architecture in 2 paragraphs.")
print(result.content)#流式输出
stream.pypython
stream = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[{"role": "user", "content": "Write a haiku about the ocean."}],
stream=True,
)
for chunk in stream:
content = chunk.choices[0].delta.content
if content:
print(content, end="", flush=True)所有流式输出均通过 Server-Sent Events (SSE) 传输,与 OpenAI 和 vLLM 使用相同的协议,因此现有的 SSE 消费端无需任何改动即可使用。