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

关于教育网站的策划书青海网站建设 小程序开发

关于教育网站的策划书,青海网站建设 小程序开发,住房和城乡建设部网站资质查询,台州优化排名推广示例代码: def pop_dialog_state(state: State) -> dict:"""弹出对话栈并返回到主助手。这让整个对话流程图可以明确追踪对话流,并将控制权委派给特定的子对话图。"""messages []if state["messages"][-1]…

示例代码:

def pop_dialog_state(state: State) -> dict:"""弹出对话栈并返回到主助手。这让整个对话流程图可以明确追踪对话流,并将控制权委派给特定的子对话图。"""messages = []if state["messages"][-1].tool_calls:# 注意:目前没有处理 llm 并行调用工具的边缘情况messages.append(ToolMessage(content="恢复与主助手的对话。请回顾过去的对话内容,并根据需要协助用户。",tool_call_id=state["messages"][-1].tool_calls[0]["id"],))return {"dialog_state": "pop","messages": messages,}self.builder.add_node("leave_skill", pop_dialog_state)
self.builder.add_edge("leave_skill", "primary_assistant")

详细解释

  1. 函数定义与文档字符串

    def pop_dialog_state(state: State) -> dict:"""弹出对话栈并返回到主助手。这让整个对话流程图可以明确追踪对话流,并将控制权委派给特定的子对话图。"""
    
    • 作用:定义了一个名为 pop_dialog_state 的函数,该函数接收一个 state 对象,并返回一个字典。
    • 目的:当对话过程中需要结束当前子对话或技能,并返回主助手接管对话时,就会调用这个函数。
    • 解释:所谓“弹出对话栈”就是结束当前技能的状态,恢复到上一级(主助手)的控制状态。
    • 举例:如果用户正在使用某个子技能(如航班查询),而后决定结束该技能,系统就会调用这个函数返回到主助手。
  2. 初始化消息列表

    messages = []
    
    • 作用:创建一个空列表,用于存储后续生成的消息。
    • 解释:在返回的字典中,这个列表会包含需要发送给用户的工具消息。
  3. 判断是否存在工具调用

    if state["messages"][-1].tool_calls:
    
    • 作用:检查 state 对象中最后一条消息是否包含工具调用(tool_calls)。
    • 解释:只有当最后一条消息中有工具调用信息时,才需要生成一条恢复对话的消息。
  4. 生成工具消息

    messages.append(ToolMessage(content="恢复与主助手的对话。请回顾过去的对话内容,并根据需要协助用户。",tool_call_id=state["messages"][-1].tool_calls[0]["id"],)
    )
    
    • 作用:创建一个 ToolMessage 对象,并将其添加到 messages 列表中。
    • ToolMessage 内容说明
      • “恢复与主助手的对话”:说明当前对话将回到主助手,由主助手接管。
      • “请回顾过去的对话内容,并根据需要协助用户”:提示主助手参考之前的对话记录,继续协助用户解决问题。
    • 工具调用 ID
      • state["messages"][-1].tool_calls[0]["id"] 中提取 ID,用于标识此次工具调用的关联信息。
    • 举例:假设 state["messages"][-1].tool_calls[0]["id"] 的值为 "abc123",那么生成的 ToolMessage 会带有 tool_call_id="abc123"
  5. 返回新的对话状态和消息

    return {"dialog_state": "pop","messages": messages,
    }
    
    • 作用:构造一个字典,包含两个键:
      • "dialog_state" 设置为 "pop",表示当前对话状态已经弹出,返回到上一级对话。
      • "messages" 包含前面生成的工具消息列表。
    • 解释:这一步将更新系统的对话状态,同时传递消息,指示主助手接管对话。
  6. 将节点和边添加到对话图中

    self.builder.add_node("leave_skill", pop_dialog_state)
    self.builder.add_edge("leave_skill", "primary_assistant")
    
    • 作用
      • add_nodepop_dialog_state 函数作为一个节点,命名为 "leave_skill"
      • add_edge"leave_skill" 节点与 "primary_assistant" 节点连接起来。
    • 解释
      • 当对话流程经过 "leave_skill" 节点时,就会执行 pop_dialog_state 函数,更新对话状态。
      • 之后,对话流会继续沿着边转移到 "primary_assistant",即让主助手重新控制对话。
    • 举例:假如用户结束了当前技能的使用,系统会调用 "leave_skill" 节点,执行 pop_dialog_state,然后自动转到主助手处理后续对话。

总结

这段代码的主要目的是在对话系统中实现“退出当前技能/子对话”的功能。通过调用 pop_dialog_state 函数:

  • 更新对话状态:将当前状态设置为 "pop",表示回退到上一层或主对话状态。
  • 发送恢复消息:生成一条工具消息,提示系统回到主助手,并提醒主助手查看历史对话以便继续辅助用户。
  • 连接对话图节点:通过添加节点和边,将此状态变化集成到整个对话流程图中,使系统能自动将对话权交还给主助手。

例如,当用户在使用航班查询技能后决定退出并交回主助手时,系统会通过该方法将状态弹出,并将对话控制权切换给主助手,从而确保整个对话流程能够顺畅进行。


文章转载自:

http://tAOmELby.hzryL.cn
http://CKnA2nhi.hzryL.cn
http://zNFnrWmS.hzryL.cn
http://TTr0H6UG.hzryL.cn
http://sLMPodyq.hzryL.cn
http://MZkB81I3.hzryL.cn
http://mWKCiJKz.hzryL.cn
http://UpQh7bE1.hzryL.cn
http://ASJ1fRCD.hzryL.cn
http://GYqZ2xmL.hzryL.cn
http://a4wvYBRC.hzryL.cn
http://dBh3GKfM.hzryL.cn
http://NygnjE5F.hzryL.cn
http://9Tvv8olP.hzryL.cn
http://6k8GkpHZ.hzryL.cn
http://sZN7Bfuj.hzryL.cn
http://25t4aJjT.hzryL.cn
http://2ysB1xya.hzryL.cn
http://ytjcGwzi.hzryL.cn
http://ZqHLwmKF.hzryL.cn
http://7FrJjZbF.hzryL.cn
http://s13uANxL.hzryL.cn
http://ApstghdA.hzryL.cn
http://seSXXIEt.hzryL.cn
http://zn7Wa0EL.hzryL.cn
http://cXFNf6L1.hzryL.cn
http://nCwwOph1.hzryL.cn
http://tNnqhKo3.hzryL.cn
http://62V7Y8Iw.hzryL.cn
http://PVRsuQEd.hzryL.cn
http://www.dtcms.com/wzjs/633245.html

相关文章:

  • 网站后台管理系统展望常用网站后缀
  • 外贸网站怎么做seo网站开发介绍费
  • 石家庄网站建设布局软文推广代理
  • 怎样做境外网站seo网络推广培训班
  • 青岛网站建设维护企业网站建设的作用
  • 信用徐州网站建设情况网站技术支持什么意思
  • wordpress站点统计小工具做食品怎样选网站
  • 专门做护理PDCA的网站网站开发软件有
  • wap网站开发框架wordpress4.7.4漏洞
  • 百度网站 收录企业年报查询
  • 深圳网站设计南京火车头wordpress发布模块4.9
  • 站长推广网网站模板有哪些内容
  • 设计最简单的企业网站珠海网站建设科速互联
  • 衡水网站建设公司联系电话陕西专业网站建设公司
  • 网站招生宣传怎么做购物 网站建设的市场分析
  • 网站开发要花多少钱wordpress主题giligili
  • 2012系统 做网站无锡做食品网站的公司
  • 重庆快速网站备案怎么到国外网站去接模具订单做
  • 网站快照工具网站开发平台 运行平台
  • 做网站西域数码阿里云wordpress调用文章某个分类
  • 华汇建设集团有限公司网站专业的seo网站优化公司
  • 衣服商业网站建设策划书wap建站系统
  • 建站之星成品网站源码网站建设新手教学视频
  • 普通网站备案手机网站的模板下载
  • 自己做网站网页文件在哪里绿色食品销售网站建设
  • 北京建设监督网站wordpress离线发布
  • 泉州网站建设方案优化厦门seo优
  • 怎么找到域名做的那个网站阿里云有主体新增网站
  • 教做网站的学校山西省太原建设工程信息网站
  • 通过邮箱查注册网站中山网站建设是什么