主题
01 · 大模型核心概念
先建立一个可用的心智模型
大语言模型(LLM)根据上下文预测接下来的 Token,再逐个生成输出。它不是数据库,不会保证每次说出的事实真实,也不会因为你说「认真点」就自动连上互联网。
你开发 Agent 通常不需要训练模型。你的工作是提供合适上下文、连接工具、约束执行、验证结果。
Token:输入输出的计量单位
Token 是分词后的单位,可能是一个字、半个单词、标点或其他片段。不同模型分词方式不同,不要把 1 Token 当作 1 个汉字。
Token 同时影响:
- 价格:输入 Token 和输出 Token 通常分别计费。
- 速度:输出越长,完成时间通常越久。
- 上下文上限:本次请求不能无限大。
费用粗估:
text
费用 ≈ 输入 Token / 1,000,000 × 输入单价
+ 输出 Token / 1,000,000 × 输出单价价格、缓存折扣、推理 Token 规则以平台实时文档为准,不要用字符数估算正式账单。
上下文窗口:模型这一次能看多少
可以把上下文理解成传给模型的「请求包」:系统说明、历史消息、工具定义、检索资料,以及为输出预留的空间。窗口很大也不代表信息利用率一定很好。
API 通常不会替你记住上一次调用。聊天产品的记忆是应用帮你维护的,不是模型在两次 HTTP 请求之间偷偷保存了 state。
前端类比
每次 API 调用都类似一个无状态请求。想让下一次调用知道前面的对话,应用要把历史重新带上,就像从 store 组装请求参数。
messages 的角色
| role | 作用 | 注意 |
|---|---|---|
| system | 行为规则、任务边界 | 不是安全沙箱,不能代替权限控制 |
| user | 用户需求 | 输入可能不可信 |
| assistant | 模型先前的回复或工具请求 | 不是工具已经执行的证明 |
| tool | 程序执行工具后返回的结果 | 可能含恶意网页内容,也不可信 |
一些模型/API 还有 developer 等角色,本教程先使用广泛兼容的 Chat Completions 形式。
temperature:输出的随机性
低温度通常更稳定,高温度通常更多样。但:
temperature=0也不保证绝对可复现。- 它不等于「智能程度」,不是越高越聪明。
- 某些推理模型不支持自定义 temperature;遇到参数错误先查模型文档。
幻觉:自信不代表真实
模型可能生成不存在的 API、链接和引用。对事实型任务,给它检索结果并要求引用;对计算,交给计算工具;对写文件/下单,程序必须控制权限和确认。
模型如何选择?
先用一个支持普通聊天与工具调用的便宜模型。学习时固定模型;以后用你自己的测试集比较任务成功率、延迟、成本,而不是只看排行榜。
「OpenAI 兼容」只表示接口有相似部分,不保证工具调用、JSON Schema、图片、Embedding 等功能全部一致。我们会在相应章节说明能力要求。
自测
- 为什么连续调用两次 API,第二次模型可能不知道你的名字?
- 输入 20 次相同问题,是不是只支付一次费用?
- 模型给出一个新闻链接,能不能不打开就当作真实引用?
参考理解
- 历史没有被应用带回请求。
- 不是,通常每次都计费;缓存优惠以平台规则为准。
- 不能;需要实际检索、验证来源,区分资料原文与模型推测。