AIエージェントを賢くする!getzep/graphiti徹底解説


AIエージェントを賢くする!getzep/graphiti徹底解説

getzep/graphiti

2025-07-18

ナレーター(声
ベテラン声優風)
「今宵も始まりました! IT知識の泉、その名も…『それって、どういうこと!?グラフティ!』」

アシスタント(声
元気な若手アイドル風)
「はーい!MCのケンタロウでーす!そしてアシスタントのアイちゃんでーす!今日も最新技術を深掘りしちゃいまーす!」

ケンタロウ(MC、声
親しみやすい中堅芸人風)
「さて、アイちゃん、今日のテーマは何かな?」

アイ
「今日のテーマはですね…『getzep/graphiti』!なにやらAIエージェント向けのリアルタイムナレッジグラフを構築するって書いてあるんですけど…ケンタロウさん、これってどういうことですか?」

ケンタロウ
「お、いい質問だねアイちゃん!まさに今日のお題にぴったりだ!じゃあ、まずはこのキーワードから見ていこうか!」

【フリップ登場!】

キーワード1
リアルタイムナレッジグラフ

ケンタロウ
「みんな、ナレッジグラフって聞いたことあるかな?これはね、情報を点(エンティティ)と線(関係性)でつないで、まるで知識の地図を作るようなものなんだ。」

アイ
「へー!じゃあ、例えば『リンゴは果物である』とか、『東京は日本の首都である』みたいに、情報と情報がどう繋がっているかを図にするってことですか?」

ケンタロウ
「その通り!天才だねアイちゃん!そして『リアルタイム』っていうのは、その地図が常に最新の状態に更新され続けるってことなんだ。新しい情報が入ってきたら、すぐに地図に反映されるイメージだね。」

アイ
「なるほど!なんか、Google検索とかでも、色々な情報が関連付けられて出てきますもんね!」

ケンタロウ
「そうそう、まさにその裏側で活躍してる技術の一つだと思ってもらえればいいよ。」

【フリップ登場!】

キーワード2
AIエージェント

ケンタロウ
「さて、お次はAIエージェント。これはもう、みんなもChatGPTとかで慣れ親しんでいるんじゃないかな?」

アイ
「はい!質問に答えてくれたり、文章を書いてくれたり、色々なことをしてくれるAIですよね!」

ケンタロウ
「そうだね。AIエージェントは、ある目的を達成するために自律的に行動するAIプログラムのことだよ。例えば、Webサイトから情報を集めてきたり、メールの返信を自動で書いたり、といったこともできるんだ。」

アイ
「へぇー!私たちの生活を便利にしてくれる存在なんですね!」

ケンタロウ
「じゃあ、この『リアルタイムナレッジグラフ』と『AIエージェント』、この二つが合わさるとどうなると思う?」

アイ
「えーと…AIエージェントが、常に最新の知識の地図を持って、賢く動けるようになる、とかですか?!」

ケンタロウ
「大正解!アイちゃん、今日のMVPだね!」

【フリップ登場!】

getzep/graphiti とは?

ケンタロウ
「じゃあ、本日の主役、getzep/graphitiについて、ソフトウェアエンジニアの観点から、どのように役に立つのかを解説していこう!」

ソフトウェアエンジニアにとっての getzep/graphiti の魅力

AIエージェントの賢さUP!

ケンタロウ
「AIエージェントって、質問に答える時に、その場限りの情報だけで答えてることが多いんだ。でも、getzep/graphitiを使えば、まるで人間の脳のように、過去の会話や関連する情報をすべて『知識のネットワーク』として持てるようになる。だから、より文脈に沿った、深く、正確な回答ができるようになるんだ!」

アイ
「わー!AIがもっと賢くなるんですね!まるで記憶力がいい人みたい!」

複雑なタスクもラクラク!

ケンタロウ
「AIエージェントに『〇〇について調べて、その結果を要約して、関係者にメールで送って』みたいな複雑なタスクをお願いする時って、途中で情報が抜け落ちたり、つながりが分からなくなったりしがちなんだ。でも、getzep/graphitiがあれば、AIエージェントは知識の地図を見ながら、一歩一歩確実にタスクを進められるようになる。まるで熟練の職人さんのようにね!」

アイ
「おぉー!AIがマルチタスクをこなせるようになるんですね!秘書さんみたい!」

開発効率アップ!

ケンタロウ
「通常、AIエージェントに知識を持たせようとすると、複雑なデータベース設計や情報抽出のロジックを自分で書かないといけない。これがめちゃくちゃ大変なんだ。でも、getzep/graphitiは、その辺りをいい感じにやってくれるから、僕たちエンジニアは、AIエージェントの『賢い振る舞い』に集中できるようになるんだ。開発期間も短縮できるし、バグも減るし、いいことづくめだね!」

アイ
「エンジニアさんの負担が減るんですね!やったー!」

リアルタイム性で常に最新!

ケンタロウ
「ニュース速報とか、株価の変動とか、常に新しい情報が飛び交うような分野では、情報が古いと全く役に立たないよね。getzep/graphitiは、まさに『リアルタイム』でナレッジグラフを更新してくれるから、AIエージェントは常に最新の情報に基づいて判断できるんだ。まるで新聞記者のようにね!」

アイ
「すごい!これでAIも情報の鮮度を保てるんですね!」

ケンタロウ
「とまあ、getzep/graphitiは、AIエージェントをさらに賢く、そしてより実用的にしてくれる、まさに夢のようなツールなんだ!」

アイ
「わー!なんか、AIを開発しているエンジニアさんたちにとっては、めちゃくちゃ嬉しいツールってことが分かりました!」

【フリップ登場!】

getzep/graphiti の導入方法とサンプルコードの例

ケンタロウ
「じゃあ、実際にどうやって使うのか、エンジニアの皆さん向けに、導入方法とサンプルコードを簡単に紹介するよ!」

導入方法(Python環境を想定)

インストール
まずは、Pythonのパッケージ管理ツール pip を使ってインストールします。

pip install graphiti

ケンタロウ
「これで、君のPCにgraphitiの魔法が使えるようになるんだ!」

Zeepサーバーの起動
graphitiは、内部的にZeepという知識グラフデータベースと連携するから、まずはZeepサーバーを起動する必要があるんだ。これはDockerを使うのが一番簡単だよ。

docker run -p 8000:8000 -e ZEP_API_KEY=YOUR_ZEP_API_KEY --name zep getzep/zep:latest

ケンタロウ
YOUR_ZEP_API_KEY のところは、自分で決めたAPIキーに置き換えてね。セキュリティのためにも、しっかり設定しておこう!」 アイ
「ドッカーって、なんか難しいイメージだったんですけど、これなら私にもできそうかも!」 ケンタロウ
「そうそう、最近はすごく使いやすくなってるんだよ!」

サンプルコードの例

じゃあ、簡単な会話履歴からナレッジグラフを構築する例を見てみよう。

from graphiti import Graphiti
from graphiti.memory import ZepMemory

# ZepMemoryの初期化(Zeepサーバーに接続)
# ZEP_API_KEY は Zeepサーバー起動時に設定したAPIキーに置き換えてください
memory = ZepMemory(
    url="http://localhost:8000",
    api_key="YOUR_ZEP_API_KEY"
)

# Graphitiの初期化
graphiti = Graphiti(memory=memory)

# 会話履歴の追加
session_id = "user_123"  # ユーザーごとにユニークなID
messages = [
    {"role": "user", "content": "私の名前はアリスです。"},
    {"role": "assistant", "content": "アリスさん、こんにちは!"},
    {"role": "user", "content": "私は猫が好きで、特にスコティッシュフォールドを飼っています。"},
    {"role": "assistant", "content": "スコティッシュフォールド、可愛いですよね!"},
    {"role": "user", "content": "私の友人のボブも猫を飼っています。"}
]

for msg in messages:
    graphiti.add_message_to_graph(session_id=session_id, message=msg)

print("ナレッジグラフにメッセージを追加しました!")

# ナレッジグラフから情報を取得する例(少し高度な内容になりますが、概念として)
# 例えば、「アリスが好きなものは何か?」をナレッジグラフから推論させると…
# (実際のGraphitiのAPIはより複雑ですが、概念的な例として示します)

# graph_data = graphiti.get_graph(session_id=session_id)
# print(graph_data)
# これにより、以下のような情報が内部的に構築されます(概念図)
#
# アリス --(名前)--> アリス
# アリス --(好き)--> 猫
# アリス --(飼っている)--> スコティッシュフォールド
# アリス --(友人)--> ボブ
# ボブ --(飼っている)--> 猫
#
# このような関係性を使って、AIエージェントはより深い対話や推論が可能になります。

ケンタロウ
「どうかな、アイちゃん?少し難しかったかな?」

アイ
「うーん、コードはちょっと呪文みたいですけど、『アリスさんが猫を飼っていて、スコティッシュフォールドが好きで、友達のボブも猫を飼ってるんだなー』っていう情報が、AIの中で綺麗に整理されるイメージは分かりました!」

ケンタロウ
「そのイメージが大事なんだ!Graphitiは、こういったバラバラの情報を、点と線でつなぐことで、AIエージェントがまるで人間のように『あの人はこういうことを言っていたな』とか、『この情報とあの情報は関係があるな』というのを理解できるように手助けしてくれるんだ。」

まとめ!

ケンタロウ
「さて、今日の『それって、どういうこと!?グラフティ!』、いかがだったでしょうか?getzep/graphitiは、AIエージェントに記憶力と推論能力を与え、より賢く、より実用的なAIアプリケーションを開発するための強力なツールです!」

アイ
「私もAIがもっと身近になる気がしました!エンジニアさん、頑張ってください!」

ナレーター
「それでは、また次回の『それって、どういうこと!?グラフティ!』でお会いしましょう!提供は…〇〇(スポンサー名)でした!」

(拍手とエンディングテーマ)


getzep/graphiti




【ガンダムコント風】ザクとは違うのだよ!LLMアプリ開発の設計図集「awesome-llm-apps」解説

モビルスーツ開発に明け暮れる皆さん、ご苦労様です!今日はですね、なんと、ザクとは違うのだよ、ザクとは!…と言いたくなるくらい、最先端の技術が詰まった「設計図集」をご紹介します。それが、この「Shubhamsaboo/awesome-llm-apps」というプロジェクトです!


AIエージェントが自律的に稼ぐ未来:google-agentic-commerce/a2a-x402の衝撃

今日は、未来のコマースを形作る、とてもクールな技術についてお話ししたいと思います。 まるで、インターネットの黎明期に、世界を変えるような新しいプロトコルが生まれた時の興奮を思い出しますね。今回ご紹介するのは、google-agentic-commerce/a2a-x402という、ちょっと長い名前のプロトコル拡張です。 ソフトウェアエンジニアの皆さんなら、このコードネームから、なんだかワクワクするような響きを感じるのではないでしょうか?


インフラもコードで管理!テラフォームで始めるIaC入門

ちょっと聞いてください、奥さん!今日も手作業でサーバーをポチポチと立てて、設定して、また手動で消して…なんて、疲れる作業していませんか?そんなあなたのために、とっておきの商品があるんです!その名も「テラフォーム」!「テラフォーム」は、インフラをコードで管理するための魔法のツール!これを使えば、AWSでもGCPでもAzureでも、サーバーやデータベース、ネットワークなどのインフラを、まるでプログラムを書くように設定できちゃうんです!しかも、設定ファイルはテキストなので、Gitでバージョン管理もできちゃう優れもの。


LLM開発最前線!happy-llmでAgent・RAGを実践的に学ぶ

舞台 薄暗いラボの一室。ホワイトボードには意味不明な数式と図がびっしり。コーヒーカップが散乱し、ピザの箱が積み重なっている。登場人物ベテラン刑事(あなた) 長年の経験を持つソフトウェアエンジニア。最近のAIブームにちょっと乗り遅れ気味。若手研究員(happy-llm) 天真爛漫な笑顔で、難解なLLMの仕組みを次々と解き明かす天才。


AI開発の炎上を鎮火!Genkitで叶える、コード中心のAIアプリケーション構築

炎上プロジェクトにアサインされた君、お疲れ様!「AI機能を組み込め」という無茶振りをされ、途方に暮れているかもしれない。でも安心してほしい。AI開発の複雑な問題を一気に解決してくれる、心強い味方が現れた。それが、今回解説する Genkit だ。


ソフトウェアエンジニア必見!AI搭載ブラウザ自動化「Stagehand」徹底解説

「browserbase/stagehand」は、AI(人工知能)と既存のブラウザ自動化ツール(Selenium、Playwrightなど)の強みを組み合わせた、まさに"goated"とも言えるフレームワークです。これまでのツールが抱えていた「UI変更に弱い」「コードが複雑になりがち」といった課題を解決し、より堅牢で、より人間らしい操作が可能なブラウザ自動化を実現します。


ランジェリーショップで学ぶ!AIアプリ開発の成功事例集

彼女さんが最高のランジェリーを選ぼうと一生懸命悩んでいるように、私たちソフトウェアエンジニアも、最高のシステムをどうやって作るか、日々頭を悩ませています。 そんな時に役立つのが、今回ご紹介する「Arindam200/awesome-ai-apps」なんです。


電気代だけで動く自動調査員!Fosowl/agenticSeekで開発タスクを効率化

Fosowl/agenticSeek、これはまるで、プログラミングの世界であなたの冒険(プロジェクト)を自動で進めてくれる賢い仲間(エージェント)を、完全にローカル(あなたの本拠地)に呼び出す魔法のようなものです。これが、ソフトウェアエンジニアであるあなたにとって、どのように役立つのかを解説しましょう!


爆速・軽量・インプロセス!Alibaba発のzvecでRAGの魔法を手に入れよう

魔法少女(エンジニア) 「もうダメ…!敵の『データ増殖魔人』が多すぎて、誰が誰だか思い出せない!『以前の攻撃パターン』を検索するだけでMP(メモリ)を使い果たしちゃうよ〜!」マスコット(テック・リード) 「(浮遊しながら)落ち着くんだ!そんな君に、この魔法のコンパクトを授けよう。それが Alibaba製『zvec』 だ!」