海外访问:www.kdjingpai.com
Ctrl + D 收藏本站

综合介绍

ZeroGraph 是一个轻量级开源框架,专为 AI 代理编程设计,使用 TypeScript 开发,代码仅 300 行(约 10KB),无任何依赖。它基于节点(Node)和流(Flow)架构,支持快速构建高效的 AI 代理工作流。ZeroGraph 提供类型安全和强大的 IDE 支持,适合开发者创建从简单问候到复杂多代理协作的任务。项目基于 MIT 许可证,文档和示例丰富,易于上手,广泛应用于研究和开发场景。

功能列表

  • 节点与流架构 :通过 Node 和 Flow 类实现模块化任务处理和流程编排。
  • 轻量级设计 :仅 300 行代码,无依赖,运行高效且无厂商锁定。
  • 类型安全 :TypeScript 原生支持,提供完整的类型检查和 IDE 提示。
  • 批处理支持 :通过 BatchNode 处理多条数据,提升处理效率。
  • 异步操作 :支持 AsyncNode,适合网络请求等异步任务。
  • 代理编程 :支持多代理协作、检索增强生成(RAG)等复杂工作流。
  • 丰富示例 :提供从基础到高级的示例代码,如问候、搜索和多代理协作。

使用帮助

安装流程

ZeroGraph 使用 TypeScript 开发,需安装 Node.js 和 npm/yarn。以下是详细安装步骤:

  1. 环境准备
    • 确保安装 Node.js(推荐 16+)和 npm/yarn。
    • 验证环境:
      node -v
      npm -v
      
    • 可选:安装 TypeScript 以支持类型检查:
      npm install -g typescript
      
  2. 安装 ZeroGraph
    使用 npm 安装:

    npm install @u0z/zero-graph
    

    或使用 yarn:

    yarn add @u0z/zero-graph
    
  3. 验证安装
    创建一个简单 TypeScript 文件(例如 test.ts)并运行以下代码:

    import { Node, Flow } from '@u0z/zero-graph';
    console.log("ZeroGraph installed successfully!");
    

    编译并运行:

    tsc test.ts
    node test.js
    

    如果输出成功信息,说明安装无误。

主要功能操作

1. 节点与流(Node 和 Flow)

ZeroGraph 的核心是 Node 和 Flow。Node 处理单个任务,Flow 编排多个节点。操作步骤:

  • 定义节点 :创建一个继承 Node 的类,包含 prep(准备数据)、exec(执行逻辑)和 post(存储结果)方法。例如:
import { Node, Flow } from '@u0z/zero-graph';
class GreetingNode extends Node {
prep(shared: any): string {
return shared.name || 'World';
}
exec(name: string): string {
return `Hello, ${name}!`;
}
post(shared: any, prepRes: string, execRes: string): void {
shared.greeting = execRes;
}
}
  • 创建流 :用 Flow 连接节点并运行:
const flow = new Flow(new GreetingNode());
const shared = { name: 'TypeScript' };
flow.run(shared);
console.log(shared.greeting); // 输出: Hello, TypeScript!

2. 批处理(Batch Processing)

BatchNode 适合处理多条数据。操作步骤:

  • 定义批处理节点 :
class BatchProcessor extends BatchNode {
exec(item: any): any {
return `Processed: ${item}`;
}
}
  • 运行批处理流 :
const batchFlow = new BatchFlow(new BatchProcessor());
const items = ['item1', 'item2', 'item3'];
batchFlow.run(items).then(results => console.log(results));

3. 异步操作(Async Support)

AsyncNode 支持异步任务,如 API 调用。操作步骤:

  • 定义异步节点 :
class AsyncProcessor extends AsyncNode {
async execAsync(input: any): Promise<any> {
return new Promise(resolve => setTimeout(() => resolve(`Processed: ${input}`), 1000));
}
}
  • 运行异步流 :
const asyncFlow = new AsyncFlow(new AsyncProcessor());
const shared = { input: 'test' };
asyncFlow.runAsync(shared).then(() => console.log(shared.result));

4. 多代理协作

ZeroGraph 支持多代理工作流。操作步骤:

  • 定义多个节点 :创建多个 Node 类,分别处理不同任务。
  • 连接节点 :通过 next 方法指定节点间的跳转逻辑:
class NodeA extends Node {
exec(input: any): string {
return input ? 'success' : 'error';
}
}
class NodeB extends Node {
exec(input: any): string {
return 'Task B done';
}
}
const nodeA = new NodeA();
const nodeB = new NodeB();
nodeA.next(nodeB, 'success');
const flow = new Flow(nodeA);
flow.run({ input: true });

5. 示例代码使用

ZeroGraph 提供丰富示例,位于 examples/ 目录。操作步骤:

  • 克隆仓库 :
git clone https://github.com/u-0-z/zero-graph.git
cd zero-graph
  • 运行示例 :进入 examples/ 目录,运行特定示例:
cd examples/hello-world
npm install
ts-node index.ts
  • 示例包括基础问候(hello-world)、搜索代理(agent)、内容生成(workflow)、批处理(batch)、异步操作(async)、检索增强生成(rag)和多代理协作(multi-agent)。

注意事项

  • TypeScript 配置 :确保项目包含 tsconfig.json,推荐设置:
{
"compilerOptions": {
"target": "ES6",
"module": "commonjs",
"strict": true
}
}
  • 文档查阅 :完整文档位于 docs/ 目录,涵盖核心概念、设计模式和 API 参考。
  • 社区支持 :遇到问题可查看 GitHub Issues 或提交新问题。

应用场景

  1. AI 代理快速原型开发
    ZeroGraph 的轻量设计适合快速构建 AI 代理原型。例如,开发者可创建一个搜索代理,结合网络 API 实现实时信息检索。
  2. 自动化工作流
    在内容生成或数据处理场景中,ZeroGraph 可编排多节点工作流,如自动生成文章或处理批量数据。
  3. 教育与研究
    学生和研究者可通过 ZeroGraph 学习 TypeScript 和 AI 代理编程,示例代码适合教学和实验。

QA

  1. ZeroGraph 和 LangChain 有什么区别?
    ZeroGraph 仅 300 行代码,专注于轻量级 AI 代理编程,无依赖且 TypeScript 原生。LangChain 功能更复杂,代码量大(405K 行),适合大型项目但有性能开销。
  2. 需要 TypeScript 经验吗?
    基本 JavaScript 知识即可上手,TypeScript 的类型安全特性通过 IDE 自动提示,降低学习曲线。
  3. 如何调试代码?
    使用 VS Code 等 IDE,结合 TypeScript 调试工具。运行 ts-node 执行代码,查看控制台输出或日志。
  4. 支持哪些复杂任务?
    支持多代理协作、检索增强生成(RAG)和异步工作流,适合搜索、内容生成等场景。
0已收藏
0已赞

相关推荐

找不到AI工具?在这试试!

输入关键词,即可 无障碍访问 必应 搜索,快速找到本站所有 AI 工具。

邮箱

联系我们

回顶部

zh_CN简体中文