Skip to content
All notes

LLM 与 Prompt

归纳语言模型生成、采样、提示词与相关能力边界的面试要点。

LLM 与 Prompt

如何生成下一个 token

输入经过分词后转换为向量,并加入位置信息;Transformer 根据前文计算表示,输出词表上各 token 的 logits,经 softmax 得到概率分布,再通过贪心或采样等策略选择下一个 token。生成结果加入上下文,继续下一步。

预测单位通常是 token,不一定是完整的词。概率高表示在上下文中更可能出现,不保证事实正确。

Transformer

Self-attention 用 Query 与 Key 计算相关性,再对 Value 加权聚合,让不同位置交换信息。多头注意力学习不同关系,前馈网络处理特征,残差连接和归一化帮助多层网络训练。

位置信息提供顺序线索;自回归模型使用因果约束,生成时只能依赖已知前文。训练和 prefill 可并行处理多个位置,逐 token 的 decode 仍有前后依赖。

成本与延迟

推理成本来自模型计算、权重和 KV cache 的显存占用、内存带宽,以及服务排队。长输入增加 prefill 工作量,长输出增加串行 decode 步数,并发又会争用资源。

先分开测首 token 延迟(TTFT)、后续 token 间隔和端到端延迟,再选择优化点:

环节可用手段取舍
输入与 prefill减少无关上下文、复用前缀缓存避免删掉必要事实和约束
decode缩短输出、选择合适模型、量化、推测解码效果和收益依赖模型、硬件与负载
服务调度批处理、并发控制、减少排队和串行调用提升吞吐不一定降低单请求延迟
产品交互流式展示、按任务路由模型流式输出改善等待感,不等于缩短总生成时间

TPM、QPM 限流

QPM 限制请求数,TPM 限制 token 用量,要按上游实际计费和限流规则同时检查。可按模型、账号和租户分配预算,用令牌桶或窗口计数控制准入。

请求前估算输入和输出预算,按上游规则校准;配额不足时进入有界队列或拒绝。不同优先级、租户之间需要调度规则,重试应遵循上游等待提示并有限退避,避免重试放大流量。

提示词设计与管理

提示词写清任务、必要背景、输入材料、输出要求和约束;格式或判断标准难以描述时给少量示例。信息不足时应允许澄清或说明缺口。

消息角色区分来源:system 等指令消息提供行为约束,user 提供当前任务,assistant 保存先前回复或示例;具体角色和优先级取决于接口。角色标签和提示词都不能代替执行环境的权限隔离。

管理 Prompt 时记录模板版本、适用模型、输入变量和输出约束。装配时检查变量、token 预算和敏感信息;用固定样本比较成功率、工具调用正确率、成本和延迟,必要时做小流量实验及版本回退。没有评测数据,就难判断一次改写是否有效。

JSON 输出

常见方式是让模型直接输出 JSON、使用接口提供的 JSON Schema 约束,或从工具调用参数中取得结构化数据。支持程度取决于模型和接口。

必须区分:合法 JSON、符合 schema、业务内容正确。普通 JSON 模式不等于严格符合 schema;即使格式正确,仍需检查字段含义、权限和业务约束,不能只靠提示词。