セマンティック Web は長い間私に興味を持っていました。ウェブを人工知能がアクセスできるわかりやすいデータベースに変えるというアイデアが、私の継続的な探求の基礎となりました。インターネットの混乱した情報を監視するデジタル監視員であるスマート アラート システムを作成するという概念は、私の好奇心を刺激し続けるアプリケーションでした。ウェブの広大な海を絶え間なく巡回し、特定のイベントの発生、たとえば新しい本の発売を警告するロボットを想像してみてください。これは私が何年も追い求めてきた夢です。
AutoGPT や BabyAGI のような自律エージェントの出現に興味をそそられました。これらのシステムは、AI テクノロジーの有望な新しい方向性を示していました。私は、スマート アラート システムという夢を実現したいという願いを込めて、これらのツールを試してみることにしました。しかし、私の興奮はすぐに静まりました。これらのシステムは先進的ではありますが、目標とその後のステップへの分割に焦点を当てて動作します。これは、私が思い描いていた継続的で警戒深い監視システムとは大きく異なります。非常に残念なことに、彼らのアーキテクチャはそのようなタスクには不向きであることがわかりました。場合によっては機能させることもできますが、確実に機能するわけではありません。
既存のモデルの欠点が、新しいものを構築するための火花を散らしました。私は独自のシステム、つまりイベント駆動型の自律エージェントのシステムを作成することにしました。私はそれをWhenXと呼んでいます。
システムの目標は、「X が発生したら、Y を実行してください」という形式でアラートを作成することです。この初期バージョンでは、「X が発生したら、電子メール レポートを送信してください」という形式の電子メール アラートのみがサポートされています。
このシステムは、キャプテン、スカウト、センチネル、ソルジャーの 4 人のエージェントで構成されています。
キャプテンはこのオーケストラの指揮者です。使命を与えられ、スカウト、センチネル、ソルジャーなどのエージェントのチームを編成する責任があります。
スカウトは、関連情報の探求に乗り出し、旅の途中で「観察」を作成する探検家として機能します。これらの観察は、WhenX システムを推進する重要な原材料です。
門番であるセンチネルは、スカウトによって行われた最後の N 回の観察を精査します。これは、観察データの変化がどれほど微妙であっても、識別できるように設計された洞察力のある存在です。何か注目に値するものを検出すると、「アラーム」をトリガーし、兵士に行動を指示します。
実行者であるソルジャーは、センチネルからアラームを受信すると行動を開始します。アラームに基づいて命令を実行し、検出された変更またはイベントをカプセル化する「レポート」を作成します。
$ poetry install
$ poetry run alembic upgrade head
.env.example ファイルを .env にコピーし、値を入力します。メールの送信には再送信サービスを利用しております。無料のアカウントを作成して、テストに使用できます。
このシステムの目標は、「X が発生したら」、次に「レポートを送信してください」という形式でアラートを作成することです。この初期バージョンでは、電子メール アラートのみがサポートされています。
まずミッションを作成する必要があります。ミッションはアラートの説明です。例えば「村上春樹が新しい本を出したとき」。
$ python -m whenx create --mission " when Haruki Murakami releases a new book. "
システムが実行を開始し、毎日新しい観測が作成されます。観察は、クエリの現在の状態のスナップショットです。システムは最後の 2 つの観察を比較し、変化を検出した場合は、レポートを電子メールで送信します。
$ python -m whenx monitor
すべてのアラートとそのステータスを一覧表示できます。
$ python -m whenx list
アラートはその ID で削除できます。
$ python -m whenx delete --id a5dc910a-4457-4911-8ba3-c7713588e7ff