pygraphistry-ai について
pygraphistry-aiは、PyGraphistryのグラフAI機能を使うためのスキルです。埋め込み、クラスタリング、セマンティック検索、新規データの投影を扱い、エンジンやサンプリングの指針も示します。
主な機能
- 01グラフ特徴量と埋め込みのワークフロー
- 02UMAP投影とバッチ変換
- 03DBSCANクラスタリングとセマンティック検索
- 04エンジンとサンプリングの指針
活用シーン
- 01グラフ特徴量のパターン探索
- 02テキスト由来のグラフ埋め込み検索
- 03新しいバッチデータの一貫した投影
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ graphistry/ graphistry-skills --skill pygraphistry-aiインストール後、Claude Code で/pygraphistry-aiを入力して読み込まれたか確認します。
詳細
PyGraphistry AI
ドキュメントのルーティング(ローカル + 正規版)
- 最初に
../pygraphistry/references/pygraphistry-readthedocs-toc.mdを参照してルーティングします。 - セクションレベルのショートカットには
../pygraphistry/references/pygraphistry-readthedocs-top-level.tsvを使用します。 - 必要なページが見つからない場合に限り、
../pygraphistry/references/pygraphistry-readthedocs-sitemap.xmlを検索します。 - 詳細ページを読む前に、まとめて一度だけ探索用の読み取りを行います。
cat *や、細かな読み取りを順番に繰り返すことは避けてください。 - ユーザー向けの回答では、正規の
https://pygraphistry.readthedocs.io/en/latest/...リンクを優先してください。
一般的なワークフロー
- ノード/エッジからグラフを構築します。
- 特徴量/埋め込み手法(
umap、embed、任意でdbscan)を実行します。 - 派生した列/特徴量を確認し、可視化します。
- 特徴量の列とサンプリング戦略を反復的に調整します。
基本的な例
# Similarity embedding / projection
g2 = graphistry.nodes(df, 'id').umap(X=['f1', 'f2', 'f3'])
g2.plot()
# Fit/transform flow for consistent projection on new batches
g_train = graphistry.nodes(df_train, 'id').umap(X=['f1', 'f2'])
g_batch = g_train.transform_umap(df_batch, return_graph=True)
g_batch.plot()
# Semantic search over embedded features
g2 = graphistry.nodes(df, 'id').umap(X=['text_col'])
results_df, query_vector = g2.search('suspicious login pattern')
# Text-first workflow: featurize then search/cluster
g2 = graphistry.nodes(df, 'id').featurize(kind='nodes', X=['title', 'body']).umap(kind='nodes').dbscan()
hits, qv = g2.search('credential stuffing campaign')
# Precomputed embedding columns
embedding_cols = [c for c in df.columns if c.startswith('emb_')]
g2 = graphistry.nodes(df, 'id').umap(X=embedding_cols)
g_new = g2.transform_umap(df_new, return_graph=True)
実践上の注意点
- 全データで実行する前に、小規模または代表的なサンプルから始めます。
- 再現性を確保するため、特徴量リスト(
X=...)を明示します。 - CPU と GPU の動作に関わるエンジン/データフレームの型を記録します。Polars 入力はサポートされています。Polars の結果を維持することが重要な場合、GFQL の行処理/トラバーサルには
engine='polars'/'polars-gpu'を使用します。 - UMAP、ハイパーグラフ、レイアウトなど、グラフ全体を対象とする分析は、ネイティブの Polars 操作ではありません。Polars GFQL エンジンでは、既定のブリッジを理解したうえで使用するか、
call_mode='strict'を設定してエンジン外での実行を拒否します。 - 異常検知のワークフローでは、しきい値と誤検出に関する前提を記録します。
- グラフ ML タスクでは、より詳細なモデルのワークフローを RGCN/リンク予測のリファレンスに誘導します。
- テキストのワークフローでクエリが自然言語の場合は、
featurize(...).umap(...).search(...)を優先します。 - ユーザーがすでに埋め込みを持っている場合は、再計算する前に、埋め込み列のリストを明示して(
X=[...])再利用します。 - ユーザーが簡潔なワークフローのスニペットを求めている場合は、短いコードブロックを1つ優先し、長い説明文で囲むことは避けます。
正規ドキュメント
- GFQL + AI の組み合わせ:https://pygraphistry.readthedocs.io/en/latest/gfql/combo.html
- API の AI リファレンス:https://pygraphistry.readthedocs.io/en/latest/api/ai.html
- AI ノートブックのインデックス:https://pygraphistry.readthedocs.io/en/latest/notebooks/ai.html
- RGCN ノートブックの例:https://pygraphistry.readthedocs.io/en/latest/demos/more_examples/graphistry_features/embed/simple-ssh-logs-rgcn-anomaly-detector.html
コメント
Markdown 対応