主题
使用 OpenAI SDK
把 base_url 指向 Allen API,其余代码不用改。
Python
python
from openai import OpenAI
client = OpenAI(
base_url="https://api.allenyeahger.xyz/v1",
api_key="sk-your-key",
)
resp = client.chat.completions.create(
model="your-model-id",
messages=[{"role": "user", "content": "请只回复:接入成功"}],
)
print(resp.choices[0].message.content)流式:
python
stream = client.chat.completions.create(
model="your-model-id",
messages=[{"role": "user", "content": "写一句自我介绍"}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)Node.js
javascript
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://api.allenyeahger.xyz/v1',
apiKey: 'sk-your-key',
});
const resp = await client.chat.completions.create({
model: 'your-model-id',
messages: [{ role: 'user', content: '请只回复:接入成功' }],
});
console.log(resp.choices[0].message.content);不要硬编码密钥
python
import os
from openai import OpenAI
client = OpenAI(
base_url=os.environ.get("ALLEN_API_BASE", "https://api.allenyeahger.xyz/v1"),
api_key=os.environ.get("ALLEN_API_KEY"),
)bash
export ALLEN_API_KEY=sk-your-key列表可用模型
python
models = client.models.list()
for m in models.data:
print(m.id)常见问题
404 Not Found:base_url 重复了 /v1,去掉一个。
超时:大上下文请求耗时较长,显式设置超时:
python
client = OpenAI(
base_url="https://api.allenyeahger.xyz/v1",
api_key="sk-your-key",
timeout=120.0,
max_retries=2,
)