註冊並分享邀請連結,可獲得影片播放與邀請獎勵。

Kimberly
@king1818888
现在|澳洲 AI-Native Builder|和 @kosxai 一起做产品 赛道|AI 产品|跨境电商|金融|互联网毒舌段子手 在做|FlareMo 笔记|Video Script 逐字稿 下一步|Emotional OS|银发数字人
加入 December 2024
739 正在關注    11.1K 粉絲
前两周面了一家硅谷背景的 AI 基础设施团队,考官抓着大模型结构化输出的容错刨根问底。 面试官发难:考官指着屏幕上的 Python 代码:“我们需要大模型提取实体并返回纯 JSON 供后端解析,怎么彻底防止它偶尔在开头输出一段‘好的,这是为您生成的回复:’或者把 Markdown 反引号带进去?” 我心里怎么想的:我强忍住想笑的冲动:“这不就是我们日常调教大模型的基本功吗?恐吓它、教育它、多给两个 Few-shot 样例,它不就老实了?!” 我嘴上怎么答的:“呃,在 Prompt 里加粗强调:‘【死命令】:只许输出纯 JSON,严禁输出任何多余废话或 Markdown 符号,违者扣分!’” 面试官的反应:考官推了推眼镜,眼神里满是看破红尘的无奈:“不管你怎么用感叹号恐吓大模型,在概率采样的世界里,它总有千分之一的几率抽风,你的后端解析就会在半夜报 500。” 后来进了大厂跟组里负责推理引擎的 Tech Lead 聊起这事,才发现我当时有多天真。靠自然语言 Prompt 永远无法保证 100% 确定性。大厂的做法是走底层约束解码(Grammar-Guided Decoding),比如通过 Outlines、Jsonformer 或者模型官方原生的 Structured Outputs API,直接在 Logits 采样阶段把所有非合规字符的概率强行置零!
顯示更多
0
20
81
7
轉發到社區