锦恢 (@LSTM-Kirigaya) 在 如何约束大模型严格输出指定内容?引导解码器 Guided Decoder 原理讲解 & 实战演示 中发帖
前言
相信大家在开发 AI Agent 的时候一定遇到过这样的情况:我希望让大模型严格只输出 yes 或者 no,这样我就可以写一个这样的程序来决定 Agent 后续的走向了:
if result == 'yes':
# 执行下一步
execute_next_step()
elif result == 'no':
# 执行退出操作
execute_exit()
当然,有时候我们还会遇到更加复杂的需求,比如,想要大模型严格按照一个规范返回 json,甚至是某种更加抽象的形式语言。比如锦恢制作的一个 i18n 翻译插件中,就希望大模型严格按照一个数据结构返回指定的 json 内容,这样,我就可以通过剩下的程序来把这部分内容同步到软件的其他地方去了。
这时候,看过锦恢前几篇教程的你,一定会兴奋地说:“这还不简单,用 prompt 大法不就解决了?” 然后...