GraphAI入門ガイド
開発環境のセットアップ
GraphAIはローカル環境またはDockerコンテナで実行できます。以下では両方の方法を説明します。
1. ローカル環境での実行
npm i -g @receptron/graphai_cli
APIキーは.env
ファイルまたは環境変数で設定:
# .envファイルの場合
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=... # Claudeを使用する場合
# または環境変数として
export OPENAI_API_KEY=sk-...
export ANTHROPIC_API_KEY=... # Claudeを使用する場合
2. Docker環境での実行
以下のDockerfileを使用してコンテナ環境を構築できます:
# Use Node.js slim image
FROM node:20-slim
# Create app directory
WORKDIR /app
# Install essential packages and clean up
RUN apt-get update && \
apt-get install -y --no-install-recommends \
git \
&& rm -rf /var/lib/apt/lists/*
# Install GraphAI CLI
RUN npm install -g @receptron/graphai_cli
COPY ./ ./
# Set environment variable
ENV NODE_ENV=production
VS Code + DevContainerを使用することで、このDockerfile設定による開発環境を直接利用できます。
Hello Worldサンプル
version: 0.5
nodes:
llm:
agent: openAIAgent
params:
model: gpt-4
inputs:
prompt: あなたは誰ですか?簡単な挨拶をしてください。
output:
agent: copyAgent
params:
namedKey: text
console:
after: true
inputs:
text: :llm.text
実行方法:
graphai hello.yaml
出力例:
こんにちは、私はOpenAIの人工知能アシスタントです。あなたの質問に答えたり、情報を提供したりすることでお手伝いします。どのようなお手伝いが必要ですか?
{}
基本概念
GraphAIには2種類のノードがあります:
-
Computed Node
- エージェントと関連付けられた実行ノード
- 特定の計算や処理を実行
-
Static Node
- 値を保持するノード
- プログラミング言語の変数に相当
主要機能
GraphAIは以下の制御フロー機能を提供します:
- Loop: 繰り返し処理
- Map: 並列処理
- If/Unless: 条件分岐
- Nesting: グラフのネスト化
開発原則
- コアをシンプルに保つ(Node/GraphAIクラス)
- エージェントによる機能拡張
- 効果的なテストの維持
詳細な使用例やより高度な機能については、公式サンプル集を参照してください。
実際の実装集