ホームへ戻る

代理框架與上下文基礎設施

OpenViking 0.4.16、VikingBotによるリモートSkillsの読み込みに対応し、Resource Relations APIを削除

新バージョンでは、エージェントのSkillsを一元的に保存、検索、キャッシュする仕組みをVikingBotに統合したほか、ユーザー単位のメモリ取得ポリシーと永続化可能なバックグラウンドインポートを追加した。同時に、実験的なRelations APIとCLIコマンドが削除されたため、既存の統合環境ではアップグレード前の移行が必要となる。

Marieke Kuijjer Camera location50° 05′ 31.28″ N, 14° 24′ 14.1″ E View this and other nearby images on: OpenStreetMap 50.092022; 14.403918 · CC BY-SA 2.0 · Image source
zh-Hant

OpenViking 0.4.16では、リモートSkillsがVikingBotに正式に統合された。エージェントはOpenVikingサーバー上でSkillsを検出、読み込み、キャッシュ、実行できるようになり、各実行ホストに完全な`SKILL.md`と関連ファイルをあらかじめコピーしておく必要がなくなった。OpenVikingがSkillsの保存、検索、認証を担当し、VikingBotはAgentLoop内でSkillsの選択、モデルとツールの呼び出しを行い、その結果をSessionへ書き戻す。

この分離がマルチエージェント環境にもたらす意義は、一元管理だけにとどまらない。Skillsの概要をプログレッシブにコンテキストへ追加し、該当した場合にのみ完全な説明を読み込める。ローカルファイルや実行可能なリソースが必要になった時点で、対応するバージョンをサンドボックスへ実体化する。このため、チームは複数のBotで同じSkillsライブラリを共有しながら、サーバー側でバージョンと権限を更新できる。ただし、キャッシュの無効化、バージョン固定、実行中のSessionに対するホットアップデートの可否については、デプロイ時に個別の検証が必要となる。

新バージョンでは、ユーザー単位の`memory_policy`も追加された。管理者は、各ユーザーが取得できるメモリタイプを制限できる。ポリシーを持たない既存のSessionには、次回のcommit時に新しい設定が適用される。さらに、`viking://~`が現在認証されている呼び出し元のユーザールートディレクトリを示すエイリアスとなり、マルチテナントアプリケーションで完全なURIをハードコードする必要性が軽減された。リソースのインポートで`wait=false`を使用すると、ソースの準備処理は永続化可能なバックグラウンドタスクへ移され、キューイング段階とcontext数が報告される。また、ベクトルデータベースから返される4xxエラーも握りつぶされなくなった。

移行上のリスクは、Resource Relationsが完全に削除されたことにある。`/api/v1/relations`、`ov relations`、`ov link`、`ov unlink`はいずれも削除された。リレーションシップエッジに依存するアプリケーションは、別のメタデータまたは外部のグラフデータベースへ移行する必要がある。セキュリティ面では、公式ドキュメントにおいて、`direct`サンドボックスはBotプロセスの権限を引き継ぐため、強力な分離機構ではないことが明記されている。リモートSkillsにShell、ネットワーク、ファイル操作が含まれる場合、信頼できないユーザー向けのサービスでは分離されたバックエンドを使用し、ファイルシステムと外向きネットワーク通信に明確なポリシーを設定すべきである。

出典

  1. OpenViking v0.4.16 Release
  2. VikingBot: A Multi-Channel AI Agent Powered by OpenViking
  3. OpenViking Skills API