深度学习-127-LangGraph之基础知识(四)自定义状态添加额外字段的聊天机器人

news/2025/2/24 11:51:42

文章目录

  • 1 自定义状态
  • 2 自定义工具
    • 2.1 完善工具human_assistance
    • 2.2 浏览器工具baidu_search
  • 3 聊天机器人
    • 3.1 绑定工具的聊天模型
    • 3.2 聊天机器人(带记忆)
  • 4 调用图
    • 4.1 调用工具时中断
    • 4.2 人工提供信息恢复
    • 4.3 查询存储的状态
    • 4.4 手动更新状态
  • 5 参考附录

使用LangGraph,在状态中填充状态键,在不依赖消息列表的情况下定义复杂的行为,添加额外的字段。

1 自定义状态

到目前为止,我们依赖于一个带有一个条目的简单状态(消息列表)。你可以用这个简单的状态走得更远,但是如果你想在不依赖消息列表的情况下定义复杂的行为,你可以在状态中添加额外的字段。

在这里,我们将演示一个新场景,其中聊天机器人使用它的搜索工具来查找特定信息,并将它们转发给人类进行审查。让聊天机器人研究一个实体的生日。
我们将为状态添加name和birthday键:

from typing import Annotated
from typing_extensions import TypedDict
from langgraph.graph.message import add_messages

class MyState(TypedDict):
    messages: Annotated

http://www.niftyadmin.cn/n/5864295.html

相关文章

精选案例展 | 智己汽车—全栈可观测驱动智能化运营与成本优化

本案例为“观测先锋 2024 可观测平台创新应用案例大赛”精选案例,同时荣获IT168“2024技术卓越奖评选-年度创新解决方案”奖。 项目背景 近年来,中国汽车行业进入转型升级阶段,智能网联技术成为行业发展的核心。车联网、自动驾驶等技术的加…

每日一题——主持人调度(二)

主持人调度(二) 问题描述输入格式输出格式示例示例 1:示例 2: 第一种直观解法代码逻辑详解贪心算法的关键点复杂度分析 第二种思路代码解析完整代码与注释算法逻辑总结复杂度分析示例验证输入数据代码执行过程1. 提取并排序开始时…

MQTT实现智能家居------2、写MQTT程序的思路

举个最简单的例子: 手机------服务器-------家具 我们这里只看手机和家具的客户端: 手机:1)需要连接服务器 2)需要发布指令给服务器到家里的家具 3)接受来自于家里家具的异常状况 4)保持心…

当“欲望号街车”遇阻:解锁自由的疯狂选择题

朋友们,今天咱来唠唠人生这出大戏里超烧脑的一幕:自由这玩意儿,据说等于能力减去欲望。啥意思呢?打个比方,你能力是10分,欲望却有20分,那自由值就是个负数,你得被折腾得死去活来&…

Java 18~20 新特性

文章目录 一、Java 18 新特性1.1、UTF-8 作为默认字符集(JEP 400)1.2、简易 Web 服务器(JEP 408)1.3、代码片段标签 snippet(JEP 413)1.4、使用方法句柄重新实现反射核心(JEP 416)1.…

银河麒麟系统安装mysql5.7【亲测可行】

一、安装环境 cpu:I5-10代; 主板:华硕; OS:银河麒麟V10(SP1)未激活 架构:Linux 5.10.0-9-generic x86_64 GNU/Linux mysql版本:mysql-5.7.34-linux-glibc2.12-x86_64.ta…

财务运营域——电子影像系统设计

摘要 文章主要介绍了电子影像系统的设计与应用。随着企业规模扩大和业务复杂化,传统纸质文档管理方式暴露出诸多问题,电子影像技术应运而生。它通过数字化扫描、存储和管理纸质文档,实现高效检索、实时共享、安全存储和流程自动化&#xff0…

机器学习数学通关指南——链式法则

前言 本文隶属于专栏《机器学习数学通关指南》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和参考文献请见《机器学习数学通关指南》 正文 一、定义与公式 链式法则&a…