AI Agent开发学习系列 - LangGraph(5): 有多个节点的Sequential Graph

在这个LangGraph示例中,多个顺序节点的处理机制展示了工作流的线性执行过程:通过定义两个独立的节点函数(first_note和second_node),每个节点负责处理状态的不同部分,然后使用add_edge方法将它们按顺序连接起来,形成一条从入口点到出口点的执行路径。这种设计使得复杂任务可以分解为多个简单的步骤,每个节点都可以独立开发和测试,同时保持整个工作流的清晰性和可维护性。

from typing import TypedDict
from langgraph.graph import StateGraph

class AgentState(TypedDict):
    name: str
    age: str
    final: str

def first_note(state: AgentState) -> AgentState:
    """This is the first node of our sequence"""

    state["final"] = f"Hi {state["name"]}"
    return state

def second_node(state: AgentState) -> AgentState:
    """This is the second node of our sequence"""

    state["final"] = state["final"] + f", you are {state["age"]} years old!"
    return state

graph = StateGraph(AgentState)

graph.add_node("first_note", first_note)
graph.add_node("second_node", second_node)

graph.set_entry_point("first_note")
graph.add_edge("first_note", "second_node")
graph.set_finish_point("second_node")

app = graph.compile()

from IPython.display import Image, display
display(Image(app.get_graph().draw_mermaid_png()))

answers = app.invoke({"name": "Alex", "age": "25"})
print(answers["final"])

运行结果:
在这里插入图片描述

Hi Alex, you are 25 years old!

add_edge 是 LangGraph 中用于连接节点的核心方法,它定义了工作流中节点之间的执行顺序。

关键特点

  • 顺序控制: 指定节点执行的先后顺序
  • 线性流程: 从源节点到目标节点的单向连接
  • 状态传递: 自动将状态从一个节点传递到下一个节点
### 工业 Agent 和 RAG 技术的实现及应用 #### 1. 工业设备智能预维护中的 RAG 实现 RAG(Recurrent Attentive Graph)是一种基于图神经网络的技术,在工业设备智能预维护中具有重要作用。它通过构建设备运行状态的时间序列数据与拓扑关系,能够有效预测潜在故障并优化维护策略[^2]。 以下是其实现的关键环节: - **知识提取**:从历史维修记录、传感器数据以及专家经验中提取有价值的信息。 - **模型训练**:利用时间序列分析和注意力机制学习设备的状态变化规律。 - **实时监控**:部署在线监测系统,动态捕捉异常信号。 ```python import numpy as np from sklearn.model_selection import train_test_split from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense, LSTM, Dropout def build_lstm_model(input_shape): model = Sequential() model.add(LSTM(64, input_shape=input_shape)) model.add(Dropout(0.2)) model.add(Dense(1, activation='sigmoid')) model.compile(optimizer='adam', loss='binary_crossentropy') return model data = np.random.rand(1000, 50, 1) # 假设输入为50步的历史数据 labels = np.random.randint(0, 2, size=(1000,)) X_train, X_test, y_train, y_test = train_test_split(data, labels, test_size=0.2) model = build_lstm_model((X_train.shape[1], X_train.shape[2])) history = model.fit(X_train, y_train, epochs=10, batch_size=32, validation_data=(X_test, y_test)) ``` #### 2. Agent 技术在工业自动化中的作用 Agent 是一种自主决策实体,能够在复杂环境中执行特定任务。在工业场景下,Agent 可用于生产线调度、质量控制等领域。其主要功能包括感知环境、制定计划以及采取行动[^1]。 例如,结合 RAG 的知识库,Agent 能够快速响应突发状况,并给出最优解决方案。这种集成方式不仅提高了系统的智能化水平,还降低了人工干预的需求。 #### 3. 图形化 RAG (GraphRAG) 面临的挑战及其解决方法 尽管图形化的 RAG 方法具备强大的表达能力,但在实际落地过程中仍存在诸多困难。这些问题主要包括计算资源消耗大、算法可扩展性差等方面[^3]。为此,微软提出了针对工业级需求的设计方案: - 使用分布式存储管理大规模节点- 引入近似最近邻搜索加速查询过程; - 结合强化学习提升推理效率。 以上改进措施显著增强了 GraphRAG 对于真实世界问题的支持力度。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值