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

建设培训网站云南高端建设网站

建设培训网站,云南高端建设网站,wordpress 免费采集,网站开发计入什么会计科目ReAct Prompting: 原理、实现与应用 ReAct Prompting(推理与行动提示)是一种引导大型语言模型(LLM)进行推理和行动的策略,广泛应用于复杂问题求解、对话生成和自动化任务等领域。ReAct Prompting 通过将模型的思考过程…

ReAct Prompting: 原理、实现与应用

ReAct Prompting(推理与行动提示)是一种引导大型语言模型(LLM)进行推理和行动的策略,广泛应用于复杂问题求解、对话生成和自动化任务等领域。ReAct Prompting 通过将模型的思考过程结构化为一系列步骤,使模型能够像人类一样进行推理、执行行动,并根据反馈不断调整,达到更高的任务完成效果。本文将详细讲解 ReAct Prompting 的核心原理、具体步骤、实现方式,以及如何利用其变体 TQA(Think-Question-Answer)来辅助用户故事编写。

ReAct Prompting 的基本原理

ReAct Prompting 的核心思想是将模型的输出过程分为三个部分:思考(Thought)行动(Action)观察(Observation)。在每个步骤中,模型会进行推理思考、选择合适的行动,然后基于观察到的反馈继续调整推理。这种循环可以帮助模型在复杂任务中不断优化自己的输出。

ReAct Prompting 的典型步骤

一个典型的 ReAct Prompting 通常包含以下四个部分:

  1. 上下文提示(Context Prompting):为模型提供解决问题的背景信息。上下文可以帮助模型理解任务的具体场景和需求。

  2. ReAct 步骤(ReAct Steps):包括推理和行动的标准步骤。通常是“思考 - 行动 - 观察(Thought-Action-Observation)”的顺序。

  3. 推理(Reasoning):提示模型根据当前上下文进行思考和推理,例如“让我们一步步思考”或“根据现状进行推理”等。

  4. 行动指令集(Action Instruction Set):为模型提供一组可能的行动选择,使模型能够从中挑选适合当前推理的行动。

ReAct Prompting 模板的细节说明

在 ReAct Prompting 中,模板包含几个关键部分,每个部分都对应特定的业务场景和模型的交互方式:

  1. {context}:表示业务整体的解决方案,涵盖主要的业务背景信息。如果 LLM 提出的问题包含了对基础概念或流程的误解,那么需要重新修改业务背景说明,这就意味着要调整模板中用于表示业务上下文的部分。

  2. {story}:表示当前的用户故事。这个部分定义了当前需要讨论的用户操作场景。如果 LLM 提出的问题包含了对操作的误解,那么需要修改用户故事,即调整模板中表示用户故事的部分。

  3. {history}:表示之前回答过的历史记录,用于跟踪多轮对话中的上下文。如果 LLM 提出的问题仅仅是关于交互细节的,那么我们只需要在会话中回答这些细节,这些信息会被记录在 {history} 部分,供后续参考。

典型 ReAct Prompting 示例

以下是一个标准的 ReAct Prompting 示例,展示了如何在英文和中文环境下分别应用:

英文示例:
Context: You are a software troubleshooting expert assisting a user with installation issues.
ReAct Steps:
1. Thought: Analyze the user's description of the problem.
2. Action: Choose an action based on the analysis.
3. Observation: Adjust your reasoning based on user feedback.Example:
- Thought: User encountered a permission error during installation.
- Action: Suggest running the software as an administrator.
- Observation: User reported the issue persists.
中文示例:
上下文提示:你是软件排障专家,正在帮助用户解决安装问题。
ReAct 步骤:
1. 思考:分析用户描述的问题。
2. 行动:根据分析选择适当的行动。
3. 观察:根据用户反馈调整推理。示例:
- 思考:用户在安装时遇到权限错误。
- 行动:建议用户以管理员身份运行软件。
- 观察:用户反馈问题未解决。

TQA(Think-Question-Answer)在 ReAct Prompting 中的应用

在理解 ReAct Prompting 的推理行动模式后,TQA(想 - 问 - 答)只是其中一种变体,提供了不同的响应步骤。在 TQA 中,模型不仅进行思考(Thought),还会主动提问(Question)来获取更多细节,并利用收到的答案(Answer)来丰富推理过程。TQA 特别适合用于编写用户故事的验收条件。

TQA 示例 Prompt 用于编写用户故事验收条件

以下是 TQA 模板的典型提示词,并附有注释说明每个部分的设计意图:

You are a business analyst who is familiar with specification by example. I’m the domain expert.
// 你是一个熟悉“示例驱动规格说明”的业务分析师,而我是领域专家。===CONTEXT{context}===END OF CONTEXT
// 提供上下文背景信息,帮助模型了解任务的具体场景和需求。
// {context} 表示业务整体的解决方案。如果 LLM 提出的问题包含对基础概念或流程的误解,需要调整这里的业务背景信息。===USER STORY{story}===END OF USER STORY
// 提供当前需要分析的用户故事,作为 ReAct 推理的输入。
// {story} 表示当前的用户故事。如果 LLM 提出的问题包含对操作的误解,需要调整这个部分。Explain the user story as scenarios. Use the following format:
// 使用场景解释用户故事,并遵循下面的格式进行描述。Thought: you should always think about what is still uncertain about the user story. Ignore technical concerns.
// 思考:模型需要思考用户故事中的不清晰部分,不涉及技术细节。Question: the question to ask to clarify the user story
// 问题:提出问题帮助澄清用户故事中的不确定性。Answer: the answer I responded to the question
// 回答:领域专家根据问题给出解答。… (this Thought/Question/Answer repeat at least 3 times, at most 10 times)
// …(思考-问题-回答的循环至少执行 3 次,最多不超过 10 次)Thought: I know enough to explain the user story
// 思考:当模型认为已经了解足够信息时,停止提问。Scenarios: List all possible scenarios with concrete example in Given/When/Then style
// 场景:模型最终将用户故事转化为多个具体的情景,使用 Given/When/Then 格式列出。
{history}{input}
// {history} 表示之前回答的历史记录。如果 LLM 提出的问题仅关于交互细节,可以直接在会话中回答,这些信息会被记入历史记录。

通过 LangChain 实现 ReAct Agent

LangChain 是一个用于将 LLM 集成到复杂应用中的框架,它支持通过定义 Prompt Template、Memory 和 Agent 实现 ReAct 提示词的自动化应用。以下是 ReAct Agent 的核心组件:

  1. Prompt Template:定义 TQA 模板的格式,包括上下文提示、思考指令和行动指令。

  2. Memory:用于存储模型的思考和观察,帮助在多轮对话中积累信息。

  3. Agent:通过调用 LLM 执行 ReAct 步骤,自动完成推理、提问和响应。

LangChain 实现 TQA 的示例代码
from langchain.agents import initialize_agent, Tool
from langchain.prompts import PromptTemplate
from langchain.llms import OpenAI# 定义 TQA 模板
tqa_prompt = PromptTemplate(input_variables=["context", "story"],template="""You are a business analyst familiar with specification by example. I’m the domain expert.CONTEXT: {context}END OF CONTEXTUSER STORY: {story}END OF USER STORYExplain the user story as scenarios. Use the following format:Thought: you should always think about what is still uncertain about the user story. Ignore technical concerns.Question: the question to ask to clarify the user story.Answer: the answer I responded to the question.(Repeat the Thought/Question/Answer cycle at least 3 times, but not more than 10 times.)Thought: I know enough to explain the user story.Scenarios: List all possible scenarios with concrete examples in Given/When/Then style."""
)# 定义 LLM
llm = OpenAI(model="text-davinci-003")# 初始化 ReAct Agent
react_agent = initialize_agent(tools=[Tool(prompt=tqa_prompt, llm=llm)],agent_type="react"
)# 提供上下文和用户故事
context = "This is the business context explaining core concepts."
story = "User wants to be able to reset their password via email."# 执行 ReAct Agent
output = react_agent.run(context=context, story=story)
print(output)

TQA 实现的策略分析

  • 引导模型思考与提问:通过上下文提示引导模型识别不确定性,并进行结构化提问。每次的提问和回答循环帮助逐步

澄清用户故事中的细节。

  • 关注业务逻辑:在推理时忽略技术问题,确保输出的内容始终围绕业务逻辑展开。
  • 自动生成验收场景:最终,TQA 的输出会将用户故事转换为多个验收条件,提供清晰、具体的场景描述。

结论

ReAct Prompting 与 TQA 模板为 LLM 的推理与行动提供了一套明确的框架,使其能够在复杂任务中更好地理解上下文,自动生成高质量的用户故事验收条件。这种方法不仅提高了 LLM 的交互质量,也为业务分析、测试设计等场景提供了强有力的支持。通过 LangChain 等工具的集成,ReAct Prompting 可以方便地应用于各类自动化任务中,为用户带来显著的效率提升。

http://www.yayakq.cn/news/402815/

相关文章:

  • 南宁网站推广v1温州网站网络公司
  • 东阳实惠营销型网站建设厂家在线免费看1921完整版
  • 西安网站建设云速html简单网页
  • 网站 逻辑结构天津网站建设开发
  • 学会网站开发有什么好处discuz应用中心模板
  • 做ppt找图片网站南宁网站建设长春
  • 手机网站建设介绍discuz网站建设教学视频教程
  • 怎样才能建网站星月教你做网站
  • 企业网站内容策划建站公司
  • 网站制作中企动力优泰安 网站建设
  • wordpress主题的网站模板国内的平面设计网站
  • 四个免费h5网站网站建设合作品牌
  • 统计 网站关键字 布局毕业设计可以做哪些简单网站
  • 取消网站备案盘锦市网站建设
  • 商丘网站开发网站怎么修改模板内容
  • 做图片网站赚不赚钱网络平台推广运营培训
  • 建网站那个好给我一个网站2021
  • 电子商务平台 网站 建设方式西安网页制作工作室
  • 做网站费用滁州淮安市做网站的公司
  • 阿里巴巴国际站运营培训信息流广告代理商的盈利模式
  • 北京网站设计公司哪家公司好易语言怎么做网站
  • 怎么做网站策划的模板专业做网站方案ppt
  • 湖南建设厅网站首页做有网被视频网站
  • 上海先进网站建设公司义乌网站建设工作室
  • 留言网站模板专业的河南网站建设公司排名
  • 平阳网站制作网站做xss过滤
  • 深圳国外网站建设wordpress 远程调用函数
  • 离线网站制作wordpress 模板制作
  • 网站建设准备工作网站留言板带后台模板
  • 广告图片网站源码wordpress好用的商城主题