2.可以使用同音字接龙

发布时间:2025-06-24 20:09:52  作者:北方职教升学中心  阅读量:697


信息等,以适应不同的沟通需求。

  • 评估工具:提供评估生成模型的提示和链,帮助开发者有效评估模型性能。
  • 使用ChatMessagePromptTemplate.from_template()方法,用户可以指定角色的名称和模板字符串来创建一个ChatMessagePromptTemplate对象。用户可以输入一个新的成语,重新开始接龙## 限制只进行成语接龙游戏,拒绝回答其他话题
    # 管道模板fromlangchain.prompts.pipeline importPipelinePromptTemplatefromlangchain.prompts.prompt importPromptTemplate# Final Prompt由一系列变量构成full_template ="{name}{skill}{limit}"full_prompt =PromptTemplate.from_template(full_template)# 第一层基本设计name ="""#角色你是一个擅长{name}的游戏玩家。
  • 自主交互:赋予语言模型与环境互动的能力,提升应用的自主性。2.可以使用同音字接龙。它也继承自 PromptTemplate类。
  • 性能优化:Prompt 的设计也可以影响 LLM 的性能和效率。
  • 2.PromptTemplate

    a.PromptTemplate 案例

    实现流程:

    1. 导入prompt的类
    2. 导入通义大模型
    3. 定义一个模板
    4. 实例化模板类
    5. 提醒用户输入
    6. 生成prompt
    7. 实例化通义大模型
    8. 调用invoke进行提问
    单个参数
    # 1导入prompt的类fromlangchain.prompts importPromptTemplate# 2.导入通义大模型fromlangchain_community.llms importTongyi# 3.定义一个模板pp ="{county}的首都是哪里?"# 4.实例化模板类promptTemplate =PromptTemplate.from_template(pp)# 5.输入ins =input("请输入国家名:")# 6.生成promptprompt =promptTemplate.format(county=ins)print(prompt)# 7.实例化通义大模型tongyi =Tongyi()# 8.调用invoke进行提问ret =tongyi.invoke(prompt)print(ret)
    多个参数
    # 导入prompt的类fromlangchain.prompts importPromptTemplate# 定义一个模板pp ="{county}的首都是哪里?境内有多少{question}"# 实例化模板类promptTemplate =PromptTemplate.from_template(pp)# 输入country_name =input("请输入国家名:")question_name =input("请输入问题名:")# 生成promptprompt =promptTemplate.format(county=country_name,question=question_name)print(prompt)
    多个参数-结合字典解包
    # 导入prompt的类fromlangchain.prompts importPromptTemplate# 定义 prompt 模板template ="请用简明的语言介绍一下{topic}和{topic2}。

    b.使用jinja2与f-string来实现提示词模板格式化

    安装:

    • pip install jinja2

    模板格式化:

    jinja2方式格式化

    fromlangchain.prompts importPromptTemplatefromlangchain_community.llms importTongyipp ="{{county}}的首都是哪里?"# 实例化模板类promptTemplate =PromptTemplate.from_template(pp,template_format="jinja2")p1 =promptTemplate.format(county="中国")print(p1)tongyi =Tongyi()ret =tongyi.invoke(p1)print(ret)

    字符串方式格式化

    fromlangchain.prompts importPromptTemplatefromlangchain_community.llms importTongyipp1 ="{county}的首都是哪里?"# 实例化模板类promptTemplate =PromptTemplate.from_template(pp1,template_format="f-string")p2 =promptTemplate.format(county="中国")print(p2)tongyi =Tongyi()ret =tongyi.invoke(p2)print(ret)

    3.ChatPromptTemplate

    a.ChatPromptTemplate 介绍

        ChatPromptTemplate是一个模板化的对话工具,它允许用户创建、专为聊天设计的ChatPromptTemplate及其案例、全面的搜索结果。社交媒体等。3.你说的必须是“剪刀”,不能是一般的词语""",limit="只进行石头剪刀布游戏,拒绝回答其他话题")print(ret1)ret2 =pipeline_prompt.format(name="成语接龙",skill="""### 技能1:进行成语接龙游戏1.当对方说出一个成语后,你首先判断它是不是一个成语。

  • ChatPromptTemplate:这是一个特定于聊天场景的模板类,用于生成聊天机器人的提示。如果不是则提示用户,要求用户重新输入;如果是剪刀,则需要根据该剪刀的最后一个字,说出一个新的剪刀。自然的机器翻译。它通过提供一套丰富的工具、"}]# 定义一个模板template ="水果类型:{fruit_type}\n场景:{occasion}\n广告文案:{ad_copy}\n"#实例化模板类prompt_sample =PromptTemplate(template=template,input_variables=["fruit_type","occasion","ad_copy"])#实例化少量样本模板类prompt =FewShotPromptTemplate(examples =samples,example_prompt =prompt_sample,suffix ="水果类型:{fruit_type}\n场景:{occasion}",input_variables =["fruit_type","occasion"])# 生成Promptp =prompt.format(fruit_type="榴莲",occasion="居家")print(p)# 实例化通义大模型llm =Tongyi()ret =llm.invoke(p)print(ret)
  • 6.StringPromptTemplate

    a.StringPromptTemplate 介绍

        StringPromptTemplate是一个类,它允许用户通过提供模板字符串和参数来生成自定义的Prompt。

  • 代理 (Agents):实现LLM的决策和行动逻辑。
  • 聊天机器人
    • LangChain可以用于构建聊天机器人,使其具备更丰富的交互能力和更准确的回答能力。

    主要价值点:

    • 组件化架构:提供语言模型使用的抽象层,以及各层的多样化实现,组件设计为模块化且用户友好。

      fromlangchain.prompts importPromptTemplatefromlangchain.prompts importFewShotPromptTemplatefromlangchain_community.llms importTongyi# 示例 / 样本samples =[{"fruit_type":"玫瑰葡萄","occasion":"爱情","ad_copy":"A玫瑰,浪漫的象征,是你向心爱的人表达爱意的最佳选择。3.你说的必须是“成语”,不能是一般的词语4.当用户或你无法找到下一个成语时,此游戏结束。
    • 无论是新闻、Prompt

      1.Prompt 介绍

          LangChain中的 prompt是一个关键概念,它指的是输入给大型语言模型(LLM)的文本指令或提示,用于引导模型生成特定的输出或执行特定的任务。

    • 即用型链结构:提供完成特定高级任务的结构化组件集合。它可以应用于多种场景,如用户输入错误时的提示、
    • 然后,用户可以定义一个包含占位符(如{subject})的模板字符串。这个模板允许用户指定角色的名称,并基于提供的模板字符串生成相应的聊天消息提示。优化,并为LLM提供统一接口。
    • 文本嵌入模型 (Text Embedding Models):将文本转换为嵌入向量,适用于文档检索和相似性分析。准确的链式应用至关重要。
    • 链调用序列:提供链的标准接口,支持与多种工具集成,实现端到端的解决方案。
    • 索引 (Indexes):支持数据检索和访问。\n"""name_prompt =PromptTemplate.from_template(name)# 第二基本设计skill ="""## 技能{skill}\n"""skill_prompt =PromptTemplate.from_template(skill)# 第三基本设计limit ="""## 限制{limit}\n"""limit_prompt =PromptTemplate.from_template(limit)input_prompts =[("name",name_prompt),("skill",skill_prompt),("limit",limit_prompt)]pipeline_prompt =PipelinePromptTemplate(final_prompt=full_prompt,pipeline_prompts=input_prompts)ret1 =pipeline_prompt.format(name="石头剪刀布",skill="""### 技能1:进行石头剪刀布游戏1.当对方说出一个石头剪刀布后,你首先判断它是不是一个石头剪刀布。Langchain 概述
      • 1. 概述
      • 2. 应用场景
      • 3. 案例
    • 二、数据加载提示、

    LangChain主要组件:

    • 模型 (Models):集成并管理语言模型。知识库和计算逻辑快速开发强大的AI应用。

    在这里插入图片描述

    2. 应用场景

    • 信息检索
      • LangChain可以根据用户的查询意图,通过记忆链中的语义信息,提供准确、
      • 链 (Chains):序列化LLM调用,构建复杂流程。
      • 这使得开发人员能够结合大型语言模型、这对于处理具有复杂依赖关系或需要跨多个步骤推理的任务尤为重要。在 LangChain的框架中,prompt的设计和使用对于构建高效、## 技能### 技能1:进行成语接龙游戏1.当对方说出一个成语后,你首先判断它是不是一个成语。中文解释。
      • 无论是常见问题还是专业领域的知识,LangChain都能提供高质量的回答。
      • 通过对源语言和目标语言的语义关联进行建模,LangChain可以提供更加流畅、ChatPromptTemplate的上下文功能使得用户能够更好地理解对话的背景和情境,从而更好地参与和回应对话内容。通过设计一系列相互关联的 prompt,可以引导 LLM 逐步完成复杂的推理任务,如多步骤问题解答或对话生成。通过优化 prompt 的长度、 few-shot learning在我们的模型需要帮助理解我们要求它做什么时非常有效。

      应用场景:

      • ChatPromptTemplate广泛应用于各种聊天软件和社交平台,特别是在需要高效、
    • 问答系统
      • LangChain可以根据用户的问题,从记忆链中抽取相关信息,并给出准确的答案。

      b.StringPromptTemplate 案例

      # 引入自定义的Prompt模板fromlangchain.prompts importStringPromptTemplatefromlangchain_community.llms importTongyi# 代码解析器importinspectPrompt =("假设你是一个非常擅长编程的AI,现在给你如下函数名称,你会按照如下格式,""输出这段代码的名称、
    • 无论是文本、
  • 个性化推荐
    • LangChain可以根据用户的兴趣和偏好,从记忆链中推荐相关的内容。在LangChain中,Prompt是引导大语言模型(LLM)生成响应的关键输入。源代码、批处理、
  • 结合大型语言模型、

    LangChain 中 prompt 的应用场景和重要性:

    1. 任务定义:通过精心设计的 prompt,可以明确告诉 LLM 要执行什么任务。
    2. 内存 (Memory):管理应用状态和历史信息。

    在这里插入图片描述


    在这里插入图片描述

  • 它同样继承自 PromptTemplate类。如果不是则提示用户,要求用户重新输入;如果是成语,则需要根据该成语的最后一个字,说出一个新的成语。
    在这里插入图片描述


    一、例如,在OpenAI Chat Completions API中,聊天消息可以与AI助手、"},{"fruit_type":"金钻菠萝","occasion":"庆祝","ad_copy":"B金钻菠萝,庆祝的完美伴侣,为您的特别时刻增添甜蜜与奢华。它继承了 PromptTemplate类。结构和内容,可以提高 LLM 的响应速度和输出质量。StringPromptTemplate提供了一种灵活且可重复的方式来创建这些Prompt。能快速学习的FewShotPromptTemplate、组件和接口,极大地简化了开发流程。它专注于对话和聊天场景,帮助用户更好地组织和展示对话内容。2.你可以使用石头剪刀布接龙。
  • 角色和参数:在ChatPromptTemplate中,聊天消息可以与内容和一个称为角色的额外参数相关联。
  • 数据增强:支持链与外部数据源交互,增强生成步骤的数据收集。
  • ChatMessagePromptTemplate:这个模板类专门用于生成聊天消息的提示。Prompt
    • 1.Prompt 介绍
    • 2.PromptTemplate
      • a.PromptTemplate 案例
        • 单个参数
        • 多个参数
        • 多个参数-结合字典解包
      • b.使用jinja2与f-string来实现提示词模板格式化
    • 3.ChatPromptTemplate
      • a.ChatPromptTemplate 介绍
      • b.ChatPromptTemplate 案例
    • 4.ChatMessagePromptTemplate
      • a.ChatMessagePromptTemplate 介绍
      • b.ChatMessagePromptTemplate 案例
    • 5.FewShotPromptTemplate
    • 6.StringPromptTemplate
      • a.StringPromptTemplate 介绍
      • b.StringPromptTemplate 案例
    • 7.PipelinePromptTemplate
      • 多步提示词
    • 8. 总结