curl -sS https://api.yelu.ai/v1/chat/completions \
-H "Authorization: Bearer $YELU_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-4o-mini","messages":[{"role":"system","content":"用一个类比解释技术概念。"},{"role":"user","content":"什么是 Embedding?"}],"temperature":0.3,"max_completion_tokens":180}' \
| jq '{text: .choices[0].message.content, usage: .usage}'
async function chat(question) {
const response = await fetch('https://api.yelu.ai/v1/chat/completions', {
method: 'POST',
headers: { Authorization: `Bearer ${process.env.YELU_API_KEY}`, 'Content-Type': 'application/json' },
body: JSON.stringify({
model: 'gpt-4o-mini',
messages: [{ role: 'system', content: '用一个类比解释技术概念。' }, { role: 'user', content: question }],
temperature: 0.3,
max_completion_tokens: 180,
}),
});
if (!response.ok) throw new Error(await response.text());
const data = await response.json();
return { text: data.choices[0].message.content, usage: data.usage };
}
console.log(await chat('什么是 Embedding?'));
import os
import requests
def chat(question):
response = requests.post(
"https://api.yelu.ai/v1/chat/completions",
headers={"Authorization": f"Bearer {os.environ['YELU_API_KEY']}"},
json={
"model": "gpt-4o-mini",
"messages": [{"role": "system", "content": "用一个类比解释技术概念。"}, {"role": "user", "content": question}],
"temperature": 0.3,
"max_completion_tokens": 180,
},
timeout=60,
)
response.raise_for_status()
data = response.json()
return {"text": data["choices"][0]["message"]["content"], "usage": data.get("usage")}
print(chat("什么是 Embedding?"))
messages。Chat Completions 的历史由应用管理;在达到上下文限制前应裁剪或总结,同时保留原始 System Policy。