1-What is LLM? 很多专家认为,大语言模型(LLM)是一场前所未有的变革。有的将它类比为“印刷术”,认为它将促进教育和知识的极大普及,引领我们走向一场新的文艺复兴;有的将它类比为“蒸汽机”,认为它将作为一种新的动力源,极大促进知识工作效率的提升,带来一次新的信息革命 。
印刷术本身是信息的复制,蒸汽机本身是物理做功。大语言模型既不是单纯的知识检索库,也不是纯粹的算力引擎。如果把LLM看作工具,再以工具类比,那么,用来砸钉子的钳子就是锤子。然而,简单类比是危险的 。LLM是什么,取决于你怎样用它。当然,LLM是否是仅仅是个工具,也存在争议,之前,有人认为它是一个幽灵,阅尽人间书籍;现在,有人认为它是硅基生物,一个与碳基生物已经平起平坐、未来将远远超过的新物种。
坐而论道无益。不妨暂时放下宏大的叙事,深入代码与工程,从应用角度看看,自变革开端,发生了什么、什么正在发生、以及未来可能发生什么。
Gemini: 在应用架构中,一端是用户(前端),一端是服务器(后端),中间是网络 。大模型的应用落地,依然无法脱离互联网与移动互联网时代积累的基础设施(如数据库、API、前端框架) 。
我们先从模型本身说起。
2-How to use LLM? 2.1 Input and Output 模型内部是一个高维参数空间上的映射函数:输入文本序列,输出文本序列。我们从过去数年,这个映射的输入协议、输出协议以及训练范式的变化说起。
阶段 代表模型及时间 能力 问题 文本续写/Text completions GPT-2 (2019) / GPT-3 (2020) 基于给定的上文,预测下一个词(Next-token prediction)出现的概率。跑通了 Scaling Law(缩放定律):证明了只要参数量和高质量文本数据足够大,大力确实能出奇迹。涌现了 In-context Learning(上下文学习):虽然它只会续写,但如果你在前面给它几个例子(Few-shot prompting),它就能学着你的模式往下写,不需要修改底层代码就能完成翻译、总结等任务。 没有“对话”的概念,没有“提问与回答”的概念,更没有“人”的概念。输入:"请帮我写一首关于秋天的诗。" 文本续写模型可能不会给你写诗,而是输出:"请帮我写一首关于冬天的诗。请帮我写一首关于春天的诗。" (因为它在训练数据中见过很多这种排比句形式,它只是在做模式匹配和续写)。 指令遵循/Instruction Tuning InstructGPT / ChatGPT (2022.11) 从基座模型(Foundation Model)向对话模型(Chat Model)的跨越。研究人员引入了监督微调(SFT)和基于人类反馈的强化学习(RLHF)。打通了普通人使用 AI 的门槛(ChatGPT 时刻):。用户不需要懂复杂的 Few-shot 提示词工程,只要用自然语言下达命令,模型就能听懂并执行。实现了“对齐(Alignment)”:AI 安全的基石,让模型的输出符合人类的价值观、意图和伦理规范。 角色分层/Role Stratification / ChatML GPT-4 API (2023.3) 引入System、User、 Assistant角色和数组标签。 工具调用 GPT-3.5/4 (2023.6) Function Calling。模型可生成结构化函数调用,打通外部 API、数据库、互联网。本质是模型主动触发外部计算逻辑的协议。消除知识截止日期与幻觉:彻底解决了大模型无法获取实时数据的问题(通过对接搜索引擎 API 或内网数据库)。Agentic Workflow 的技术底座:这是实现多步复杂任务(如让模型自主查询数据库、清洗数据然后发送邮件)的核心技术设施,使得大模型从单纯的信息处理器转变为具有执行力的系统主控节点。 结构化输出 OpenAI Structured Outputs (2024.8) 从概率性(Probabilistic)到确定性(Deterministic):通过干预底层采样器,将大模型的生成自由度强行限制在开发者定义的严格数据契约(Data Contract)之内。 显式推理 o1-preview (2024.9) / DeepSeek-R1 (2025.1) 通过 RL (PPO或者GRPO)训练出内置思维链(CoT),数学与编码能力阶跃式提升。将算力扩展(Scaling Law)的重心从预训练(Pre-training)转移到了后训练(Post-training)和推理阶段(Inference Time)。 用户需要接受“高延迟换高智力”,这也催生了新的交互方式。 多模态动作 Claude Computer Use (2024.10) Claude Computer Use (2024.10) 以及各种Agent SDK 直接输出鼠标键盘/终端指令,与真实环境闭环 # 角色: { "model": "gpt-3.5-turbo", "messages": [ {"role": "system", "content": "你是一个严谨的翻译引擎,只输出翻译结果。"}, {"role": "user", "content": "Hello world"}, {"role": "assistant", "content": "你好,世界"}, {"role": "user", "content": "Good morning"} ] } # Structured Output:使用Python的Pydantic from pydantic import BaseModel from openai import OpenAI client = OpenAI() # 1. 像写普通后端数据类一样,定义预期的数据结构 class Resume(BaseModel): name: str age: int skills: list[str] # 2. 直接将类传入 response_format,SDK 会自动完成 Schema 转换与校验 completion = client.beta.chat.completions.parse( model="gpt-4o-2024-08-06", messages=[{"role": "user", "content": "张三,30岁,熟悉Java,3年经验"}], response_format=Resume, # 极简!直接传入 Pydantic 类 ) # 3. 得到的就是完美结构化的 Python 对象,告别 JSON 解析错误 print(completion.choices[0].message.parsed.name) # 推理:DeepSeek R1 响应示例 { "message": { "role": "assistant", "reasoning_content": "用户想问... 我需要先计算... 假设... 不对,如果是这样的话... 所以最终答案是...", "content": "经过计算,最终答案为 42。" } } 工具调用的本质是模型主动触发外部计算逻辑的协议。在 API 层面,开发者通过 tools 字段将外部函数的签名(Function Signatures,包括名称、描述和参数的 JSON Schema)注入给模型。经过特定微调(Fine-tuning)的模型在生成 Token 时,一旦计算出当前上下文需要依赖外部数据或动作,便会中断标准的文本生成流(Text Generation Flow)。转而生成一个符合规范的 JSON 对象(即 Tool Call 指令),并将控制权交还给调用方(Client)。调用方执行相应的本地代码或 API 后,将结果以 tool 角色追加回上下文窗口,模型再基于此结果继续生成最终响应。
...