如何让 GPT 输出稳定的 JSON 结构是一个常见的需求,现在的话有几种稳定的方案:
- Function calling,本质上也是让 GPT 返回一个 JSON 结构,可以利用这种特性生成。
- JSON Mode,这是 GPT-4 最新的特性。
但 Function calling 和 JSON mode 都得做一些特殊配置,要想直接简单使用 ChatGPT 让稳定输出 JSON,一种巧妙的方式是利用 TypeScript。
假设我有这么一段信息:
我的称呼是吴楷鹏,可以叫我大帅哥,出生于香港回归的那一年,生日是 3 月 13 号,喜欢上班
我希望提取其中用户名、性别、出生日期和个人介绍,最后结果输出要求的 JSON 格式,在提示词中可以这样设定,使用 interface 这样的 TypeScript 语法限定输出的 JSON 对象:
输出结构化 JSON 对象,符合下面 TypeScript:
interface UserInfo {
nickname?: string;
gender?: 'male' | 'female';
dataOfBirth?: string;
bio?: string;
}
TypeScript 比较灵活,普通变量 string、number、boolean 和联合类型都能用上,并且直观、节省 token。
可以加一个输出例子(few-shot),让 JSON 输出更稳定:
这是例子:const userInfo = {
"nickname":"董小姐",
"gender": "female",<

文章讲述了如何使用TypeScript和GPT生成稳定的JSON用户信息,包括示例和提取方法。
最低0.47元/天 解锁文章
378

被折叠的 条评论
为什么被折叠?



