大语言模型入门
这篇用最少的概念讲清楚大语言模型(LLM)是怎么回事:它在预测什么、token 和上下文窗口是什么、几个关键参数怎么调,并用 Claude API 跑通第一个调用。
LLM 到底在做什么
大语言模型本质上是一个**「预测下一个词」的概率机器**。给它一段文本,它根据海量语料学到的规律,预测接下来最可能出现的内容,一个 token 一个 token 地往外吐,连起来就成了流畅的回答。
它之所以「像懂了」,是因为预测下一个词这件事,逼着模型在训练中学会了语法、事实、推理模式乃至代码结构。现代主流模型基于 Transformer 架构,核心是注意力机制(Attention):生成每个词时,模型会「回看」上下文里所有词并按相关度加权,从而抓住长距离依赖。入门阶段记住这个直觉即可,不必深究数学。
Token 与上下文窗口
模型不是按「字」处理文本,而是按 token——一种介于字符和单词之间的片段。英文里一个 token 约 4 个字符,中文大致一个字对应 1~2 个 token。
上下文窗口(Context Window) 是模型一次能「看到」的 token 总量,输入和输出都算在内。窗口越大,能塞进的资料、对话历史越多。这也是计费单位——调用按输入 token + 输出 token 计价。
tiktoken 估算 Claude 的 token 数,会偏差较大。需要精确计数时用 Anthropic 提供的 count_tokens 接口,传入你实际要用的模型 ID。跑通第一个 Claude 调用
以 Anthropic 的 Claude 为例。先安装官方 SDK 并配置密钥:
pip install anthropic
export ANTHROPIC_API_KEY="sk-ant-..." # 你的 API Key最小可运行示例:
from anthropic import Anthropic
client = Anthropic() # 自动读取环境变量 ANTHROPIC_API_KEY
resp = client.messages.create(
model="claude-opus-4-8", # 模型 ID
max_tokens=1024, # 本次回复的 token 上限
system="你是一个简洁专业的技术助手,用中文回答。", # 系统提示:定角色与规则
messages=[
{"role": "user", "content": "用一句话解释什么是向量数据库。"},
],
)
print(resp.content[0].text)几个关键参数:
model:模型 ID。当前主力是claude-opus-4-8(最强)、claude-sonnet-4-6(速度与能力均衡)、claude-haiku-4-5(最快最省)。max_tokens:单次回复的 token 上限,是硬截断——设太小回答会戛然而止。一般非流式给 4K~16K,长输出要用流式。system:系统提示,用来设定角色、语气和规则,比塞进用户消息里更稳定。详见 提示工程实践。messages:对话历史,由user与assistant交替组成。多轮对话就是把之前的回复也追加进数组。
返回的 resp.content 是一个内容块数组,纯文本回复取 resp.content[0].text。
关于 temperature
temperature(温度)是 LLM 的经典参数,控制输出的随机性:值越低越确定、越保守(适合抽取、分类);越高越发散、有创意(适合头脑风暴)。这是理解 LLM 行为的重要概念。
temperature、top_p、top_k 这些采样参数已被移除,传了会直接报 400 错误——官方建议改用「提示词 + 思考力度(effort)」来调节行为。部分模型(如 Sonnet 4.6 / Haiku 4.5)仍接受单个 temperature(0~1)。所以上面的示例特意没有传 temperature。动手前先确认你用的模型支持哪些参数。一句话小结
LLM 是按 token 预测下一个词的概率机器;用好它先搞清楚 token、上下文窗口与计费,再掌握 model / max_tokens / system / messages 四个核心参数。会调用之后,真正拉开差距的是提示工程——下一篇见。