LangChain框架(二)---- 提示词模板

提示词模板

FewShotPromptTemplate/PromptTemplate
复制代码
FewShotPromptTemplate(
    examples=None,example_prompt=None,
    prefix=None,
    suffix=None,
    input_variables=None
)

参数:

  • examples:示例数据,list,内套字典
  • example_prompt:示例数据的提示词模板
  • prefix:组装提示词,示例数据前内容
  • suffix:组装提示词,示例数据后内容
  • input_variables:列表,注入的变量列表

实例

复制代码
from langchain_core.prompts import PromptTemplate,FewShotPromptTemplate
from langchain_community.llms.tongyi import Tongyi

# 示例的模板
example_template = PromptTemplate.from_template("单词:{word}, 反义词: {antonym}")

# 示例的动态数据注入 要求是list内部套字典
examples_data = [
    {"word": "大", "antonym": "小"},
    {"word": "高", "antonym": "低"},
]

FewShot_Prompt = FewShotPromptTemplate(
    example_prompt = example_template,      #示例数据模板
    examples = examples_data,               #示例数据(用于动态注入)
    prefix = "告诉我单词的反义词,我提供如下示例", #示例前缀
    suffix = "基于前面的内容回答我,{input}的反义词",  #示例后缀
    input_variables=['input']
)

prompt_value = FewShot_Prompt.invoke(input={"input": "左"}).to_string()
print(prompt_value)

model = Tongyi(model="qwen-max")
print(model.invoke(input=prompt_value))

程序运行结果

复制代码
D:\Programs\Python\Python314\python.exe E:\Python\LLM实例\LangChain简单使用\FewShot提示词模板.py 
D:\Programs\Python\Python314\Lib\site-packages\langchain_core\_api\deprecation.py:25: UserWarning: Core Pydantic V1 functionality isn't compatible with Python 3.14 or greater.
  from pydantic.v1.fields import FieldInfo as FieldInfoV1
告诉我单词的反义词,我提供如下示例

单词:大, 反义词: 小

单词:高, 反义词: 低

基于前面的内容回答我,左的反义词
左的反义词是右。

进程已结束,退出代码为 0
ChatPromptTemplate

支持注入任意数量的历史会话信息

历史会话信息并非静态的,而是随着对话的进行不断的积攒的,动态的

实例如下

复制代码
from langchain_core.prompts import ChatPromptTemplate,MessagesPlaceholder
from langchain_community.chat_models.tongyi import ChatTongyi

chat_prompt_template = ChatPromptTemplate.from_messages(
    [
        ("system","你是一个诗人,你可以作诗"),
        MessagesPlaceholder("history_message"),
        ("human","很好,再来一首吧"),
    ]
)

history_date = [
    ("human", "你来写一个唐诗"),
    ("ai", "白日依山尽,黄河入海流。欲穷千里目,更上一层楼"),
    ("human" , "做的不错,再来一首吧"),
    ("ai", "千山鸟飞绝,万径人踪灭。孤舟蓑笠翁,独钓寒江雪")
]

# StringPromptValue 类对象
prompt_text_value = chat_prompt_template.invoke({"history_message": history_date}).to_string()
print(prompt_text_value)

model = ChatTongyi(model="qwen2.5-vl-3b-instruct")
res = model.invoke(prompt_text_value)
print(res.content)

实例运行效果

相关推荐
金銀銅鐵14 分钟前
[Python] 为 Vole 机器语言实现图形化界面
python·程序员
小林ixn1 小时前
Python基础全梳理:从注释到函数,这些细节你都掌握了吗?
python·编程语言
sugar__salt1 小时前
Document 切割:RAG 知识库数据预处理实战
javascript·langchain·embedding·js·rag·cheerio
今天AI了吗1 小时前
Hermes Agent 搭建全流程:从本机试跑到可持续运行的个人 AI Agent
java·人工智能·python·学习·embedding
为啥全要学2 小时前
自注意力中随着根号dk的增大,qk点积的方差为什么也会增大
python·深度学习
来两个炸鸡腿3 小时前
【Datawhale2607】llm-algo-leetcode task02 基础算子
人工智能·python·大模型
庵中十三居士3 小时前
【纯AI无人工修改】AI Agent从0到1实战:50行Python手写核心循环,一次看懂所有Agent框架的底层逻辑
开发语言·人工智能·python
小二·3 小时前
多模态RAG实战:用LangChain+Milvus打造支持图文音视频的企业级知识库
langchain·音视频·milvus
有同事要进步4 小时前
python常见问题--2
开发语言·python
天天爱吃肉82184 小时前
# 商用车多体动力学整车仿真学习笔记(开篇总览)
人工智能·笔记·python·功能测试·学习·汽车