当前位置: 首页 > news >正文

17、LangChain 前端:简介

介绍如何为createAgent构建的智能代理开发富交互前端,涵盖架构设计、核心模式、高级流处理及集成方案。

文章目录

    • 一、概述
    • 二、架构设计
      • 2.1 架构流程图
      • 2.2 后端实现(Python)
      • 2.3 前端钩子(多框架支持)
    • 三、核心开发模式
      • 3.1 渲染消息与输出
        • 3.1.1 Markdown 消息
        • 3.1.2 结构化输出
        • 3.1.3 推理过程可视化
        • 3.1.4 生成式 UI
      • 3.2 显示代理操作
        • 3.2.1 工具调用可视化
        • 3.2.2 人机协同审批(Human-in-the-loop)
      • 3.3 管理对话
        • 3.3.1 分支聊天
        • 3.3.2 消息队列
      • 3.4 高级流处理
        • 3.4.1 流连接与重连
        • 3.4.2 时间旅行
    • 四、集成方案
      • 4.1 AI Elements
      • 4.2 assistant-ui
      • 4.3 OpenUI

一、概述

LangChain Frontend 提供了一套完整的方案,帮助开发者为createAgent构建的智能代理快速搭建实时流交互的生成式 UI。无论是基础的消息渲染,还是复杂的人机协同审批、时间旅行调试等高级流程,都能通过标准化模式实现。

核心优势:

  • 跨框架支持(React/Vue/Svelte/Angular)
  • 实时流数据同步(消息、工具调用、中断状态等)
  • 丰富的预设 UI 模式
  • 兼容主流组件库和生成式 UI 框架

二、架构设计

所有前端模式均遵循统一架构,核心分为「后端代理流」和「前端状态管理」两部分:

2.1 架构流程图

后端:createAgent → 编译 LangGraph 图 → 暴露 Streaming API ↓ 前端:useStream 钩子 → 连接 API → 响应式状态 → 任意框架渲染

2.2 后端实现(Python)

通过createAgent构建代理并启用 checkpoint 持久化,确保流状态可恢复:

fromlangchainimportcreate_agentfromlanggraph.checkpoint.memoryimportMemorySaver# 初始化智能代理(支持 OpenAI/Anthropic 等模型)agent=create_agent(model="openai:gpt-5.4",# 模型指定(格式:提供商:模型名)tools=[get_weather,search_web],# 绑定工具集checkpointer=MemorySaver(),# 启用状态持久化)

2.3 前端钩子(多框架支持)

useStream钩子封装了流连接逻辑,提供统一的响应式状态,支持主流前端框架:

// Reactimport{useStream}from"@langchain/react";// Vueimport{useStream}from"@langchain/vue";// Svelteimport{useStream}from"@langchain/svelte";// Angularimport{useStream}from"@langchain/angular";

三、核心开发模式

3.1 渲染消息与输出

3.1.1 Markdown 消息

解析并渲染流式传输的 Markdown 内容,支持代码高亮、表格、列表等格式。

3.1.2 结构化输出

将代理的类型化响应(如 JSON 数据)渲染为自定义 UI 组件,而非纯文本。

3.1.3 推理过程可视化

将模型的思考过程(Reasoning Tokens)显示为可折叠区块,提升交互透明度。

3.1.4 生成式 UI

通过json-render从自然语言提示中直接生成用户界面组件。

3.2 显示代理操作

3.2.1 工具调用可视化

将工具调用结果封装为类型安全的 UI 卡片,支持加载状态、错误提示、结果展示等场景。

3.2.2 人机协同审批(Human-in-the-loop)

在代理执行关键操作前暂停,提供「批准/拒绝/编辑」工作流,支持人工干预。

3.3 管理对话

3.3.1 分支聊天

支持编辑历史消息、重新生成响应、切换对话分支,提升交互灵活性。

3.3.2 消息队列

支持批量提交多条消息,代理将按顺序处理,避免并发冲突。

3.4 高级流处理

3.4.1 流连接与重连

支持断开后重新连接运行中的代理流,不丢失已有进度。

3.4.2 时间旅行

查看对话历史中的任意检查点(Checkpoint),支持从指定节点恢复对话。


四、集成方案

useStream钩子是 UI 无关的,可与任意组件库或生成式 UI 框架集成:

4.1 AI Elements

LangChain 官方提供的shadcn/ui可组合组件库,包含:

  • Conversation:对话容器
  • Message:消息气泡
  • Tool:工具调用卡片
  • Reasoning:推理过程折叠面板

4.2 assistant-ui

无头 React 框架,内置:

  • 对话线程管理
  • 分支聊天支持
  • 附件上传/下载功能

4.3 OpenUI

生成式 UI 库,通过openui-lang组件 DSL,快速构建数据密集型报表和仪表盘。

http://www.jsqmd.com/news/536705/

相关文章:

  • 终极解决:Compose Multiplatform 跨平台应用字体配置全流程指南
  • 开源贡献指南:为OpenClaw开发Qwen3.5-9B适配插件
  • QMCDecode终极指南:3步解锁QQ音乐加密文件,实现跨平台音乐自由
  • OpenClaw对接百川2-13B实战:4bits量化模型本地部署与自动化任务测试
  • DLD (Decoupled Localization Distillation):解耦定位蒸馏头,提升回归精度——YOLOv8 改进实战
  • 大模型Prompt实战指南:从基础到高阶的提问艺术
  • 18、LangChain 前端:模式 => Markdown 消息
  • AI无监督学习算法:DBSCAN密度聚类算法详解
  • 2026制药行业无菌精密过滤器优质品牌推荐:海宁过滤器公司、海宁过滤器厂家、过滤器哪家好、浙江过滤器公司、浙江过滤器厂家选择指南 - 优质品牌商家
  • 告别SVN烦恼:三步完成SVN到Git的无缝迁移
  • Python异步I/O性能断崖式下跌真相(CPython 3.11+ uvloop双核调试实录)
  • 19、LangChain 前端:模式 => 工具调用
  • 20、LangChain 前端:模式 => 人工审核
  • 探索Comsol中的奇妙光学现象:远场偏振图、能带图与本征手性观察
  • 避坑指南:在Ubuntu 20.04上搞定VINS-Fusion依赖(Ceres、Eigen、gflags报错全解决)
  • Vue3 + TypeScript 类型工具封装与复用:从重复到高效,让你的代码类型安全又优雅
  • 2026年热门的深圳AI搜索推广靠谱公司推荐 - 品牌宣传支持者
  • PLC、上位机、下位机与嵌入式系统:工业自动化中的角色定位与协同应用
  • nanobot镜像深度优化:OpenClaw启动时间缩短70%
  • OpenClaw技能扩展:基于nanobot镜像开发自定义自动化工作流
  • PaunaStepper库详解:28BYJ-48步进电机精准控制实战
  • 实战指南:如何用Python绘制强化学习中的Reward曲线(无阴影版)
  • 突破组织变革困境:两本不可错过的实战书籍推荐
  • OpenClaw对接ollama GLM-4.7-Flash实战:本地AI助手自动化配置指南
  • CMake的find_package机制详解:为什么你的ROS2项目总提示找不到serial库?
  • 无GPU方案:OpenClaw调用云端百川2-13B-4bits模型API实战
  • 自动化思维培养:OpenClaw+GLM-4.7-Flash解决日常问题的10个案例
  • 计算机毕设 java 基于 Android 的 “课堂管理助手” 移动应用开发 SpringBoot 安卓智能课堂管理移动应用 JavaAndroid 师生互动与教学管理平台
  • 零刻EQ12/EQ12Pro原厂系统安装全攻略:从U盘制作到一键安装(附资源下载)
  • 百川2-13B量化版调优指南:提升OpenClaw任务成功率的关键参数