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

LangChain使用Prompt02

1.设置提示

from langchain.prompts import ChatPromptTemplate
prompt_template = ChatPromptTemplate.from_messages(
    [
        ("system", "你是一位专业的翻译,能够将{input_language}翻译成{output_language},并且输出文本会根据用户要求的任何语言风格进行调整。请只输出翻译后的文本,不要有任何其它内容。"),
        ("human", "文本:{text}\n语言风格:{style}"),
    ]
)

2.输出提示模板

prompt_template.input_variables

[‘input_language’, ‘output_language’, ‘style’, ‘text’]

3.提示中输入值

prompt_value = prompt_template.invoke({"input_language": "英语", "output_language": "汉语", 
                                       "text":"I'm so hungry I could eat a horse", "style": "文言文"})
prompt_value

ChatPromptValue(messages=[SystemMessage(content=‘你是一位专业的翻译,能够将英语翻译成汉语,并且输出文本会根据用户要求的任何语言风格进行调整。请只输出翻译后的文本,不要有任何其它内容。’), HumanMessage(content=“文本:I’m so hungry I could eat a horse\n语言风格:文言文”)])

4.取出提示

prompt_value.messages

[SystemMessage(content=‘你是一位专业的翻译,能够将英语翻译成汉语,并且输出文本会根据用户要求的任何语言风格进行调整。请只输出翻译后的文本,不要有任何其它内容。’),
HumanMessage(content=“文本:I’m so hungry I could eat a horse\n语言风格:文言文”)]

5.输入模型

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

6.获得结果

response

AIMessage(content=‘吾今飢極,如欲食馬也。’, additional_kwargs={‘refusal’: None}, response_metadata={‘token_usage’: {‘completion_tokens’: 17, ‘prompt_tokens’: 109, ‘total_tokens’: 126, ‘completion_tokens_details’: {‘reasoning_tokens’: 0}}, ‘model_name’: ‘gpt-3.5-turbo-0125’, ‘system_fingerprint’: None, ‘finish_reason’: ‘stop’, ‘logprobs’: None}, id=‘run-9d752bd9-468e-4fe1-9ff9-e379561c957b-0’, usage_metadata={‘input_tokens’: 109, ‘output_tokens’: 17, ‘total_tokens’: 126})

7.取出结果

response.content

‘吾今飢極,如欲食馬也。’

8.多行示例

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": "口语"
    }
]

10.输入模型

for input in input_variables:
    response = model.invoke(prompt_template.invoke({"input_language": input["input_language"], "output_language": input["output_language"], 
                                                    "text":input["text"], "style": input["style"]}))
    print(response.content)

输出:
吾今饥饱难忍,实有食马之心也。
I am sorry for what thou hast done.
Oggi tempo fantastico
お前本当にイライラするな


http://www.kler.cn/a/349128.html

相关文章:

  • Matlab实现野马优化算法优化回声状态网络模型 (WHO-ESN)(附源码)
  • 算法:238.除自身以外数组的乘积
  • 浙大数据结构:11-散列3 QQ帐户的申请与登陆
  • 植物大战僵尸杂交版
  • 运行Springboot + Vue 项目
  • 回归本真 治愈心灵——汪青《在西行的路上》
  • 地平线与英伟达工具链 PTQ 工具功能参数对比与实操
  • Linux下以编译源码的方式安装Qt5与Qt6及其使用
  • AB路线——BFS+分层图
  • Git---Git打标签
  • ui入门
  • Antsword-labs靶机渗透
  • Python基础语法条件
  • 基础IO -- 理解文件(1)
  • 使用tgz包下载安装clickhouse低版本
  • BERT--详解
  • 嵌入式Linux:信号掩码
  • 写一篇assignment的感悟
  • Python爬虫之正则表达式于xpath的使用教学及案例
  • Flutter资源管理(四)