让 AI SDK 明确走 Chat Provider

2026-10-23 · 本次实际执行记录 · 非产品原生界面

Vercel AI SDK 原生 generateText → OpenAI Compatible Chat Provider → 本地 Ollama。

运行结果与观察

运行结果:{"text": "8 + 9 = 17", "finishReason": "stop", "usage": {"inputTokens": 25, "inputTokenDetails": {"noCacheTokens": 24, "cacheReadTokens": 1}, "outputTokens": 13, "outputTokenDetails": {"textTokens": 13, "reasoningTokens": 0}, "totalTokens": 38, "raw": {"prompt_tokens": 25, "completion_tokens": 13, "total_tokens": 38, "prompt_tokens_details": {"cached_tokens": 1}}}, "warnings": [], "response": {"id": "chatcmpl-474", "timestamp": "2026-10-23T15:05:57.000Z", "modelId": "tutorial-qwen3-proof:latest", "headers": {"content-length": "356", "content-type": "application/json", "date": "Fri, 23 Oct 2026 15:05:57 GMT"}, "messages": [{"role": "assistant", "content": [{"type": "text", "text": "8 + 9 = 17"}]}]}}

最终请求:[{"method": "POST", "path": "/v1/chat/completions", "status": 200, "elapsedMs": 1951}]

本API组真实发出2次非流式Chat探针,分别gemini-2.5-flash与gemini-2.5-flash-lite,均HTTP429(当前测试Key分组上游饱和)。以下共享该组探针,绝非本页另发调用;随后SSE、Vercel、n8n、图片请求均未发送。

首轮严格整数格式失败并有Provider弃用警告;最终按官方camelCase providerOptions修复警告,仍保留“8 + 9 = 17”,仅连接范围验收通过。

具体操作

按同一锁文件安装依赖练习包记录实际运行的 ai 7.0.130 和 @ai-sdk/openai-compatible 3.0.65;不要混用不同Provider代际。
cd sdk && npm ci
明确创建兼容 Chat 模型createOpenAICompatible 的baseURL指向本机/v1;本地占位Key不会写入网页。使用 provider.chatModel,不依赖其他Provider默认协议。
执行短任务且关闭重试本次问题8+9,要求仅数字;把完整输出、结束状态和usage保存,不只打印第一段文字。
node run.mjs ai-sdk ../vercel-ai-sdk-tokenba-api/new-result.json
按真实结果验收最终路径为/v1/chat/completions,真实输出“8 + 9 = 17”并完整stop;仅数字断言未通过。修复Provider弃用配置后,连接验收仅检查非空正文与完整结束,不宣称格式问题已修复。
接回网关前检查本平台配置更换为对应服务签发的Key与准确模型ID;OpenRouter专用Provider另按官方说明安装,不能把本地演练当其接入成功。
范围与限制

本批获授权使用既有测试Key,OpenAI SDK两次最小探针均HTTP429:当前测试Key分组上游饱和,随后停止。不能据此声称全站不可用;本地成功不能当作apizt上游或实扣成功。

本次只执行generateText非流式;未验证该Provider的图片、语音、OpenRouter或浏览器前端流式部署。