语言模型是怎么工作的?
理解Prompt为什么有效,要从模型的底层原理说起。大语言模型本质上是一个下一个词预测器(next-token prediction)。给定一段文字,模型计算"接下来最可能出现的词"的概率分布,然后从这个分布中采样一个词,再继续预测下一个词……不断循环,直到生成完整输出。
Prompt就是你提供的"上文"。模型读完你的Prompt,计算出接下来最可能的续写内容,这就是模型的"回答"。所以,Prompt工程的本质是:引导模型的概率分布,让最有用的输出变成最高概率的选择。
Temperature参数的含义
Temperature控制采样时的"随机程度":
- temperature=0:每次都选概率最高的词,输出确定性强,适合代码生成、数据提取等需要稳定输出的场景
- temperature=0.7(通常默认值):适度随机,既有创意又不失控
- temperature=1.0+:高度随机,输出多样但可能不连贯,适合头脑风暴
为什么同一个问题不同写法差异这么大?
因为不同的Prompt激活了模型知识库中不同的"模式"。模型训练时见过无数种文章、代码、对话、教程……当你的Prompt更接近某种模式,模型就会按那种模式输出。
5组坏Prompt vs 好Prompt对比
① 信息提取
❌ 坏:帮我提取信息
✅ 好:从下面的文本中提取所有人名和对应职位,以JSON格式输出,格式为{"name": "...", "title": "..."}的数组
② 代码生成
❌ 坏:写一个登录接口
✅ 好:用Spring Boot 3 + Spring Security写一个JWT登录接口,包含参数校验、异常处理、统一返回Result<T>,不要写注释以外的解释
③ 文章总结
❌ 坏:总结一下这篇文章
✅ 好:用3句话总结这篇文章的核心观点,每句话不超过30字,用数字编号列出
④ 翻译任务
❌ 坏:翻译这段话
✅ 好:将下面的技术文档从英文翻译成中文,保持专业术语不变(如API、SDK等),风格正式,不要加任何解释
⑤ 角色设定
❌ 坏:你是一个助手,帮我分析股票
✅ 好:你是一位专注A股的量化分析师,擅长技术面分析。分析时必须给出明确的买入/持有/减仓建议和具体价位,不要模糊表达。
Prompt越精确,输出越可控。把你期望的输出格式、约束条件、背景信息都写清楚,AI才能真正"听话"。