vector-hyperbolic について
vector-hyperbolicは、ruvectorで階層データをポアンカレ球モデルに表現するスキルです。依存ツリーや分類体系などを対象に、埋め込みの生成、投影、距離計算、保存の手順を示します。
主な機能
- 01ruvectorで基本埋め込みを生成
- 02ベクトルをポアンカレ球に投影
- 03測地距離を計算
- 04投影座標と近傍を保存
- 05階層データセットを扱う
活用シーン
- 01モジュール依存ツリーの関係を調査
- 02クラス階層や分類体系をマッピング
- 03階層を手掛かりにコードベースを探索
MCP 対応
RufloのMCP memoryツールで、投影座標と近傍を保存します。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ ruvnet/ ruflo --skill vector-hyperbolicインストール後、Claude Code で/vector-hyperbolicを入力して読み込まれたか確認します。
詳細
Vector Hyperbolic
ruvector を使って、ポアンカレ球モデルで階層データを埋め込みます。
使用する場面
依存関係ツリー、モジュール構造、分類体系、組織図、オントロジーなど、データに本質的な階層がある場合にこのスキルを使用します。双曲空間では、ユークリッド埋め込みよりもはるかに少ない次元で階層間の距離を捉えられます。
手順
- [email protected] が利用可能であることを確認します:
npm ls ruvector 2>/dev/null | grep '0.2.25' || npm install [email protected] - ベースとなる ONNX 埋め込みを生成します([email protected] の
embed textには--model poincareフラグが用意されていません):npx -y [email protected] embed text "hierarchical concept" -o concept.vec.json - 独自のコード(または実験的なニューラル基盤)でポアンカレ球に射影します:
簡易的に射影する場合は、384 次元ベクトルを単位球の内部に収まるよう正規化し(npx -y [email protected] embed neural --helpx_i / (||x|| * (1 + epsilon)))、射影後の座標を元の埋め込みと併せて保存します。 - 測地距離:
d(u, v) = arcosh(1 + 2 * ||u-v||^2 / ((1-||u||^2)(1-||v||^2)))距離はツリーの深さに応じて対数的に増加し、階層構造を保ちます。 - 結果を保存します:
mcp__plugin_ruflo-core_ruflo__memory_store({ key: "hyperbolic-CONCEPT", value: "COORDINATES_AND_NEIGHBORS", namespace: "hyperbolic-embeddings" })
注意事項
- [email protected] には、ポアンカレ球を指定する CLI フラグがありません。双曲射影は標準的な ONNX 埋め込みに対する後処理として扱ってください。
- 双曲検索インデックスが必要な場合は、射影後の座標を AgentDB に保存し、独自の検索コードで測地距離を計算してください。
ポアンカレ球の特性
| 特性 | 意味 |
|---|---|
| ノルムが 0 に近い | 汎用的で、ルート階層にある概念 |
| ノルムが 1 に近い | 具体的で、リーフ階層にある概念 |
| 測地距離が小さい | 階層内で密接に関連している |
| 測地距離が大きい | 離れている、または異なるサブツリーに属している |
使用例
- 依存関係の分析:モジュールのインポートを埋め込み、密接に結び付いたサブツリーを見つけます
- コードアーキテクチャ:クラス階層をマッピングし、構造パターンを発見します
- ナレッジの整理:概念を埋め込み、分類学的な関係を明らかにします
- コードベースのナビゲーション:クエリに対して最も具体的/一般的なモジュールを見つけます
コメント
Markdown 対応