LangChain中使用Prompt01

1.引入提示模板

python 复制代码
from langchain.prompts import (
    SystemMessagePromptTemplate,
    AIMessagePromptTemplate,
    HumanMessagePromptTemplate,
)

2.设置系统提示

python 复制代码
system_template_text="你是一位专业的翻译,能够将{input_language}翻译成{output_language},并且输出文本会根据用户要求的任何语言风格进行调整。请只输出翻译后的文本,不要有任何其它内容。"
system_prompt_template = SystemMessagePromptTemplate.from_template(system_template_text)

3.输出系统提示

python 复制代码
system_prompt_template

SystemMessagePromptTemplate(prompt=PromptTemplate(input_variables=['input_language', 'output_language'], template='你是一位专业的翻译,能够将{input_language}翻译成{output_language},并且输出文本会根据用户要求的任何语言风格进行调整。请只输出翻译后的文本,不要有任何其它内容。'))

4.输出系统提示参数值

python 复制代码
system_prompt_template.input_variables

输出:['input_language', 'output_language']

5.设置用户提示

python 复制代码
human_template_text="文本:{text}\n语言风格:{style}"
human_prompt_template = HumanMessagePromptTemplate.from_template(human_template_text)

6.输出用户提示

python 复制代码
human_prompt_template.input_variables

输出:['style', 'text']

7.为系统提示输入值并输出

python 复制代码
system_prompt = system_prompt_template.format(input_language="英语", output_language="汉语")
system_prompt

输出:SystemMessage(content='你是一位专业的翻译,能够将英语翻译成汉语,并且输出文本会根据用户要求的任何语言风格进行调整。请只输出翻译后的文本,不要有任何其它内容。')

8.为用户提示设置值并输出

python 复制代码
human_prompt = human_prompt_template.format(text="I'm so hungry I could eat a horse", style="文言文")
human_prompt

输出:HumanMessage(content="文本:I'm so hungry I could eat a horse\n语言风格:文言文")

9.将提示输入模型

from langchain_openai import ChatOpenAI

model = ChatOpenAI(model="gpt-3.5-turbo",base_url="https://api.chatanywhere.tech/v1")

response = model.invoke([

system_prompt,

human_prompt

])

10.输出结果

python 复制代码
print(response.content)

输出:吾今飢甚,可食馬矣。

11.多个示例输入

python 复制代码
input_variables = [
    {
        "input_language": "英语",
        "output_language": "汉语",
        "text": "I'm so hungry I could eat a horse",
        "style": "文言文"
    },
    {
        "input_language": "法语",
        "output_language": "英语",
        "text": "Je suis désolé pour ce que tu as fait",
        "style": "古英语"
    },
    {
        "input_language": "俄语",
        "output_language": "意大利语",
        "text": "Сегодня отличная погода",
        "style": "网络用语"
    },
    {
        "input_language": "韩语",
        "output_language": "日语",
        "text": "너 정말 짜증나",
        "style": "口语"
    }
]

12.输出

python 复制代码
for input in input_variables:
    response = model.invoke([
        system_prompt_template.format(input_language=input["input_language"], output_language=input["output_language"]), 
        human_prompt_template.format(text=input["text"], style=input["style"])])
    print(response.content)

输出:

吾今飢甚,可食馬也。

I am sorry for what thou hast done

Oggi il tempo è fantastico.

お前、マジでイライラするな。

相关推荐
华农DrLai21 分钟前
什么是推荐系统中的负反馈?用户的“踩“和“不感兴趣“怎么用?
人工智能·算法·llm·prompt·知识图谱
Zfox_22 分钟前
【LangChain】快速上手
langchain·ai编程
耿雨飞9 小时前
第三章:LangChain Classic vs. 新版 LangChain —— 架构演进与迁移指南
人工智能·架构·langchain
小陈phd14 小时前
电商智能客服智能体——基于LangChain的电商智能客服 Agent 架构设计与实现(二)
数据库·microsoft·langchain
冲上云霄的Jayden15 小时前
LangGraph4j+LangChain4J 实验智能客服系统增加基于LLM 解决Prompt注入问题
prompt·agent·智能客服·langchain4j·agent安全·langgraph4j·prompt注入
tanis_316 小时前
MinerU LangChain 集成深度指南:一行代码搞定 PDF 到 RAG
langchain
Code_Artist16 小时前
LangChainGo构建RAG应用实况:切分策略、文本向量化、消除幻觉
机器学习·langchain·llm
Raink老师20 小时前
【AI面试临阵磨枪】详细解释 LLM、Token、Context、Prompt、Tool、MCP、Agent、Agent Skill 这些名词
人工智能·prompt·ai 面试
凌奕20 小时前
LangChain 持久化对话记忆:从入门到生产级实践
langchain
donglianyou20 小时前
大模型提示词工程Prompt
人工智能·prompt·ai编程·大模型应用开发