在Python中,这种复杂的workflow编排可以使用 LangGraph 框架来实现。LangGraph 是 LangChain 团队推出的工作流编排框架,核心思想是将业务流程建模为一张有向图: 节点(Node):每个节点是一个处理步骤(一个函数) 边(Edge):定义节点之间的执行顺序 状态(State):在节点之间传递的…
LangChain 简介 LangChain 是一个用于开发大语言模型应用的框架。它提供了: 统一的模型调用接口(支持 OpenAI、通义千问等多种模型) 提示词模板管理 会话记忆管理 工具调用支持 文档加载、切分、向量检索(RAG)支持 安装依赖: ``` pip install langchain-core langchain-openai l…
类型提示 Java是强类型语言——定义变量、写方法参数时,必须显式声明类型: ``` // Java:类型是强制的 String name = "张三"; int age = 25; public User login(String username, String password) { // ... } ``` 而学习Python语法时会发现,…
引例 假设我们要做一个"社交网络"系统,需要存储用户之间的关注关系,用来存储数据的数据库表如下: ``` -- 用户表 CREATE TABLE user ( id BIGINT PRIMARY KEY, name VARCHAR(64) ); -- 关注关系表 CREATE TABLE follow ( id BIGINT PRIMARY KEY…
Spring AI 本质上是 Spring 生态里的一套开发框架,它帮我们解决的问题从“访问数据库、访问 Redis、访问 MQ”,变成了“访问大模型”。 Spring AI 官方对它的定位可以理解为三句话: Spring AI 项目的目标,是让开发者可以更简单地开发包含人工智能能力的应用,而不需要引入不必要的复杂度。 如果大家了解 Py…
单点登录问题 在单体架构中的登录以及登录身份认证过程 在微服务架构中,按照相同的方式,再来分析下登录,以及登录身份认证过程: 假设用户在没有登录的情况下,发起查看购物车的请求: 当请求转发给订服务的时候,订单服务,订单服务发现用户的请求中没有包含JsessionId的Cookie,认为用户没登录,于是给前端返回需要登录的响应码,前端自动跳转到登录页…
简介 消息中间件是什么? 中间件:顾名思义 介于两者之间的一个技术 消息中间件:消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。 RocketMQ是什么? RocketMQ是阿里巴巴开源的一个消息中间件,是一个队列模型的消息中间件,具有高性能、高可靠、高实时、分布式特点。目前已贡献给apache 参…
索引的引入 索引(Index)是数据库中一种特殊的数据结构,它用于提高数据库查询的效率和速度。在数据库中,索引类似于书籍中的目录,我们可以根据关键字快速定位到需要查看的内容所在的位置。 在数据库中,常用的索引类型包括主键索引、唯一索引、普通索引等。不同的索引类型适用于不同的查询场景,开发人员需要根据实际需求选择合适的索引类型。 同时,在MySQL中…
Spring Data Elasticsearch为文档的存储,查询,排序等操作提供了一个高度抽象的模板。使用Spring Data ElasticSearch来操作Elasticsearch,可以较大程度的减少我们的代码量,提高我们的开发效率。 数据准备 在使用Spring Data Elasticsearch之前,我们先准备一些数据: PUT …
现在假设我们有如下的一张数据库表 现在假设我们有一个需求是从这张表中搜索“手机”或者“华为手机”的相关信息,我们会怎么做? select * from product where name like "%手机%"; select * from product where name like "%华为手机%"; 但是针对这张表,我们如果直接通过以上S…