原代码

原代码

By 原代码Technology
Download on the App Store

原代码 episodes

  • LSTM:Sepp Hochreiter 与消失的梯度

    点单时说了少糖,等到最后加糖,机器怎样才能用上最早的要求?本期《原代码》从 Sepp Hochreiter 对训练困难的追查出发,沿着他与 Jürgen Schmidhuber 的 LSTM 设计,以及 Felix A. Gers 等人的遗忘门工作,走向长上下文、检索与今天的 agent 记忆。

    从等着做的一杯茶,到后来改成七点的聚餐:留下一条信息,怎样才能让下一次行动做得更对?

    你可在官方网站 https://yuandaima.xyz 中查看本期逐字稿、证据引用关系和证据快照。

    时间轴
    • 00:00 答案在最后

    • 00:29 把困难追到回传路径

    • 04:01 留下来,也要能使用

    • 08:47 回到论文,怎样算记住

    • 10:32 下一轮,谁让记忆重新开始

    • 13:11 聚餐改到七点,日历填几点

    • 21:34 那杯少糖的茶

    • 本期资料
      • Hochreiter:Untersuchungen zu dynamischen neuronalen Netzen(1991,学位论文)
      • Yoshua Bengio、Patrice Simard、Paolo Frasconi:Learning Long-Term Dependencies with Gradient Descent is Difficult(1994,作者手稿)
      • Sepp Hochreiter、Jürgen Schmidhuber:Long Short-Term Memory(1997)
      • Felix A. Gers、Jürgen Schmidhuber、Fred Cummins:Learning to Forget: Continual Prediction with LSTM(2000,作者目录与全文入口)
      • Alec Radford 等:Improving Language Understanding by Generative Pre-Training(2018,后来称为 GPT-1)
      • Patrick Lewis 等:Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks(2020 工作,论文 v4)
      • Nelson F. Liu 等:Lost in the Middle: How Language Models Use Long Contexts(2023,v1)
      • Di Wu 等:LongMemEval: Benchmarking Chat Assistants on Long-Term Interactive Memory(2024,v1)
      • Yiting Shen、Kun Li、Wei Zhou、Songlin Hu:Mem2ActBench: A Benchmark for Evaluating Long-Term Memory Utilization in Task-Oriented Autonomous Agents(ACL 2026)
      • 源码与工程记录
        • Google:Our next-generation model: Gemini 1.5(2024,长上下文与事实找回测试)
        • OpenAI Cookbook:Building Reliable Agents with Memory and Compaction(2026,含可复查的 notebook 示例)
        • Anthropic:Built-in memory for Claude Managed Agents(2026,文件式记忆说明)
        • 访谈与历史原声来源
          • Eye on AI #232:Sepp Hochreiter: How LSTMs Power Modern AI Systems(2025,Craig S. Smith 访谈)。本期两段原声均来自这场访谈,分别讲述他追查训练困难的回忆,以及记忆单元中按系数一回传的设计目标。
          • 说明与延伸阅读
            • 1991 年的训练困难分析、Hochreiter 与 Schmidhuber 的共同设计,以及 Gers、Schmidhuber、Cummins 的后续工作,是不同阶段的贡献。遗忘门已有 1999 年会议稿,2000 年发表长篇论文;不能把后来常用的全部结构都放回 1991 年,或归为一个人的一次发明。
            • 少糖点单、点单卡和聚餐日历都是节目构造的解释情境。原论文检验的是有明确条件的人工时序任务,没有做买茶或日历实验;真正的 LSTM 单元保存数值,点单卡不是它实际存放的文本文件。
            • 前向保留状态,与训练时把错误向早先步骤回算,是两个方向的问题。受保护的是单元内部的特定路径,不意味着全网络梯度恒定;遗忘门调节运行状态,也不等于删除训练学到的连接。
            • 更长的上下文、外部检索与跨会话文件各自改变不同环节。把材料放得下、找到有关记录、识别后来修订,以及把七点填进日历,需要分别检查;它们不是同一种记忆机制。
            • 当代部分依据本期截至 2026 年 10 月 20 日核对的公开材料,研究结果按各自模型、任务和实验条件理解。Gemini 的事实找回、RAG 的开放问答、LongMemEval 的互动测试与 Mem2ActBench 的工具参数指标,不能合成统一的记忆排行榜;参数 F1 也不是端到端任务成功率。
            • 2025 年访谈是研究者事后的回忆。节目用它呈现追查困难与提出设计目标的声音,机制、日期和共同贡献则与原始论文交叉核对,不把口语概括当成所有循环网络都不能记忆的定律。
            • 25 min
            • n-gram:Frederick Jelinek 与 IBM 的语言概率

              一句“请把文件发给王工”,每个词都见过,机器为什么仍可能把它挡在候选之外?本期《原代码》从 Frederick Jelinek 与 IBM 团队的语音识别研究出发,追踪三词统计、插值与独立检验,再把同一句话放进近期 ASR 的声音编码、语言解码与流式处理,比较经验怎样成为一次新的判断。

              从一封想交给机器的信,到一个仍应获得机会的新组合:程序留下了哪个候选,我们又怎样检查它所依据的声音、记录和上下文?

              你可在官方网站 https://yuandaima.xyz 中查看本期逐字稿、证据引用关系和证据快照。

              时间轴
              • 00:00 先念一封信

              • 02:17 一段声音,两份依据

              • 04:37 每个词都见过,这句话却没有

              • 07:19 给王工留一个位置

              • 09:57 让新文字检验改动

              • 13:47 近处之外,还有线索

              • 16:11 同一句话,换一套识别机器

              • 25:15 回到这封信

              • 本期资料
                • Frederick Jelinek:The Dawn of Statistical ASR and MT(2009,ACL 获奖演讲文本)
                • Frederick Jelinek、Lalit R. Bahl、Robert L. Mercer:Design of a Linguistic Statistical Decoder for the Recognition of Continuous Speech(1975,IBM 官方摘要)
                • IBM 团队:Experiments with the Tangora 20,000 Word Speech Recognizer(1986,官方摘要)
                • Peter F. Brown 等:Class-Based n-gram Models of Natural Language(1992)
                • NIST:DARPA Resource Management Benchmark Test Results June 1990(1990)
                • Ciprian Chelba、Frederick Jelinek:Exploiting Syntactic Structure for Language Modeling(1998)
                • Yoshua Bengio 等:A Neural Probabilistic Language Model(2003)
                • Alec Radford 等:Improving Language Understanding by Generative Pre-Training(2018,后来称为 GPT-1)
                • Qwen-Audio ASR Team:Qwen-Audio-3.0-ASR Technical Report(2026,v2)
                • Mistral AI:Voxtral Realtime(2026,v3)
                • 说明与延伸阅读
                  • 本期讲述的是 IBM 团队怎样把语言概率接入识别系统。Lalit R. Bahl、Robert L. Mercer、Peter F. Brown 等各有贡献;Jelinek 的 2009 年材料是参与者后见回忆。本期采用旁白讲述,获奖演讲文本不等于剪入了他的历史录音。
                  • 四条中文记录、“文件、发给、王工”及后面的提示 / 改口情境,都是节目构造的机制说明,使用固定分词和说明用分量。它们不是 IBM 的历史实验或近期模型实测;给王工非零概率,只让候选重新参加比较,声音与搜索仍须支持最后的识别。
                  • 困惑度比较语言模型给测试文本分配的概率,识别错误率评价整套系统写对了多少词。两项指标的对象不同;NIST 的 Resource Management 横评也不是 Tangora 的同一场测试,成绩需要连同任务、训练条件和评分办法理解。
                  • Bengio 等人在 2003 年论文中明确讨论 Jelinek–Mercer 插值。后来的神经语言模型延续条件预测问题,改变词表示和概率函数;共同目标不意味着 n-gram、感知机与 GPT 使用同一种结构,也不建立一条唯一的个人传承链。
                  • 两万词形成的约八万亿三词组合,是完整概率空间,不能与 Voxtral 报告中约 44 亿网络权重直接比倍数。70 亿指 Fun-ASR 前代文字解码器,Qwen-Audio-3.0-ASR 的精确总 / 激活参数未在所用报告中公布;约两千万小时则是其音文预训练阶段的作者披露数据量,不是词表或参数数量。
                  • 近期 ASR 比较固定使用 Qwen-Audio-3.0-ASR 报告 v2 与 Voxtral Realtime 报告 v3,机制、数据和能力说明来自作者公开材料,没有独立复跑或作全行业排行榜。可选润色文本与逐字转录各有用途;核对引语仍需回到原声,保留当时的重复与改口。
                  • 29 min
                  • 专家系统:Edward Feigenbaum 与 DENDRAL

                    知道一份化学样品的组成,也拿到了质谱图,为什么程序还需要化学家的判断?本期《原代码》从 Edward Feigenbaum 与合作者的 DENDRAL 研究出发,追踪专家经验怎样成为可输入、可修改、也可以由程序学习的知识,再沿着 MYCIN 与 R1 的实践,讨论这套架构怎样扩展,以及它与大语言模型的不同路径。

                    从一张留下多个答案的谱图,到一条可以重新检查的判断:机器保留了哪个候选,我们又能不能找到它所依据的条件?

                    你可在官方网站 https://yuandaima.xyz 中查看本期逐字稿、证据引用关系和证据快照。

                    时间轴
                    • 00:00 数据没有直接给出答案

                    • 03:24 程序还不知道什么

                    • 06:08 把一个判断写进去

                    • 10:03 规则也成为要寻找的答案

                    • 13:01 那个还没有被排除的结构

                    • 15:18 换知识,还要不要换方法

                    • 19:50 知识进入了另一种地方

                    • 24:12 留下可以检查的判断

                    • 本期资料
                      • Robert K. Lindsay、Bruce G. Buchanan、Edward A. Feigenbaum、Joshua Lederberg:DENDRAL: a Case Study of the First Expert System for Scientific Hypothesis Formation(1993)
                      • Bruce Buchanan、Georgia Sutherland、Edward Feigenbaum:Heuristic DENDRAL(1969)
                      • Bruce G. Buchanan 等:Automatic Rule Formation in Mass Spectrometry by Means of the Meta-DENDRAL Program(1976)
                      • Bruce G. Buchanan、Edward A. Feigenbaum:DENDRAL and Meta-DENDRAL: Their Applications Dimension(1978 年技术报告)
                      • Bruce G. Buchanan、Edward H. Shortliffe 编:Rule-Based Expert Systems,第 36 章 Major Lessons from This Work(1984)
                      • Judith Bachant、John McDermott:R1 Revisited: Four Years in the Trenches(1984)
                      • Qwen Team:Qwen3 Technical Report(2025,v1)
                      • Patrick Lewis 等:Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks(2020)
                      • 源码与工程记录
                        • Qwen3.5-397B-A17B:模型说明(本期核对的固定版本)
                        • 同版本 config.json:模型结构与层配置
                        • 访谈与历史原声来源
                          • Computer History Museum:Edward Feigenbaum 接受 Nils Nilsson 采访,Session 1(2007-06-20)——本期两段历史原声均来自这场访谈,分别谈向化学家求取知识,以及从数据中学习规则的设想与范围。馆方整理文本。
                          • Carl Djerassi:Using Artificial Intelligence in Chemistry(2005 年录制,Web of Stories)——用于核对他对结构推断与课堂应用的回忆,本期未剪入这场访谈的声音。
                          • 说明与延伸阅读
                            • DENDRAL 是多方合作的结果。Joshua Lederberg 提出科学任务并研究结构枚举,Georgia Sutherland、Bruce Buchanan 与化学专家等共同推动程序实现和知识获取;MYCIN、R1 各有自己的团队,不能都归到 Feigenbaum 一人名下。
                            • Heuristic DENDRAL 与 Meta-DENDRAL 的任务不同:前者利用知识约束、提出并比较结构,后者研究从已知结构及质谱中形成规则。程序学习规则仍依赖既定表示和评价办法,不等于从零自行发现全部知识。
                            • CONGEN 找到另一个符合现有条件的结构,说明这些条件还没有唯一确定答案,不直接证明原论文的结构错误。节目使用的样品与排障例子是机制说明,不是历史实验现场的复原。
                            • 1978 年材料采用的是二月技术报告版,不能与同名期刊版本混用页码。2007 年原声是 Feigenbaum 的后见回忆;其中转述 Carl Djerassi 的话,并不是 Djerassi 本人的录音。
                            • 本期对显式知识库与推理机的讨论主要以 MYCIN / EMYCIN 为例,不代表所有专家系统都只有一种结构;规则系统也并非天然不能处理不确定性或因果知识。对语言模型的结构比较限于所引用的公开实例,RAG 的文档检索也不等于经典规则推理。
                            • 第七章简要回看了不同研究起点:Cyc 的显式常识、Soar 的统一认知架构、Rodney Brooks 的感知与行动,以及 Marcus Hutter 的通用智能理论。这些路线没有整体成为本期所述语言模型的底座,不等于它们没有影响,也不意味着各自已经完成通用智能。
                            • 30 min
                            • 感知机:Frank Rosenblatt 与会犯错的机器
                              感知机:Frank Rosenblatt 与会犯错的机器

                              一个研究人的心理学家,为什么要造一台会改变判断的机器?本期《原代码》从 Frank Rosenblatt 的心理学研究出发,跟随一张卡片在训练前后得到的不同回答,理解经验怎样改变模型中的数值;再沿着词语表示和语言模型预训练,看看后来的人如何衡量这项工作的价值。

                              从一张可以调整的评分单,到一张随训练移动的词语地图:机器能够改变什么,研究者就需要检验什么,而后来方法的用途,也让最初那个关于学习的问题获得了新的观察尺度。

                              你可在官方网站 https://yuandaima.xyz 中查看本期逐字稿、证据引用关系和证据快照。

                              时间轴
                              • 00:00 研究人的人,为什么造机器

                              • 02:08 让机器改口:训练改变了什么

                              • 05:08 再练一遍,也未必能解决

                              • 07:40 分对了,然后呢:分类装置与脑模型

                              • 10:51 词语之间,能不能借用经验

                              • 14:02 先从文本练习,再把所学用于更多任务

                              • 17:00 后人记住了什么:问题、方法与历史

                              • 20:53 再把那个输入交给机器

                              • 本期资料
                                • Frank Rosenblatt:The Perceptron: A Probabilistic Model for Information Storage and Organization in the Brain(1958)
                                • Frank Rosenblatt:Principles of Neurodynamics: Perceptrons and the Theory of Brain Mechanisms(1961 年技术报告)
                                • Joe Pater:Generative Linguistics and Neural Networks at 60: Foundation, Friction, and Fusion(2018 年待刊稿)
                                • Melanie Lefkowitz / Cornell Chronicle:Professor's Perceptron Paved the Way for AI - 60 Years Too Soon(2019)
                                • Yoshua Bengio、Réjean Ducharme、Pascal Vincent、Christian Jauvin:A Neural Probabilistic Language Model(2003)
                                • Alec Radford、Karthik Narasimhan、Tim Salimans、Ilya Sutskever:Improving Language Understanding by Generative Pre-Training(2018)
                                • OpenAI:GPT-4 Technical Report(2023)
                                • 说明与延伸阅读
                                  • 卡片分拣和“杯子 / 碗”句子都是节目自拟的教学例子,用来解释训练和表示;它们不是 Mark I 当年的实验记录。1958 年的软件模拟与 Mark I 实体机器也不是同一件事。
                                  • 本期引用的 Principles of Neurodynamics 是 1961 年技术报告,不是 1962 年书版。Rosenblatt 与团队已经研究过可变的前端连接和多层组织,不能用最简单的感知机示意图概括全部研究。
                                  • 指定纠错程序找到解的保证有明确前提,包括当前分类存在可实现的解、训练输入持续重现。训练例子分对,不等于新情境表现已经得到保证,也不等于模型充分解释了大脑。
                                  • Richard O'Brien 的评价来自 Cornell 2019 年文章对早年悼念讲话的转引;Thorsten Joachims 的意见来自该文采访。本文与 Joe Pater 的学术回顾提供不同评价角度,不能替代全部技术史证据。本期未剪入第三方历史原声。
                                  • 对 Marvin Minsky 与 Seymour Papert 著作及其影响的讨论,采用 Joe Pater 的有归属回顾,不作“一本书单独终结神经网络研究”的判断。后来的语言模型论文说明方法怎样工作,不证明 Rosenblatt 预见了今天的模型,或全部原始脑机制设想已经实现。
                                  • 文本预测中的目标来自原文,不是对事实的最终判决;对话里的纠正改变了上下文,也不能单凭一次改口就推断模型即时更新了参数。
                                  • 26 min
                                  • “冯·诺依曼架构”:从 EDVAC 到大语言模型
                                    “冯·诺依曼架构”:从 EDVAC 到大语言模型

                                    六万多个计算单元都已就位,为什么还会一起停下来?本期《原代码》从 2017 年第一代张量处理器等待权重的场景出发,回到 ENIAC 换任务需要重新设置开关和电缆、EDVAC 团队把指令与数值都放进机器的转折,再沿着嵌入式设备、云端系统、编程语言、高速缓存、脉动阵列和注意力算法,追问谁保存状态、谁决定下一步、依赖怎样抵达并被复用。

                                    从换一类任务就要重新布置机器,到大语言模型生成下一个字词单位:机器的外形不断改变,反复出现的却是同一个工程问题——下一步需要的东西,能不能及时到达正在等待它的执行者。

                                    你可在官方网站 https://yuandaima.xyz 中查看本期逐字稿、证据引用关系和证据快照。

                                    时间轴
                                    • 00:00 六万多个计算单元为什么一起等待

                                    • 02:11 从重新接线到把下一步存进机器

                                    • 07:02 门锁、云端与组织类比:关系不是蓝图

                                    • 12:22 语言怎样重新分配开发者与工具的劳动

                                    • 17:47 CUDA 与 Triton:性能压力让底层重新显形

                                    • 22:13 高速缓存与脉动阵列怎样复用依赖

                                    • 27:02 回到张量处理器与注意力算法

                                    • 30:26 生成下一个字词单位前,依赖从哪里来

                                    • 本期资料
                                      • John von Neumann:《First Draft of a Report on the EDVAC》
                                      • J. Presper Eckert / John W. Mauchly:《Automatic High Speed Computing: A Progress Report on the EDVAC》
                                      • Burks / Goldstine / von Neumann:《Preliminary Discussion of the Logical Design of an Electronic Computing Instrument》
                                      • Microchip:AVR32DA28/32/48 Data Sheet
                                      • Barroso / Holzle / Ranganathan:《The Datacenter as a Computer》
                                      • John Backus 等:《The FORTRAN Automatic Coding System》
                                      • Dennis Ritchie:《The Development of the C Language》
                                      • NVIDIA:CUDA C++ Programming Guide 12.4
                                      • Tillet / Kung / Cox:《Triton》
                                      • Maurice Wilkes:《Slave Memories and Dynamic Storage Allocation》
                                      • H. T. Kung:《Why Systolic Architectures?》
                                      • Jouppi 等:《In-Datacenter Performance Analysis of a Tensor Processing Unit》
                                      • Tri Dao 等:《FlashAttention》
                                      • Pope 等:《Efficiently Scaling Transformer Inference》
                                      • 访谈与历史原声来源

                                        本版没有剪入第三方历史原声。Smithsonian finding aid 只证明相关馆藏入口存在;本轮没有取得同时通过媒体访问、说话人、上下文、人工句界复听和权利门禁的片段。

                                        • Smithsonian Computer Oral History Collection finding aid
                                        • Smithsonian:John W. Mauchly oral history record
                                        • 说明与延伸阅读
                                          • First Draft 没有使用后来固定的 stored program 术语;节目先解释 orders 与 numbers 都进入 memory 的具体动作,再使用后见名称。
                                          • “冯·诺依曼架构”不等于今天所有计算机共享同一物理结构,也不等于 von Neumann 独自完成 EDVAC、IAS 或现代计算机。
                                          • 智能门锁、云端服务和公司组织只用于比较角色关系;它们不是 EDVAC 的物理缩放,公司也没有机器式的唯一控制器和统一时钟。
                                          • FORTRAN、C、CUDA 与 Triton 展示控制权如何在开发者与工具之间移动,不构成“语言越底层越快”的单向排名。
                                          • TPU、FlashAttention 和大语言模型推理构成当代镜照,不证明 EDVAC 直接导致现代 AI,也不证明所有模型都由同一种内存瓶颈主导。
                                          • 37 min
                                          • 信息熵:Claude Shannon 与下一个字母
                                            信息熵:Claude Shannon 与下一个字母

                                            一台完全不理解句子含义的机器,能不能只根据已经出现的字符猜中下一个字符?本期《原代码》从 Claude Shannon 在 MIT 面对复杂继电器线路的场景出发,经过一九四八年把消息写成概率选择、一九五一年让人逐字符猜测英语,再沿 Weaver 的机器翻译设想、IBM 统计语言模型、神经概率语言模型和生成式预训练,追问同一个预测错误怎样从测量语言,变成评价模型、修改表示和预训练参数的入口。

                                            从继电器上的一次开与关,到聊天窗口里的下一个 token:数学让两者都能被写成选择、条件和概率。中间近九十年的研究不断改变预测者、表示和误差用途,却没有让概率自动回答语言为何有意义、机器是否理解自己生成的文字。

                                            本期逐字稿、证据引用关系和证据快照可在《原代码》官方网站 https://yuandaima.xyz 查看。

                                            时间轴
                                            • 00:00 在微分分析机旁认识 Shannon:机器很大,选择很小

                                            • 01:38 把消息写成概率选择,先把语义放到模型外

                                            • 04:15 翻一本书,生成越来越像英语的乱码

                                            • 06:36 Weaver 把上下文与统计带进机器翻译问题

                                            • 08:46 正确字符排在第几次:一九五一年猜字实验

                                            • 12:31 预测者从人变成模型,交叉熵开始评价模型

                                            • 14:50 猜错以后,词表示和网络参数也会改变

                                            • 17:01 预测误差进入预训练,下一 token 仍只是系统入口

                                            • 21:26 如果 Shannon 坐到今天的聊天窗口前

                                            • 本期资料
                                              • Robert G. Gallager:《Claude E. Shannon: A Retrospective on His Life, Work, and Impact》
                                              • Claude Shannon:《A Mathematical Theory of Communication》校订重印
                                              • Warren Weaver:《Translation》备忘录
                                              • Claude Shannon:《Prediction and Entropy of Printed English》
                                              • Peter Brown 等:《An Estimate of an Upper Bound for the Entropy of English》
                                              • Yoshua Bengio 等:《A Neural Probabilistic Language Model》
                                              • Radford / Narasimhan / Salimans / Sutskever:《Improving Language Understanding by Generative Pre-Training》
                                              • OpenAI:《GPT-4 Technical Report》
                                              • Qwen Team:《Qwen3 Technical Report》
                                              • Claude Shannon:《The Bandwagon》
                                              • 访谈与历史原声来源

                                                本版没有剪入第三方历史原声。IEEE History Center 页面证明 Claude Shannon 1982 口述史与本人声音入口存在,但没有片段同时通过出版许可、上下文、人工句界复听和权利门禁。

                                                • IEEE History Center:Oral-History: Claude E. Shannon
                                                • 说明与延伸阅读
                                                  • 一九四八年论文建立通信、熵和随机英文近似;一九五一年论文才使用人类逐字符猜测估计英语熵,实验不是机器训练。
                                                  • 语义被放到通信工程模型之外,不代表意义不存在;低熵也不直接等于有意义、高质量或被理解。
                                                  • 一九五一年论文没有给 the subject 具名,不能自行把 Mary E. Shannon 写成唯一受试者。
                                                  • Weaver 与 Brown 直接点名 Shannon;Bengio 2003 和生成式预训练论文只支撑方法 / 指标继承或方法汇流,不构成逐篇直接引用的发明链。
                                                  • 下一 token 预训练不足以解释当前聊天系统的全部行为,也不能单独证明理解;Shannon 没有留下对 LLM 的实际评论。
                                                  • 27 min
                                                  • 模仿游戏:Alan Turing 与图灵机
                                                    模仿游戏:Alan Turing 与图灵机

                                                    一台只按有限规则读写符号的抽象机器,为什么十四年后会进入“机器能不能思考”的讨论?本期《原代码》从 1936 年的纸带、当前格与 universal machine 出发,经过 Bombe、Colossus 和 ACE 的不同工程边界,再回到 1950 年的 imitation game,追踪一个过大的问题如何被改写成可执行动作或可观察游戏。

                                                    从一格纸带,到一台可以读取另一台机器描述的 universal machine;从专用密码分析设备,到会被讨论“能不能思考”的机器:问题没有变得更小,只是换成了可以检查、比较和继续追问的形式。

                                                    时间轴
                                                    • 00:00 冷开场:先把问题换成一台机器

                                                    • 04:48 有效计算怎样落到可执行动作

                                                    • 11:13 平行定义、公开修正与人物履历

                                                    • 14:06 Bombe、Colossus 与“通用”边界

                                                    • 17:10 ACE 让抽象模型接受存储、硬件和团队约束

                                                    • 20:48 程序成为可以被组织的对象

                                                    • 23:25 从 unorganised machines 到 child machine

                                                    • 25:31 Jefferson、意识异议与 imitation game

                                                    • 29:31 从“机器能否思考”到“下一个词”

                                                    • 本期资料
                                                      • A. M. Turing:《On Computable Numbers》
                                                      • A. M. Turing:《A Correction》
                                                      • GCHQ:The Pyry Forest Meeting
                                                      • GCHQ:Alan Turing
                                                      • GCHQ:Gordon Welchman
                                                      • Computer History Museum:Timeline of Computer History: Computers
                                                      • The National Museum of Computing:Colossus
                                                      • NPL:Turing's ACE proposal
                                                      • NPL:Intelligent Machinery
                                                      • NPL:Progress Report on the ACE
                                                      • A. M. Turing:《Computing Machinery and Intelligence》
                                                      • OpenAI:《GPT-4 Technical Report》
                                                      • 源码与工程记录

                                                        本期没有可供听众运行的独立源码仓库;ACE 的设计与协作记录见:

                                                        • King's College:ACE proposal archive record
                                                        • AlanTuring.net:ACE archive catalogue
                                                        • King's College:Intelligent Machinery archive record
                                                        • 访谈与历史原声来源

                                                          本版没有剪入第三方历史原声。BBC 明确说明 1951 年广播没有存世录音;Mark Gatiss 的视频重读不是 Turing 原声。King's College 的 1951 广播稿目录仅作为文字与声音边界参考。

                                                          说明与延伸阅读
                                                          • 1936 年的 tape 是纸带的数学类比,不是后来 Colossus 的打孔纸带,也不是已经造出的硬件蓝图。
                                                          • Bombe 是专用密码分析设备;波兰先行、Welchman 改进和制造团队必须保留,不能把它写成 Turing 单人完成的通用计算机。
                                                          • ACE proposal 和 1948 年的进度报告显示,通用计算进入了存储、硬件、编程和协作组织的约束;Turing 的 proposal 不等于整个 ACE 项目由一人完成。
                                                          • imitation game 是对“机器能不能思考”问题的替换,不是意识的测量仪,也不是今天所有“图灵测试”说法的唯一版本。
                                                          • GPT-4 technical report 只提供一个当代模型的最小技术描述;本期不把它写成 Turing 预见了 Transformer、RLHF,或已经表达过对大语言模型的明确态度。
                                                          • 36 min
                                                          • 回到未来
                                                            回到未来-Python 2、Python 3 与十多年的迁移

                                                            一门以容易开始著称的语言,为什么会主动发布一个不能让大量旧代码原样运行的新版本?本期《原代码》从一行可运行的 .py 文件出发,回到 Python 的发明与第一次公开分发,沿着文本与字节的断裂、future 的迁移工作台、包维护者的双版本负担,以及 Dropbox 和 OpenStack 的工程路径,追踪这场迁移怎样被拆成许多可以执行的中间状态。

                                                            从两个解释器之间的兼容桥,到包、发行版、工具链和企业系统依次撤走旧路径:所谓“回到未来”,不是让过去在某一天同时消失,而是让越来越多的人终于不必再携带它。

                                                            时间轴
                                                            • 00:00 一行代码,拨回 1989

                                                            • 04:01 核心团队为什么选择 break

                                                            • 07:29 普通开发者怎样过河

                                                            • 12:31 包维护者站在桥中间

                                                            • 17:57 一个产品与一张依赖图

                                                            • 23:54 妥协不是一个动作

                                                            • 29:04 生态怎样改变默认选项

                                                            • 32:39 三种兼容预算

                                                            • 37:20 回到现在与未来

                                                            • 本期资料
                                                              • Guido van Rossum:Foreword for Programming Python
                                                              • PEP 3000:Python 3000
                                                              • What's New In Python 3.0
                                                              • Brett Cannon:Why Python 3 exists
                                                              • PEP 373:Python 2.7 Release Schedule
                                                              • PEP 414:Explicit Unicode Literal for Python 3.3
                                                              • PEP 466:Network Security Enhancements for Python 2.7.x
                                                              • Python.org:Sunsetting Python 2
                                                              • PEP 602:Annual Release Cycle for Python
                                                              • 源码与工程记录
                                                                • Python-Future:引入 futurize --stage1 / --stage2 的 commit
                                                                • Python-Future:两阶段迁移文档 commit
                                                                • Python-Future v0.11 Quick-start
                                                                • Django:Experimental Python 3 support
                                                                • Dropbox:How we rolled out one of the largest Python 3 migrations ever
                                                                • Dropbox:Incrementally migrating over one million lines of code from Python 2 to Python 3
                                                                • OpenStack:Python 3 Sprint at PyCon 2014
                                                                • OpenStack:Python 2 Deprecation Timeline
                                                                • OpenStack:Drop Python 2.7 Support
                                                                • pip 21.0 release notes
                                                                • 访谈与历史演讲来源

                                                                  本版音频没有剪入第三方访谈或演讲片段;声音由 11 章旁白、原创片头《等待机器》和原创片尾《加速与混乱》组成。以下载体仅作为资料参考,未进入本版音频:

                                                                  • Guido van Rossum:Python 3000,Google TechTalk,2006
                                                                  • Python 3 Panel,PyCon Australia,2011
                                                                  • Python 3 Adoption and Barriers,Montreal-Python,2014
                                                                  • Dropbox:Incrementally Migrating Over One Million Lines of Code from Python 2 to Python 3,PyCon 2019
                                                                  • 说明与延伸阅读
                                                                    • Python 3.5 不是本期认定的唯一生态转折点。2015 至 2016 年的包索引分析只能说明活跃库的 Python 3 供给在改善,不能把整个迁移归结为一个解释器版本。
                                                                    • Python 2.7 的支持期限从 2015 年延到 2020 年,为不能立即迁移的用户和供应商留下了时间;现有材料不足以证明“延期本身导致拖延”。
                                                                    • 2020 年标记的是 CPython 上游支持和许多共同期限的重要边界,不是所有 Python 2 系统同时消失的日期。pip、Linux 发行版、商业托管环境和嵌入式产品按各自节奏退出或保留旧运行时。
                                                                    • Dropbox 的双解释器、统一源码和灰度发布只说明其桌面客户端的迁移路径;OpenStack 的依赖、CI 与治理顺序只说明其受技术委员会治理的项目。两者都不是所有企业迁移的通用模板。
                                                                    • 本期把 str、unicode 与 bytes 作为技术显微镜,用来观察迁移成本怎样从语法进入数据边界;这不表示 Python 3 的全部不兼容变化都来自文本模型。
                                                                    • “Python 3 成为默认路径”在这里指 CPython 上游、主流工具链与多数活跃项目完成方向切换,不表示每个遗留系统都已支付完迁移成本。
                                                                    • 42 min
                                                                    • Redis:创建者怎样成为参与者
                                                                      Redis:创建者怎样成为参与者-Sanfilippo、维护与 Valkey

                                                                      一个项目的创建者,为什么要先问一家公司,自己能不能回到这个项目?本期《原代码》从 Salvatore Sanfilippo 离开四年后再次输入 make 出发,回到 LLOOGG 的实时统计问题,沿着赞助、维护、退出、Redis 换证与 Valkey 分叉,追踪一个个人作品怎样在越来越多人的需要中改变作者的位置。

                                                                      从一个空出来的中心,到仍在分叉运转的网络:同一条 make 命令可以把代码重新构建,却不能把创建者送回原来的位置。

                                                                      你可在官方网站 https://yuandaima.xyz 中查看本期逐字稿、证据引用关系和证据快照。

                                                                      时间轴
                                                                      • 00:00 回来以前,先问一句

                                                                      • 01:22 先有一个问题

                                                                      • 04:43 让别人支付时间

                                                                      • 06:28 喜欢的东西,变成肩上的重量

                                                                      • 10:07 把手放开

                                                                      • 12:30 没有他的 Redis

                                                                      • 15:37 回来,但不回到原位

                                                                      • 20:04 谁拥有离开的自由

                                                                      • 本期资料
                                                                        • Redis, my new open source project
                                                                        • Happy birthday Redis!
                                                                        • Thanks Pivotal, Hello Redis Labs
                                                                        • The end of the Redis adventure
                                                                        • New Governance for Redis
                                                                        • From where I left
                                                                        • Redis Adopts Dual Source-Available Licensing
                                                                        • Linux Foundation Launches Open Source Valkey Community
                                                                        • Redis is now available under the AGPLv3 open source license
                                                                        • 源码与工程记录
                                                                          • Redis historical versions from 2009
                                                                          • LLOOGG README:从 MySQL 到 Redis 的应用记录
                                                                          • Redis 当前 Git 历史最早保留的提交 ed9b544
                                                                          • Redis 7.2.4 COPYING:BSD-3-Clause
                                                                          • Valkey 7.2.5 源码树
                                                                          • 访谈与历史原声来源
                                                                            • Running Redis for 8 years,Salvatore Sanfilippo 主讲,Codemotion Milan,2017。
                                                                            • Changelog Interviews #631:Salvatore Sanfilippo,Salvatore Sanfilippo 受访,Changelog,2025。
                                                                            • 说明与延伸阅读
                                                                              • Sanfilippo 在 2020 年的退出说明把原因放在创作与长期维护角色的冲突上;现有材料不支持把他的离开写成反对商业化,也不支持写成公司将他赶走。
                                                                              • 2018 年模块换证、同年 IP 与商标转让、2020 年维护交接和 2024 年 Redis 核心换证是不同动作。本期按各自材料分别叙述,不把后来结果倒推成一项预先设计的计划。
                                                                              • Valkey 延续的是 Redis 换证前按 BSD 发布的代码,不是八天内重写出的数据库。项目保留了大量命令、客户端与运维兼容路径,但这不表示所有模块、复制和部署行为都完全相同。
                                                                              • Redis Ltd.、Redis 商标、不同版本的源码许可证,以及由命令、客户端和运维经验维持的兼容接口,不是同一个对象。本期不以公司的产品动作替代整个生态的变化。
                                                                              • Redis 8 增加 AGPLv3 是在 RSALv2、SSPLv1 之外加入第三种选择,不是回到 BSD;公司对 2024 年策略的调整也不能归功于 Sanfilippo 一个人。
                                                                              • 23 min
                                                                              • 命令之外
                                                                                命令之外-为什么大家都启动 FFmpeg?

                                                                                摄像头二十秒没有送来新画面,Frigate 不只是重启 FFmpeg,还要在进程外数秒、验收分片、保存日志。既然应用最终仍要补上这么多控制代码,为什么桌面工具、下载器、照片服务和视频平台还会反复选择启动一条 FFmpeg 命令?本期《原代码》从这段 watchdog 出发,沿着命令生成、媒体数据流、进程监督、失败语义和替代路线,追踪一条命令究竟替应用接走了什么。

                                                                                从停住的第二十秒,到一条由程序生成、又必须被进程外监督的 command line:FFmpeg 接走的是媒体数据面,留下的是产品必须自己回答的完成与失败。

                                                                                你可在官方网站 https://yuandaima.xyz 中查看本期逐字稿、证据引用关系和证据快照。

                                                                                时间轴
                                                                                • 00:00 二十秒

                                                                                • 04:05 命令不是人写的

                                                                                • 07:12 一条可执行的媒体计划

                                                                                • 11:57 原声:CLI 是一门可以生成的语言

                                                                                • 13:02 命令外面重新长出一套系统

                                                                                • 18:22 进程结束,任务没有完成

                                                                                • 23:45 什么时候不要启动 FFmpeg

                                                                                • 27:37 命令之外

                                                                                • 本期资料
                                                                                  • FFmpeg 9.0 Lei
                                                                                  • 刘歧:以 Lei 纪念雷霄骅的版本命名提议
                                                                                  • 雷霄骅的音视频技术项目与 FFmpeg 示例
                                                                                  • FFmpeg CLI 官方文档
                                                                                  • LinkedIn Engineering:LiTr,一款 Android 轻量音视频转码器
                                                                                  • GStreamer Application Development Manual
                                                                                  • 源码与工程记录
                                                                                    • Frigate:摄像头 FFmpeg 进程、watchdog 与重启路径
                                                                                    • LosslessCut:FFmpeg 进程执行、进度、取消与超时
                                                                                    • yt-dlp:FFmpeg postprocessor
                                                                                    • PhotoPrism:FFmpeg command builders
                                                                                    • PeerTube #1147:参数在逗号处被截断
                                                                                    • PeerTube #3596:队列完成但 HLS 产物缺少视频
                                                                                    • Jellyfin:FFmpeg argument injection 安全公告
                                                                                    • 访谈与历史原声来源
                                                                                      • Lex Fridman Podcast #496:FFmpeg, with Jean-Baptiste Kempf and Kieran Kunhya。本期使用的短片段实际发言人为 Jean-Baptiste Kempf 与 Lex Fridman。
                                                                                      • 说明与延伸阅读
                                                                                        • FFmpeg 9.0 的正式代号是 Lei;刘歧的邮件支撑命名提议及理由,但不是一份完整的正式表决记录。本期不把雷霄骅的知识传播贡献量化成单一影响数字。
                                                                                        • 一条 FFmpeg 命令可以描述完整媒体任务,但不会自动提供产品级的超时、重试、健康判断、日志、权限隔离和产物验收。进程正常退出也不等于业务结果正确。
                                                                                        • CLI 不是专业系统的必然终点。LiTr、进程内媒体项目、GStreamer 和平台原生 API 展示了实时帧访问、硬件路径、低延迟图和窄任务下的其他选择。
                                                                                        • Frigate、LosslessCut、yt-dlp、PhotoPrism、PeerTube 与 Jellyfin 是为不同工程问题选择的案例,不是行业采用率抽样,也不能据此推断所有媒体产品都使用 FFmpeg CLI。
                                                                                        • 子进程边界便于替换、超时和重启,但不会消除 decoder 缺陷或不可信参数带来的安全风险。权限、沙箱、参数构造和输入验证仍需由采用者设计。
                                                                                        • Lex Fridman Podcast #496 的完整节目同时有 Kempf 与 Kieran Kunhya;本期所用 CLI 是语言 短片段没有 Kunhya 的声音,不把片段中的判断扩展为整期访谈所有参与者的共同表述。
                                                                                        • 32 min

                                                                                        About 原代码

                                                                                        From the publisher's feed

                                                                                        一档关于软件开发世界的声音批评节目,追踪代码、工具与人的选择,并为每期节目保存可检索、可复查、可长期保存的公开档案。