智能体模型 🇷🇺 24.07.2026 05:03

从大语言模型到智能体:理解模型与应用之间的层次

Google/DeepMindGoogle/DeepMind OpenAIOpenAI MistralMistral
本文探讨了大语言模型与智能体应用之间的层次,从标记化、采样和 KV 缓存开始,经过聊天模板和 Jinja,再到模型存储格式和运行时(如 llama.cpp)。文章解释了常见的陷阱,例如推理令牌占用生成预算和上下文长度问题。
这篇文章描述了从大语言模型(Large Language Model, LLM)到智能体(agent)的完整实现路径。其核心在于:模型在自回归循环中预测下一个词元(token),通过分词器(tokenizer)将文本转换为词元ID,再通过反分词器(detokenizer)将其转换回文本。KV缓存(KV-cache)通过存储先前的键值对来加速生成过程。模型所接收的输入文本并非原始JSON(JavaScript Object Notation,一种数据交换格式),而是依照模型聊天模板(chat template)格式化后的提示词——该模板是一个Jinja模板,能将消息列表转换为带有特殊词元的字符串(例如ChatML、Llama 3所使用的格式)。对于推理模型而言,提示词中可能包含一个<think>代码块;如果模型在推理过程中消耗了过多词元,就可能在生成最终答案之前耗尽生成预算。文章还指出,计费和上下文长度的计算依据是经过聊天模板处理后、完成分词的提示词,而非API的JSON本身。模型在磁盘上的存储包括safetensors格式的权重文件、config.json配置文件、分词器相关文件,以及位于tokenizer_config.json中的chat_template。像llama.cpp这样的运行时环境会加载一个GGUF(GPT-Generated Unified Format,一种统一模型文件格式)文件,该文件将上述组件打包在一起,从而提供从文本到文本的高层接口。
来源: Habr — хаб ML — 原文
我们之前关于此话题的帖子 ↓
最新新闻