Skip to content

快速上手(项目)

本节面向 Easy-Agents 项目使用者,帮助你在几分钟内跑通一个最小可用工作流(非文档站部署)。

前置条件

  • JDK 17+
  • Maven 3.8+

获取代码

bash
git clone https://github.com/TheEterna/easy-agents.git

导入与构建

  • 使用 IDE 导入根 pom.xml(多模块:easy-agents-commoneasy-agents-orchestrator)。
  • 构建:
bash
mvn -q -DskipTests package

添加到你的项目(作为依赖)

在你的 pom.xml 中加入(示例,按实际发布坐标调整):

xml
<dependency>
  <groupId>com.ai.agents</groupId>
  <artifactId>easy-agents-orchestrator</artifactId>
  <version>0.1.0</version>
</dependency>

最小示例:单节点流式执行

java
WorkFlowManager<String> manager = WorkFlowManager.<String>builder().build();

CodeNode<String> start = CodeNode.<String>builder()
        .inType(String.class)
        .outType(String.class)
        .code(in -> "Hello " + in)
        .build("World");

manager.setStartNode(start); // 仅设置一次

manager.startStreaming()
        .doOnNext(System.out::println)
        .blockLast();

串联 AI 对话节点

java
EasyTree.TreeNode root = manager.setStartNode(start);
AIChatNode<String> ai = AIChatNode.<String>builder()
        .chatClientRequestSpec(chatClient.prompt().system("你是助手"))
        .prompt(input -> List.of(new UserMessage(input)))
        .outType(String.class)
        .build(root.getId());
root.addChild(ai);
manager.startStreaming().blockLast();

常见问题

  • 只调用一次 setStartNode,否则 UUID 变化会导致结果池取值 NPE。
  • 对 AI 输出进行测试时,建议只断言流完成(verifyComplete())。
  • 需要更多细节:见「架构概览」「工作流与节点」「流式执行」「路由与并发」。

Released under the MIT License.