18 · 完成核心工具与模型调用

实现从已确认商品事实到英文初稿的真实生成链路,区分浏览器请求、服务端校验、模型适配与输出审核。依据 MDN Fetch、AI SDK 和密钥文档设计超时、错误、结构化返回及幂等恢复,准备事实保留样本与可核查日志,最终交付真实与模拟路径分明的核心工具,而非只显示一段固定演示文字。

发布时间:2026-10-31

返回课程

本页为文字教程;视频与配套媒体仍以实际发布状态为准。

返回课程总览 · 返回模块

本课交付:一条真实生成链路与质量样本集

本课把演示结果换成真正的模型处理。输入是用户已经确认的商品事实,输出是可编辑英文初稿和待人工核对提示。你需要同时证明请求经过了真实服务、结果符合约定,以及失败不会让用户丢失资料或无限重复调用。

供应商与模型选择应基于你实际可使用的账户、成本和业务条件。本课不固定某个版本或报价,也不把示范架构说成已部署成品;使用 SDK 时,应按当前项目锁定版本核对官方接口。不要将服务端密钥交给浏览器。

跟做一:先定义自己的接口契约

浏览器只向你控制的服务端发送必要事实,例如名称、目标人群、能力与限制。服务端再次校验长度、字段和使用范围,再调用上游。返回中区分任务标识、生成状态、初稿和需要核对的事项,不把供应商的完整内部响应直接透传给用户。

明确什么算成功:不是字符串非空,而是初稿能够展示,结构符合契约,没有遗漏必须保留的事实,并且用户可以接管编辑。若内容无法确定,应提示确认,而不是让模型补一个看似合理的功能。这样的验收标准应先写入测试样本,再调提示。

跟做二:把密钥限制在受控边界

Cloudflare 的 Secrets 文档说明了敏感配置与普通变量的区别,并提醒不要提交本地秘密文件。Secrets | Cloudflare Workers 不论采用何种运行平台,浏览器打包资源不应包含服务端调用凭据。开发与正式环境分开,日志只记录变量名缺失,不打印实际值。

先用自己的测试输入调用,确认上游身份有效、权限与用量可查看,再接用户流程。不要把公开代码仓库里的示例凭据视为可用账户,也不要为了调试把全部请求头复制到问题讨论中。若账户尚不可用,就保留明确的开发阻塞状态,不能让演示输出继续伪装真实生成。

跟做三:封装一个窄的模型适配层

适配层接收已校验事实,组织指令,调用供应商并返回统一结构。AI SDK 的文本生成文档区分一次生成与流式生成等接口。Generating Text | AI SDK 这可以帮助理解实现选择,但不要仅因为流式看起来更快就默认使用;部分文本出现不等于任务已经完成,仍需处理中断与最终状态。

首版可先采用完整结果返回,减少解析与恢复复杂度。提示中明确只使用给定事实,未知内容列为待确认;输出长度与风格由真实任务决定。用户提供的文本应当作数据处理,不能允许它覆盖你的服务规则。适配层还需验证输出结构,对不合格结果返回可解释错误。

跟做四:处理错误与超时

MDN 的 Fetch 文档指出,HTTP 错误状态不会自动等同于 Promise 拒绝。Using the Fetch API | MDN 因此,前端和后端都要检查状态与响应类型,不能把错误页面当作生成结果。区分校验错误、认证失败、限额、上游不可用和网络中断,给用户适合当前情况的下一步。

为任务生成稳定请求标识。浏览器超时后,先查询原任务是否继续处理,不直接再次调用。取消本地等待也不必然取消上游已开始的工作,成本与结果状态需要另行核对。设置合理超时、有限重试与明确终态,避免递归重试让一次点击产生多次费用。

跟做五:检查内容而非只检查连接

准备三份自创输入:资料完整、缺少关键能力、含明确否定限制。对每份保存预期保留的事实与不允许新增的内容。人工核对输出是否把“不支持协作”改成了“适合团队”,是否改变数字,是否把尚未提供的功能写进去。模型调用返回成功不能替代这个判断。

记录测试日期、模型配置与提示版本,不保存不必要的真实用户全文。若更换模型或提示,重新跑这些样本,并保留失败结果。不要只选择最漂亮的一次输出做宣传;失败样本能够告诉你哪些边界需要界面与规则共同处理。

加练:建立一份拒绝与待确认样本

除了合格输入,再准备一份只写“这是最好的产品”的事实卡,以及一份彼此矛盾的能力描述。期望行为可以是要求补充或列出待确认,而不是生成更夸张的宣传稿。把允许输出、禁止输出与人工核对位置分别写清,不把一切问题都归类为模型不够强。

如果使用结构化结果,先验证必需字段与类型,再进入展示;字段缺失时返回可解释错误。结构正确仍不代表事实正确,所以保留人工样本检查。你可以调整提示或模型,但必须重新运行同一组边界材料比较,而不能只展示更有利的新输入。

最终交付附上一个失败样本及处理决定,说明为什么当前限制是合理的。能解释失败,比只演示一次顺利生成更接近可以维护的工具。

独立作业与验收

提交接口契约、真实调用证据、三份质量样本、超时与重复请求记录,以及前端结果核查。证据可保留脱敏请求编号、时间和状态,不提交密钥。明确哪些环节使用测试替身,哪些已经连上真实服务。

最后让一位没有参与开发的人使用自创资料完成生成、核对、编辑和复制。若结果只能在你解释后才可用,记录原因进入修复队列。本课完成的是一个可验证的生成闭环,不是承诺模型永远正确,也不是完成付费与长期保存功能。