当前位置: 首页 > news >正文

大模型应用开发教程05 | 提示词工程基础(Prompt 入门)

理论部分

提示词(Prompt)并不是“对着模型说两句就行”,它更像是我们写给模型的一份需求说明书:要它做什么、用什么身份做、输出长什么样。

在大模型应用开发里,提示词的价值主要体现在两点:

  1. 让输出更稳定:减少“同一个问题每次回答都不一样”的漂移
  2. 让输出更可用:从“能看懂的自然语言”变成“能直接拿来用的结果”

写提示词时,最常用、也最有效的一套结构是:

  • 角色(System Prompt):设定模型扮演的身份、风格与边界
  • 任务(User Prompt):描述我们要它完成的任务
  • 输出要求:规定输出格式、长度、风格、是否要分点、是否要加示例

从接口角度看,systemuser是最常用的两类消息:

  • system:决定“怎么说话、按什么规则做事”
  • user:决定“要做什么事”

当我们觉得模型“很聪明但不听话”,通常不是模型不行,而是我们给的约束不够明确。


实践部分

本案例做什么

做一个“风格化文案生成器”,输入一个主题,再选择一种写作风格,让模型输出对应风格的文案。这个案例的重点不是文案本身,而是让我们直观看到:

  • 同一个任务,只要换一个system角色设定,输出就会发生明显变化
  • system适合放“长期稳定的规则/风格”
  • user适合放“每次变化的输入(主题)”

主要代码

本篇直接使用项目脚本:src/2.1_prompt_demo.py

importosfromdotenvimportload_dotenvfromopenaiimportOpenAI load_dotenv()client=OpenAI(api_key=os.getenv("ZHIPUAI_API_KEY"),base_url=os.getenv("ZHIPUAI_BASE_URL"))defgenerate_text(topic,style):""" 根据主题和风格生成文本 """# 1. 定义不同风格的 System Prompt (角色设定)styles={"xiaohongshu":"""你是一个小红书爆款文案博主。 请按照以下格式写一段文案: 1. 标题要吸引人,多用emoji(✨💖🍓)。 2. 正文要口语化,多用“家人们”、“绝绝子”。 3. 最后加上相关的标签(hashtags)。""","luxun":"""你模仿鲁迅先生的笔风。 1. 多用“大约”、“我想”、“是不行的”等句式。 2. 语气要深沉、犀利,带一点批判性。 3. 不要用现代网络用语。""","elon":"""You are Elon Musk. 1. Tweet style, short and punchy. 2. Talk about Mars, rockets, crypto, or future tech. 3. Use words like "First principles", "Orders of magnitude". 4. End with a bold prediction."""}system_prompt=styles.get(style)# 如果用户选了不存在的风格,默认用通用助手ifnotsystem_prompt:system_prompt="你是一个有用的助手。"# 2. 构造输入消息messages=[{"role":"system","content":system_prompt},{"role":"user","content":f"请以“{topic}”为主题写一段话。"}]print(f"正在生成 ({style}风格)...")response=client.chat.completions.create(model="glm-4-flash",messages=messages,temperature=0.8# 创作类任务,温度稍微高一点)returnresponse.choices[0].message.contentdefmain():print("=== ✨ 风格化文案生成器 ===")print("支持风格:xiaohongshu (小红书), luxun (鲁迅), elon (马斯克)")whileTrue:topic=input("\n请输入主题 (输入 q 退出): ")iftopic=='q':breakstyle=input("请输入风格 (xiaohongshu/luxun/elon): ")try:result=generate_text(topic,style)print("\n"+"="*20+" 生成结果 "+"="*20)print(result)print("="*50)exceptExceptionase:print(f"出错啦:{e}")if__name__=="__main__":main()

运行方式

在项目根目录执行:

python3 src/2.1_prompt_demo.py

运行结果示例

运行后会看到一个交互式程序,输入主题与风格即可生成结果,例如:

=== ✨ 风格化文案生成器 === 支持风格:xiaohongshu (小红书), luxun (鲁迅), elon (马斯克) 请输入主题 (输入 q 退出): 番茄炒蛋 请输入风格 (xiaohongshu/luxun/elon): xiaohongshu 正在生成 (xiaohongshu 风格)... ==================== 生成结果 ==================== ... ==================================================

建议我们用同一个主题分别测试三种风格,会明显感受到system角色设定对输出的影响。


总结

这一篇我们掌握了提示词工程的“最小可用方法”:通过System Prompt(角色/规则)+ User Prompt(任务/输入)的组合,让模型输出从“随缘发挥”变成“可控生成”。

http://www.jsqmd.com/news/1383916/

相关文章:

  • Vue3集成dxf-parser与three-dxf实现Web端CAD图纸预览
  • 8月整装开班!专攻四川高职单招,突破思维瓶颈高效提分 - 成都单招培训
  • 基于LiteLLM构建统一AI编程CLI:多模型集成与工程实践
  • 宝塔面板开心版风险解析与合规运维替代方案实践指南
  • vLLM服务垃圾Token问题排查与五级门禁防御系统构建
  • AI代码审查实战:从提示工程到CI/CD集成的工程化指南
  • 数据库自增ID深度解析:从AUTO_INCREMENT到分布式雪花算法选型指南
  • C语言学习指南:从零基础到项目实战,掌握指针与内存管理核心
  • Python函数入门不用怕!新手必学4个实用模板,看完直接上手写
  • OpenCLI:统一工具链的自动化框架,让一切皆可命令行
  • AI开发中的数据合规实践:从数据收集到模型部署的风险规避指南
  • 2026年青县设备机柜定制加工定做:严选厂家前,先看清这份避坑指南 - geo交流
  • Spring @Async异步编程实战:从线程池配置到性能调优
  • 2026年江苏知名的热熔焊接防水板价格优选指南:如何避开误区甄选实惠? - geo交流
  • 从源码解析AI Agent运行循环:Nanobot框架AgentLoop设计与实现
  • oh-my-codex:基于Node.js的CLI工具开发框架实战指南
  • MES 系统详解:概念、架构与核心功能
  • 2026年天津评价高的大众变速箱维修厂推荐哪个好?精选优质服务商指南 - geo交流
  • 顺丰同城订单充足片区解析及企业核心实力说明 - 服务品牌热点
  • Kubernetes ConfigMap配置管理:从核心原理到企业级实战指南
  • 2026年南京专业二手立式储罐电话怎么找?这份优选指南请收好 - geo交流
  • BetterGenshinImpact:解放双手的原神智能辅助工具全攻略
  • 数据流架构LoopLynx:突破LLM推理瓶颈的FPGA实践
  • 小目标跟踪
  • 基于Hologres与Mem0构建企业级大模型长记忆引擎:架构、部署与优化
  • 微信服务号消息跳转小程序全攻略:从权限配置到代码实现与避坑指南
  • ZRAM SWAP原理与配置:用内存压缩技术优化Linux系统性能
  • Windows/Linux系统下Giotto空间转录组分析工具完整安装指南
  • 基于Skill+MCP+Linear的AI自动化变更日志生成工作流实践
  • GPT-5.3-Codex底层逻辑解析:从代码补全到智能开发伙伴的演进