news 2026/8/29 9:53:14

AI开发-python-langchain框架(1-6“示例学习”—— 少样本提示(Few-Shot Prompting))

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AI开发-python-langchain框架(1-6“示例学习”—— 少样本提示(Few-Shot Prompting))

今天我们一起来看一段非常实用的LangChain 代码,它展示了如何用少样本提示(Few-Shot Prompting)的方式,让大模型更聪明、更准确地回答数学问题。我会把核心知识点拆解清楚,帮助大家理解每一步的作用和背后的原理。

什么是“少样本提示”(Few-Shot Prompting)?

  • 定义:在给大模型提问前,先提供几个输入-输出的示例,让模型“模仿”这些例子来回答新问题。
  • 作用:提升模型在特定任务上的表现,尤其适合结构化、规则明确的任务(比如数学计算、格式转换等)。
  • 类比:就像老师先讲两道例题,再让学生做第三道——学生更容易掌握规律。
知识点
说明
Few-Shot Prompting
通过少量示例引导模型行为,提升任务准确性
ChatPromptTemplate
构建多轮对话式提示的标准工具
FewShotChatMessagePromptTemplate
自动将示例列表转为对话历史
MessagesPlaceholder(本例未用但重要)
用于动态插入中间消息(如聊天历史)

看代码:

from langchain_core.prompts import ( ChatPromptTemplate, FewShotChatMessagePromptTemplate, MessagesPlaceholder, ) # 定义示例 examples = [ {"input": "2+2", "output": "4"}, {"input": "2+3", "output": "5"}, ] # 定义示例提示模板 example_prompt = ChatPromptTemplate.from_messages( [ ("human", "{input}"), ("ai", "{output}"), ] ) # 创建少样本提示模板 few_shot_prompt = FewShotChatMessagePromptTemplate( example_prompt=example_prompt, examples=examples, ) # 组装最终提示模板 final_prompt = ChatPromptTemplate.from_messages( [ ("system", "你是一位非常厉害的数学天才。"), few_shot_prompt, ("human", "{input}"), ] ) # 测试提示模板 test_input = "3+3" formatted_prompt = final_prompt.format_messages(input=test_input) print("格式化后的提示:") for msg in formatted_prompt: print(f"{msg.type}: {msg.content}") #调用大模型 from langchain_openai import ChatOpenAI from langchain_core.output_parsers import StrOutputParser import os #配置 Deepseek 密钥和模型参数 llm = ChatOpenAI( api_key=os.getenv("DEEPSEEK_API_KEY"), base_url=os.getenv("BASE_URL"), # Deepseek 的 API 基础地址 model="deepseek-v3:671b", # Deepseek 对话模型(可选:deepseek-chat-pro 等高级模型) temperature=0.7, # 温度参数(0-1,越低越稳定) max_tokens=1024 # 最大生成 tokens ) output_parser = StrOutputParser() chain = final_prompt | llm | output_parser response = chain.invoke({"input":"3的平方是多少?"}) print(response)

运行结果:

格式化后的提示: system: 你是一位非常厉害的数学天才。 human: 2+2 ai: 4 human: 2+3 ai: 5 human: 3+3 3的平方是 **9**。 计算过程: 3² = 3 × 3 = **9**
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/22 15:52:36

吐血推荐!9款AI论文写作软件测评:本科生毕业论文全攻略

吐血推荐!9款AI论文写作软件测评:本科生毕业论文全攻略 为什么需要一份AI论文写作工具测评? 随着人工智能技术的不断进步,越来越多的本科生开始借助AI工具辅助论文写作。然而,面对市场上琳琅满目的AI论文写作软件&am…

作者头像 李华
网站建设 2026/8/22 15:53:23

球类运动场馆数字化转型必备的预约小程序源码系统功能全览

温馨提示:文末有资源获取方式 在数字化浪潮下,场馆运营者急需工具来实现高效管理和用户增长。一款综合性的预订系统能成为关键助力。我们推出的这款场馆预订系统源码商业运营版,基于ThinkPHPUniApp技术,提供从预订到营销的全套解决…

作者头像 李华
网站建设 2026/8/22 3:33:40

跨浏览器CKEDITOR粘贴WORD图片格式统一的示例?

前端老哥的CMS编辑器“文档全能王”:一键导入粘贴,680元开箱即用! 兄弟们!我是西安一名“头发没秃但项目没少接”的前端程序员,最近刚接了个CMS企业官网外包活——客户要在后台新闻编辑器里加“文档导入Word粘贴”功能…

作者头像 李华
网站建设 2026/8/25 11:07:14

商业照明如何成为影响空间氛围与消费的关键因素?

于商业空间的设计以及运营当中,照明所充当的角色远远不只是给予基础光亮,它直接对空间氛围营造予以影响,对商品视觉吸引力进行提升,关乎顾客停留时段,甚至影响员工工作效率跟舒适度,所以,商业照明&#xff…

作者头像 李华
网站建设 2026/8/22 11:09:08

可视化奇异值分解

在前面几篇文章中我们已经写下了一系列方程,这些方程从数学上定义了奇异值分解 (SVD) 的各个分量以及它们与输入矩阵 M 的关系。现在,让我们通过一些可视化,使这些导出的分量更加具象化。图 1:方阵 M 的奇异值分解的 U 、 S 和 V …

作者头像 李华
网站建设 2026/8/24 15:49:15

如何快速复现数学建模论文?这10个AI工具能大幅提升效率

数学建模论文的复现与排版常面临时间紧、任务重的挑战,而AI工具的介入能大幅提升效率。评测显示,部分先进的AI写作工具具备自动优化公式排版、生成代码框架及辅助模型复现的能力,特别适合对论文质量与时效性要求较高的场景。这些工具在LaTeX兼…

作者头像 李华