首页/新闻资讯/正文详情

第 1 篇:推理引擎到底在干什么(零门槛入门系列)

发布时间:2026/9/23 7:29:32 来源:云帆数科 栏目:资讯中心
第 1 篇:推理引擎到底在干什么(零门槛入门系列)
上一篇《零门槛推理引擎入门》系列 · 总纲 下一篇第 2 篇《数字在内存里怎么排队》一句话导读把大模型会说话这件事拆开看它只是一个读数字 → 算 → 挑一个词 → 接回去再来一遍的循环后面 29 篇都在给这个循环里的某一个动作补细节。关键词推理引擎、生成循环、提示词、词表、采样把大模型会说话这件事拆到最底层剩下的就是一个循环读数字、算一遍、挑一个词、接回去然后再来一遍。本篇先不看它内部有多复杂只把这个循环的四步摆清楚——后面 29 篇要做的都是给这四步里的某一步补细节。① 一句话概念推理引擎就是读数字 → 算 → 挑一个词 → 接回去的循环。② 起点一个只会照规矩办事的抄写员有个抄写员桌上放着一本很怪的字典和一张写满数字的长纸。他不懂你在说什么也不会写文章只照规矩办四件事。第一件你说一个词他去字典里查出这个词对应的编号。第二件拿着这串编号再算一遍——每算一次长纸上的内容都会变所以下一次他还得从头再来一遍其实有省事的办法——第 9 篇讲。第三件算完之后他在心里排出几个接下来最顺的候选词挑一个写下来。第四件把刚写下来的词查成编号接到那串编号的最后面然后回到第一件。他从不回头看这段话有没有道理只保证每一步都接得顺口没有灵感也没有理解只有查一查、算一算、挑一个、接上去这四步一遍一遍地转。③ 伪代码把四步写成一个循环函数 生成(提示词, 权重) - 文字: 词表 权重.词表 编号串 词表.查(提示词) # 文字 - 一串编号 当 没有遇到结束符: 候选 前向(编号串, 权重) # 算一遍得到下一个词的可能性 下一个 从候选里挑一个(候选) # 按可能性挑不是固定答案 输出(词表.反查(下一个)) 编号串.追加(下一个) # 接回去再来一遍 → 已输出的所有词上面这段循环跑起来的样子就是如图 1 所示的一圈。图 1一次生成的最小闭环整张图自上而下排着五个方框依次是提示词文字→ 查表文字 → 一串数字 id → 前向算一次思考 → 从概率里挑一个词 → 输出这个词右边有一条向上弯回去的箭头把最后一步输出这个词接回第三步前向旁边的注写着接回去把新词追加到输入再来一遍底部一个灰框写着循环的停止条件遇到结束符或达到长度上限。逐行要点词表.查(提示词)机器不认识文字只认识编号所以第一步是把文字换成编号串。这个动作在进阶系列里叫分词本篇只要记住文字要先变成编号。前向(...)这是前向计算forward pass的简写全部计算都在这一步里——把输入和权重weight模型里那一大堆数字算成下一个词有多可能的一串分数。它一次只往前推一个词。从候选里挑一个是挑不是算。模型给的是每个候选词的可能性引擎默认按可能性抽签这个动作叫采样sampling所以同一句话问两遍输出可能不一样把温度设成 0 就退化成总挑最大自检门用的就是这条。编号串.追加(下一个)把刚挑出来的词接回输入末尾作为下一轮的输入——这就是接得顺口的全部秘密。当 没有遇到结束符循环的出口不是一个计数器而是模型自己写出来的一个特殊编号。它写出来循环才停。④ 纸笔实验必做设定某一轮里引擎只给了三个候选词可能性分别是 甲 0.6、乙 0.3、丙 0.1。请用两种挑法各走 5 步看看差别有多大。挑法 A总挑最大的那个。每一步都选可能性最高的词。挑法 B按可能性抽签。把 0 到 1 分成三段[0, 0.6)出甲、[0.6, 0.9)出乙、[0.9, 1]出丙。为了不掷骰子用固定的一串随机数模拟抽签0.42、0.87、0.13、0.66、0.05。每个数落在哪一段这一步就出哪个词。预期结果步数12345挑法 A甲甲甲甲甲挑法 B甲乙甲乙甲挑法 A 五步全是甲输出完全可预测挑法 B 因为抽签结果不同走出甲乙甲乙甲。再算一下两种挑法的期望值挑法 B 里甲出现的期望次数是0.6 × 5 3次正好是 5 步里的 3 步。结论模型给的永远是可能性不是答案同一个模型、同一份权重可以走出不同的句子而走路的方向由抽签决定。这也是为什么工程上要专门讨论贪心还是采样——后面第 13 篇的一次猜几个词、第 28 篇的测量纪律都是从这个岔路口分出来的。可选 REPL 版任意语言直接跑候选, 可能 [甲, 乙, 丙], [0.6, 0.3, 0.1] 随机数 [0.42, 0.87, 0.13, 0.66, 0.05] def 抽签(r): 累计 0 对每个 i 于 范围(3): 累计 累计 可能[i] 若 r 累计: 返回 候选[i] 打印(总挑最大:, 候选[0] * 5) 打印(按可能性抽签:, .join([抽签(r) 对每个 r 于 随机数]))⑤ 进阶锚点进阶锚点本篇概念在《30 天手搓推理引擎》Day 1里被真正实现——1-1 为什么有人要手搓一个推理引擎30 天系列开篇/1-2 ARM 工具链第一课原生编译 vs 交叉编译以及一个真实的 -march 翻车现场/1-3 自检门没有模型的确定性测试第一次读懂 PASS/FAIL。入门版到这里就够了进阶版会多出真实的参数分发与入口代码src/main.c如何把一次请求变成这个循环、--test-l3确定性自检门的具体判据、以及为什么同输入必须同输出在工程里是一条硬纪律。想动手 → 仓库https://gitee.com/pei-xiaoguang/kestrel-llm从 Day 1 开始。本篇里那个可能性 抽签的岔路口在进阶 Day 1 的第 3 篇里就变成了一个可执行的 PASS/FAIL 判据。下篇预告循环里的前向计算到底在算什么它的原料是表格而表格在机器里并不是一张表——第 2 篇讲数字在内存里怎么排队。

相关推荐

第 4 篇:并行:4 个工人 ≠ 快 4 倍(零门槛入门系列)
第 4 篇:并行:4 个工人 ≠ 快 4 倍(零门槛入门系列)

上一篇:第 3 篇《权重文件的解剖》 | 下一篇:第 5 篇《为什么要量化》 一句话导读:把活分给 W 个人,总时间由"最慢的那块"加上"分配与收尾的固定开销"决定;所以人越多不一定越快。 关… · 2026/9/23 7:29:26

ESP32-S3 Flash与PSRAM配置详解:从SPI模式到启动排查
ESP32-S3 Flash与PSRAM配置详解:从SPI模式到启动排查

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/23 7:29:26

Java多线程编程实战:从基础到高级应用
Java多线程编程实战:从基础到高级应用

1. 多线程编程的核心价值与挑战十年前我第一次接触多线程编程时,被一个简单的计数器程序折磨得彻夜难眠——明明逻辑完全正确,运行结果却总是莫名其妙地出错。这就是典型的线程安全问题,也是每个多线程开发者必须跨过的第一道坎。多线程技术能… · 2026/9/23 7:29:26

QEMU RISC-V IOMMU 虚拟化实战:riscv-iommu-pci 与 riscv-iommu-sys 设备详解
QEMU RISC-V IOMMU 虚拟化实战:riscv-iommu-pci 与 riscv-iommu-sys 设备详解

虚拟化硬件仿真 【免费下载链接】qemu Official QEMU mirror. Please see https://www.qemu.org/contribute/ for how to submit changes to QEMU. Pull Requests are disabled. Please only use release tarballs from the QEMU website. 项目地址: https://gitcod… · 2026/9/23 11:22:28

Word如何单独删除某一页水印?分节符与页眉链接设置详解
Word如何单独删除某一页水印?分节符与页眉链接设置详解

1. 为什么“去掉当前页水印”会这么麻烦先说结论:Word里的水印,本质上不是“贴在某一页上的”,而是“整节共享的页眉层内容”。所以如果你直接在文档里删水印,它会整篇消失;你也不可能像选一张图片那样,用鼠… · 2026/9/23 11:22:15

偶滴性能优化保姆级教程:面试答不上来?3招搞定
偶滴性能优化保姆级教程:面试答不上来?3招搞定

偶滴性能优化保姆级教程:面试答不上来?3招搞定 面试被问原理答不上来,是不是心里直打鼓?别慌,这份偶滴性能优化保姆级教程,专治各种“卡顿焦虑”。很多开发者以为偶滴只是个小工具,其实它在高并发场景下的瓶颈比想象中更隐蔽。今天我们就用实战数据说… · 2026/9/23 11:22:15

县域商业信息组织:基于相册导航的本地化货源平台设计
县域商业信息组织:基于相册导航的本地化货源平台设计

1. 项目概述:这不是一个“系统”,而是一套本地化商业信息组织方法“安福相册导航系统”和“安福货源平台源码”这两个词,最近在一些区域性的建站论坛、微信公众号推文和本地服务商报价单里频繁出现。但必须先说清楚:它不是一个像微… · 2026/9/23 11:22:15

单通道EEG睡眠分期实战:从Python清洗到树莓派实时部署
单通道EEG睡眠分期实战:从Python清洗到树莓派实时部署

简介:本资源是一项基于单通道脑电信号的自动睡眠分期研究实现,面向生物医学工程、人工智能交叉领域的初学者与进阶学习者,适用于课程设计、毕业设计及科研入门项目。项目复现并改进了TinySleepNet架构,集成双向RNN、GRU与Attentio… · 2026/9/23 11:22:15

城市驾驶系统源码避坑指南:版本升级API重构实战
城市驾驶系统源码避坑指南:版本升级API重构实战

城市驾驶系统源码避坑指南:版本升级API重构实战 昨天刚把老项目升级到 v2.0,一跑起来,满屏的红字报错。以前用的 drive(city) 接口直接没了,替换成 navigate(location) 还得传一堆新参数。这种“版本升级后… · 2026/9/23 11:22:14

3招搞定手机怎么下载微信面试难题实战项目解析
3招搞定手机怎么下载微信面试难题实战项目解析

3招搞定手机怎么下载微信面试难题实战项目解析 面试被问“手机怎么下载微信”背后的原理,90%的人答不上来。别笑,这看似弱智的问题,实则是考察你对移动应用分发机制、安全校验及网络协议理解的试金石。我带过不少校招新人,他们背了八股文,却连一个A… · 2026/9/23 0:00:03

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型
你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型

你有新短消息请注意查收:3个新手避坑指南搞定消息系统选型 面试被问“高并发下如何保证消息不丢失”,你张口就是“用Redis”,结果面试官追问“如果Redis宕机了怎么办”,你瞬间卡壳。这种场景太常见了,很多新手在背八股文时,只记住了技术名词… · 2026/9/23 0:00:29

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧
Win7无线热点配置工具源码解析:解决API失效的3个实战技巧

Win7无线热点配置工具源码解析:解决API失效的3个实战技巧 Win7无线热点配置工具在Win10/11上跑不动?不是你的问题,是版本升级后 API 全变了。很多老项目里的 netsh wlan… · 2026/9/23 0:00:36

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码