AI

AI

AI 是可选服务。只有生成时选择了 AI 适配器,项目里才会保留 src/services/ai.ts 和对应实现。

适配器

选择配置说明
openai-compatibleAI_PROVIDER 和对应 API Key/模型支持 OpenAI、DeepSeek、MiMo;可选 Cloudflare AI Gateway
anthropicANTHROPIC_API_KEYANTHROPIC_MODEL直接调用 Anthropic Messages API
workers-aiWORKERS_AI_MODELAI Binding只用于 Cloudflare Workers

OpenAI Compatible 默认 AI_PROVIDER=openai。切换时设置 deepseekmimo,并 填写对应的 DEEPSEEK_*MIMO_* 变量。只有 CF_AIG_BASE_URLCF_AIG_TOKEN 同时存在时才通过 AI Gateway。

调用

import { aiService } from "@/services/ai";

const result = await aiService.complete({
  messages: [{ role: "user", content: "Summarize this document" }],
  maxTokens: 800,
});

console.log(result.content);

统一接口支持文本消息、温度和最大 token。不同供应商的 JSON、工具调用和流式能力 有差异,调用前可以查看适配器的 capabilities,不要假设所有实现行为完全一致。

验证

  • 密钥只放在服务端环境变量。
  • 为模型调用设置业务级超时、重试和用量限制。
  • 对用户输入做长度限制,输出进入 HTML 前完成转义或清洗。
  • 修改适配器后运行 pnpm test:run -- src/test/adapters/ai.test.ts

本页目录