首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

LLM 是如何“思考”的?又是如何让AI快速响应下一步的?

• Hi ~ 我是 Immerse

• 本文首发于【沉浸式趣谈】,我的个人博客https://yaolifeng.com也同步更新。

• 转载请在文章开头注明出处和版权信息。

• 如果本文对您有所帮助,请点赞评论转发,支持一下,谢谢!

基上篇文章说道在五一期间看的 Google Prompt Enginner 白皮书,自己对 LLM 的工作原理有了更深的理解,这篇文章也是结合自己的理解做一个小结

这篇文章想聊聊 LLM 是咋“思考”的?它使用了那些核心策略让 AI 快速响应下一步的?

在白皮书中提到,在 LLM 中,使用了贪婪解码(Greedy Decoding)的方式,而这种方式是一种最简单、最直接的文本生成策略

个人觉得简单来说就是:它的每一步都会选择“当前最好”的词,不管后面会不会翻车,有没有更适合的词。也就是“走一步看一步,绝不回头”,它的主要特点就是快,让 LLM 能快速获取下一个词,从而更快的响应。

但问题在于它会错过更适合的“词”组合

它的主要核心思想就是:在生成文本序列的每一步,选择当前概率最高的词元,然后将这个词元添加到已生成的序列中,作为下一步要预测的上下文内容

它的大体工作流程:

1. 开始:比如你输入:“今儿个天气真...”

2. 查找:LLM 就会拿到你这句话,在它那个巨大的概率词库寻找

3. 确定当前选择的词:看哪个词概率最高,比如找到了“不错”,且有 80% 的概率,然后就会选择这个词

4. 拼接:然后把刚才选择的“不错”这个词你的那句话后面,就成了:“今儿个天气真不错”。

5. 循环往复,直到“词穷”:然后 LLM 会继续用 “今儿个天气真不错” 这句话,再去查找下一个词是啥, 循环往复

它的大体的工作流程:

大体的工作流程

举个例子:

假设你要让 AI 生成一个句子:“我想吃__”

• 第一步,它在词汇表中找到了 “苹果” 这两个字概率最高(比如 80%),直接选择“苹果”,组成了“我想吃苹果”

• 第二步,选择“苹果”后,它可能觉得“派”概率最高(比如 70%),现在就组合成了 “我想吃苹果派” 这句话

如图

这里 LLM 每一步都选了“当下最好(也是概率最高)”的词,最终的结果就成功了 “苹果派”。

但是这句话并不通顺。我觉得 “我想吃火锅” 好像更合理一点。

所以贪婪解码只管眼前,打死都不回头

它的优点:

简单高效:每一步中只会选择当下概率最高的词,从而提升响应速度。

缺点:

容易短视:局部最优 ≠ 全局最优,这就会可能导致重复、不合逻辑的结果产生。(比如会生成“好的好的好的……”这种循环)

虽然贪婪解码简单高效,但它牺牲了结果的流畅性和多样性,因为它不会考虑长远的可能性

但 LLM 并不只是使用贪婪解码,直接就会返回对应的结果。

在实际应用中,它还采用了其他更复杂的解码策略,比如Top-K 采样Top-P等等限制。这些规则综合起来就能让 LLM 生成的结果更加自然、更多样化

其他好文推荐

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OBUv9W3jHyawzOquGzIRNWdA0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券