SuperAPI AI 工具集

langchain-webhooks-events

智能体与模型

查看项目

更新于 10-15 23:27

技能介绍

用途:把 LangChain 1.0 链与智能体运行中的事件(工具调用、链结束、LLM 结束等)异步外发到外部系统,用于分析、审计与集成。

主要能力:基于 AsyncCallbackHandler 的 fire-and-forget 派发,用 asyncio.create_task 避免阻塞事件循环;按目标提供 HTTP Webhook、Kafka、Redis Streams、SNS 等 sink;Webhook 使用 HMAC-SHA256 签名,重试间隔 1s/5s/30s,失败进入死信队列;幂等键为 run_id + event_type + step_index;通过 config["callbacks"] 在调用时传入,使 LangGraph 子图也能触发回调;提供 drain() 在进程退出前冲刷在途任务。

使用方式:Python 3.10+,依赖 langchain-core >= 1.0, < 2.0、langgraph >= 1.0, < 2.0、httpx >= 0.27,以及 aiokafka、redis[hiredis] >= 5 或 aioboto3 之一;需准备事件接收端与存放在密钥管理中的共享密钥。调用时用 agent.ainvoke(..., config={"callbacks": [handler]}),不要用 with_config 绑定回调。

适用场景:服务端到服务端的事件派发、合作伙伴 Webhook 集成、高吞吐遥测、近实时任务队列与多订阅者扇出。

限制:仅覆盖服务端派发,UI 流式输出属于另一技能;不要用 FastAPI BackgroundTasks 派发事件;不要原样转发 astream_events(v2) 全部事件;SNS 为至多一次投递;4xx(除 429)不重试直接进死信队列。具体价格与平台支持资料未提供。