SuperAPI AI 工具集

langgraph-functional-api

编程与开发

查看项目

更新于 10-16 05:07

技能介绍

用途:该技能面向 LangGraph 的 Functional API,帮助用命令式、Python 原生方式编写有状态智能体工作流,通过 @entrypoint 与 @task 装饰器以较少样板代码获得 LangGraph 的持久化、流式输出和人工介入(human-in-the-loop)能力,尤其适合包装已有智能体或框架。

主要能力:@entrypoint 定义应用顶层入口并配合 checkpointer 实现持久化;@task 包装单个操作,支持独立检查点与重试(RetryPolicy);可并发启动多个任务并调用 .result() 收集结果;支持在任务内用 interrupt 暂停等待人工输入,再用 Command(resume=...) 恢复;支持 exit、async、sync 三种持久化模式(RunControl);支持 updates、messages 等流式模式;可在 Graph API 节点内使用 @task 混合两种 API;可包装 CrewAI、AutoGen、Strands 等第三方智能体。

使用方式:安装与导入来自 langgraph.func 的 entrypoint、task,以及 langgraph.checkpoint.memory 的 InMemorySaver;用 @entrypoint(checkpointer=InMemorySaver()) 装饰工作流函数,用 @task 装饰操作函数;通过 workflow.invoke(inputs, config) 调用,config 中传 configurable.thread_id 以启用持久化;用 workflow.stream(inputs, config, stream_mode=...) 获取流式输出。

适用场景:包装已有智能体、命令式顺序逻辑与分支、无需定义图拓扑的并行任务、为未用 LangGraph 编写的智能体添加持久化与流式、需要人工审批的流程。

限制:资料未提供具体版本要求、性能数据、收费信息与部署细节;持久化模式在性能与崩溃恢复之间存在取舍,sync 最慢但最持久,exit 最快但不支持运行中崩溃恢复。选择上,需要显式图拓扑或可视化时用 Graph API,命令式逻辑、包装已有智能体、动态数量并行任务时用 Functional API。