Workers AI supports OpenAI compatible endpoints for text generation (/v1/chat/completions
) and text embedding models (/v1/embeddings
). This allows you to use the same code as you would for your OpenAI commands, but swap in Workers AI easily.
通常,Workers AI 要求您在 cURL 端点或 env.AI.run
函数中指定模型名称。
使用 OpenAI 兼容端点,您可以利用 openai-node sdk ↗ 来调用 Workers AI。这允许您通过简单地更改基本 URL 和模型名称来使用 Workers AI。
import OpenAI from "openai";
const openai = new OpenAI({ apiKey: env.CLOUDFLARE_API_KEY, baseURL: `https://api.cloudflare.com/client/v4/accounts/${env.CLOUDFLARE_ACCOUNT_ID}/ai/v1`,});
const chatCompletion = await openai.chat.completions.create({ messages: [{ role: "user", content: "发出一些机器人噪音" }], model: "@cf/meta/llama-3.1-8b-instruct",});
const embeddings = await openai.embeddings.create({ model: "@cf/baai/bge-large-en-v1.5", input: "我喜欢抹茶",});
curl --request POST \ --url https://api.cloudflare.com/client/v4/accounts/{account_id}/ai/v1/chat/completions \ --header "Authorization: Bearer {api_token}" \ --header "Content-Type: application/json" \ --data ' { "model": "@cf/meta/llama-3.1-8b-instruct", "messages": [ { "role": "user", "content": "如何用三个简短的步骤制作一个木勺?请给出尽可能简短的回答" } ] }'
这些端点也与 AI 网关兼容。
- @2025 Cloudflare Ubitools
- Cf Repo