Acesso no exterior: www.kdjingpai.com
Ctrl + D Marcar este site como favorito

Lang-Agent是一个基于LangGraph技术栈开发的AI智能体(Agent)配置平台。它提供了一个可视化的操作界面,让用户可以通过拖拽节点和连线的方式,构建具有有限可编程能力的复杂工作流程。这个项目的设计理念接近于ComfyUI,鼓励开发者根据自己的业务需求创建专用的功能节点,而不是像dify或coze那样提供一个完全封装好的平台。Lang-Agent的核心特点是引入了“状态变量”的概念,允许数据在整个工作流中灵活传递和控制,打破了传统工作流中“上一节点的输出是下一节点的唯一输入”的限制,从而能够实现更加精确和复杂的逻辑控制。项目采用前后端分离架构,后端基于FastAPI,前端则使用ReactFlow和HeroUI构建。

 

Lista de funções

  • 可视化流程编排: 提供拖拽式的画布界面,用户可以直观地构建和组织Agent的执行逻辑。
  • 丰富的内置节点: 系统内置了多种核心节点,包括开始、结束、用户输入、LLM(大语言模型)、计数器、文档加载、代码执行器以及向量存储和召回等。
  • 状态变量管理: 支持自定义全局状态变量,这些变量可以在节点的输入输出和边的条件判断中使用,实现对工作流的精准控制。
  • 预制Agent: 集成了两种可以直接使用的预制Agent:ReactAgent(能够自主调用外部工具)和SupervisorAgent(能够自主调用其他Agent)。
  • 模型和向量库配置: 用户可以方便地配置连接不同的大语言模型(LLM)和Embedding模型,并支持对接Postgres和Milvus等多种向量数据库。
  • 工具调用(MCP)配置: 支持配置MCP(为大语言模型提供访问外部服务的工具),用于需要工具调用的场景。
  • 高可扩展性: 提供了清晰的自定义节点开发指南,开发者可以轻松扩展前端组件和后端逻辑,以适应特定的业务场景。
  • 流程导入导出: 支持将配置好的Agent工作流导出为JSON文件,或从JSON文件导入,方便分享和复用。

Usando a Ajuda

Lang-Agent由前端(lang-agent-frontend)和后端(lang-agent-backend)两部分组成,在使用前需要分别对它们进行安装和启动。

Instalação e inicialização

1. clonagem de códigos de projeto
首先,从GitHub克隆项目的源代码到本地。

git clone https://github.com/cqzyys/lang-agent.git

2. 后端安装和启动 (lang-agent-backend)
后端使用Poetry进行包管理。

  • Ambiente de inicialização: 进入后端项目目录,并使用Poetry安装依赖。
    cd lang-agent-backend
    poetry env use python
    poetry shell
    poetry install
    
  • Início de projetos: 执行以下命令启动后端服务。
    python -m lang_agent.main
    

3. 前端安装和启动 (lang-agent-frontend)
前端使用Yarn进行包管理。

  • Instalação de dependências: 进入前端项目目录,并使用Yarn安装依赖包。
    cd lang-agent-frontend
    yarn install
    
  • Início de projetos: 执行以下命令启动前端开发服务器。
    yarn dev
    

启动成功后,可以通过浏览器访问 http://localhost:8820 进入Lang-Agent的操作界面。

Operação da função principal

1. configuração ambiental
在开始构建Agent之前,需要先完成一些基础配置。

  • Configuração do modelo:
    1. 点击顶部导航栏的【模型配置】。
    2. 点击页面右上角的【+】图标,创建一个新的模型连接。
    3. nome (de uma coisa): 为模型起一个唯一的自定义名称。
    4. tipologia: Selecionellm(用于语言模型节点)或embedding(用于向量化节点)。
    5. vala de irrigação: 目前仅支持兼容OpenAI的渠道。
    6. 模型连接参数: 填入模型的API地址、密钥等参数。
  • 向量库配置:
    1. 点击【向量库配置】标签。
    2. 点击【+】图标,配置一个新的向量库。
    3. nome (de uma coisa): 向量库的唯一名称。
    4. tipologia: 目前支持postgresresponder cantandomilvus.
    5. 填入向量库的连接地址(URI)、用户名、密码等信息。
    6. Modelos de incorporação: 选择一个在模型配置中已设置好的embeddingModelos.

2. Agent配置
这是项目的核心功能,通过可视化界面来构建Agent。

  • 创建Agent:
    1. 点击【Agent配置】标签,然后点击【新增Agent】卡片,进入配置页面。
    2. 配置页面分为左右两部分:左侧是资源树,包含了所有可用的节点和Agent;右侧是tela (superfície de pintura do artista),用于构建工作流。
  • 构建流程:
    1. 拖拽节点: 从左侧资源树中将需要的节点(如“开始节点”、“LLM节点”、“输入节点”)拖拽到右侧的画布中。
    2. Nós de configuração:
      • nó inicial: 每个Agent都必须有且仅有一个。在这里可以设置状态变量,例如默认的messages用于存储对话历史,你也可以添加自定义变量(如counter用于计数)。
      • LLM节点: 这是实现智能对话的核心。需要选择一个已配置好的llm模型,并可以编写系统提示词(System Prompt)和用户提示词(User Prompt)。提示词中可以使用状态变量,语法为 {{variable_name}} talvez {{messages['node_name']}}.
      • 输入节点: 用于接收用户的输入,并将其存入指定的状态变量(通常是messages).
    3. nó de conexão:
      • 默认边: 拖拽一个节点右侧的圆点到另一个节点左侧的圆点,即可创建一条执行路径。这表示源节点执行完毕后,会接着执行目标节点。
      • 条件边: 在连接后,可以为边设置一个执行条件。该条件表达式可以使用状态变量进行判断。例如,当一个计数器变量 {{counter}} 的值小于5时,才执行下一个节点。这使得构建循环和分支逻辑成为可能。
  • Operação e comissionamento:
    1. 配置完成后,点击画布上方的【保存】按钮。
    2. 点击【运行】按钮,Agent将启动。
    3. 你可以在界面右下角的聊天框(chatbot)中与Agent进行交互,并查看运行结果。

cenário do aplicativo

  1. 智能客服与问答机器人
    可以构建一个流程:首先接收用户问题,然后通过“向量召回节点”从知识库中检索相关信息,最后将检索到的信息和用户问题一起交给“LLM节点”生成最终回答。
  2. Geração automatizada de conteúdo
    可以设计一个诗人Agent:通过“LLM节点”生成一句诗,然后利用“计数器节点”和“条件边”实现循环,自动生成一首完整的诗。
  3. 复杂任务处理的智能体
    UtilizarSupervisorAgent,让一个主Agent根据用户指令,自主决定调用其他专门负责不同任务(如数据查询、文件处理)的子Agent来协同完成复杂任务。
  4. Geração e execução de código
    用户可以提出一个计算需求,通过“LLM节点”生成Python代码,然后将代码传递给“代码执行器节点”运行,并返回结果,实现一个简单的编程助手。

QA

  1. Lang-Agent和其他Agent平台(如Dify, Coze)有什么区别?
    Lang-Agent的设计理念更接近于ComfyUI,它不提供一个完全封装好的应用平台,而是鼓励用户根据自己的业务需求,通过开发自定义节点来扩展功能。它的核心优势在于通过“状态变量”实现了更灵活的流程控制和数据传递,提供了有限但强大的可编程能力。
  2. 什么是“状态变量”?它有什么用?
    “状态变量”可以理解为在Agent内部运行期间的一个全局字典。它可以在不同的节点之间传递数据,也可以被用于控制条件边的逻辑判断。例如,你可以定义一个名为count的变量,用“计数器节点”在每次循环时给它加一,然后在“条件边”中判断{{count}}是否达到某个值来决定是否结束循环。
  3. 如何为Lang-Agent添加一个新的功能节点?
    开发者需要同时在前端和后端进行扩展。在前端,需要在指定目录下创建一个新的React组件(.tsx文件)来定义节点的界面和输入参数。在后端,则需要创建一个新的Python类文件(.py文件)来定义节点的业务逻辑。详细的伪代码和目录结构在官方文档中有提供。
  4. ReactAgent responder cantando SupervisorAgent 有什么不同?
    • ReactAgent 是一个让大语言模型自主调用外部工具(Tool)来完成任务的Agent,这些工具需要在MCP配置中预先定义好。
    • SupervisorAgent 是一个“主管”Agent,它本身不直接执行任务,而是根据指令,决定调用哪个已经配置好的“可复用Agent”来完成任务。
0Marcado
0Recomendado

Não consegue encontrar ferramentas de IA? Tente aqui!

Basta digitar a palavra-chave Acessibilidade Bing SearchA seção Ferramentas de IA deste site é uma maneira rápida e fácil de encontrar todas as ferramentas de IA deste site.

voltar ao topo

pt_BRPortuguês do Brasil