海外からのアクセス:www.kdjingpai.com
Ctrl + D このサイトをブックマークする

はじめに

ZeroGraphは、AIエージェントプログラミングのために設計された軽量なオープンソースフレームワークであり、TypeScriptで開発されています。ノード(Node)とフロー(Flow)のアーキテクチャをベースにしており、効率的なAIエージェントのワークフローを迅速に構築することができます。 ZeroGraphは、型安全性と強力なIDEサポートを提供しており、開発者が簡単な挨拶から複雑なマルチエージェントのコラボレーションタスクまで作成するのに適しています。このプロジェクトは、MITライセンスのもとでライセンスされており、例題が十分に文書化されており、簡単に始めることができるので、幅広い研究開発シナリオに適しています。

機能一覧

  • ノードとフローのアーキテクチャ ノードクラスとフロークラスによるモジュール式タスク処理とフローオーケストレーション。
  • 軽量設計 わずか300行のコードで、依存関係がなく、効率的に動作し、ベンダーロックインもありません。
  • タイプセーフティ 完全な型チェックとIDEヒントを備えたTypeScriptネイティブサポート。
  • バッチ対応 複数のデータを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 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.ノードとフロー

ZeroGraphの中心はNodeとFlowで、Nodeは1つのタスクを処理し、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.バッチ処理

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サポート)

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はマルチエージェントワークフローをサポートします。操作ステップ:

  • 複数ノードの定義 異なるタスクを処理するために複数のノードクラスを作成します。
  • 接続ノード スルー 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 を確認するか、新しい issue を送信してください。

アプリケーションシナリオ

  1. AIエージェントのラピッドプロトタイピング
    ZeroGraphの軽量設計は、AIエージェントの迅速なプロトタイピングに適している。例えば、開発者はウェブAPIを組み合わせてリアルタイムの情報検索を可能にする検索エージェントを作ることができる。
  2. 自動化されたワークフロー
    コンテンツ生成やデータ処理のシナリオでは、ZeroGraphは、記事の自動生成やバルクデータの処理など、マルチノードのワークフローをオーケストレーションする。
  3. 教育・研究
    学生や研究者はZeroGraphを使ってTypeScriptとAIエージェントプログラミングを学ぶことができ、教育や実験に適したサンプルコードも用意されている。

品質保証

  1. ZeroGraphとLangChainの違いは何ですか?
    一方、LangChainはより複雑でコード量も多く(405K行)、大規模なプロジェクトに適しているが、パフォーマンスのオーバーヘッドがある。
  2. TypeScriptの経験が必要ですか?
    JavaScriptの基本的な知識があれば十分であり、TypeScriptの型安全性機能はIDEによって自動的にプロンプトが表示されるため、学習曲線が短縮される。
  3. 自分のコードをデバッグするには?
    VS CodeなどのIDEとTypeScriptデバッグツールを併用する。実行 ts-node コードを実行し、コンソール出力またはログを見る。
  4. どのような複雑な作業がサポートされるのか?
    マルチエージェントコラボレーション、検索機能付きジェネレーション(RAG)、検索やコンテンツ生成などのシナリオのための非同期ワークフローをサポートします。
0ブックマークに登録
0表彰される

おすすめ

AIツールが見つからない?こちらをお試しください!

キーワードを入力する アクセシビリティこのサイトのAIツールセクションは、このサイトにあるすべてのAIツールを素早く簡単に見つける方法です。

受信箱

お問い合わせ

トップに戻る

ja日本語