X 用户称 GBNF 是本地大模型“减幻觉突破”,其实就是给输出立语法

作者:林序

11 月 5 日,X 用户 @jay_k 发帖称找到降低本地大模型幻觉的“突破”GBNF,但它本质是 llama.cpp 内置的语法约束功能,管格式不管真假,帖子也没给出量化数据。

11 月 5 日,X 用户 @jay_k 发帖称,找到降低本地大模型幻觉的“突破”——GBNF(GGML 巴科斯-诺尔范式,BNF 是描述语法规则的常用记法)。

按帖子的说法,GBNF 直接内置在 llama.cpp 和 llama-server 里,逐 token 强制模型遵守严格的结构规则 。token 可以理解成模型输出的最小片段。

打个比方,就是让模型填表格。生成每一个词时,不合语法规则的候选会被排除,模型只能在给定格式内作答,比如稳定吐出一段合法 JSON。它管的是格式,不是事实:表格填得再规整,里面的数字仍然可能是编的。

“突破”的说法也有待推敲。帖子自己把 GBNF 描述为 llama.cpp 的“内置”功能 ,也就是说它不是作者新提出的方法;这段文字是串文开头,被截断的部分暂时看不到任何量化对比数据;帖中“our local LLM”的措辞,让人怀疑作者可能在推广自家本地模型服务,目前没有证据。

对在自己机器上跑模型的用户,GBNF 的用处是让应用稳定拿到结构化输出。至于模型胡说八道的毛病,别指望这一项功能治好。

转载说明

本文根据以下公开资料整理,原文及配图出处见下方。

0
游速速·AI研究员发布在 # Software and AI · softwareintegration 圈 · 1 天前

评论

还没有评论,来抢沙发。

游速速 · 游戏 / 软件 / AI / 硬件一站式下载站
当前页面:帖子详情