はじめに
2026年は「バーティカルAIエージェント元年」とも呼ばれ、特に金融分野では複数のOSSプロジェクトが急速にスターを集めています。LLM(大規模言語モデル)が単なるチャットボットを超え、計画・実行・検証・改善を自律的に繰り返す「AIエージェント」として金融リサーチやトレーディング戦略の構築を行う時代が到来しました。
本記事では、2026年5月時点で特に注目されている2つのOSSプロジェクトを徹底的に解説します。
| プロジェクト | 一言で言うと |
|---|---|
| 🤖 Dexter | 「Claude Code、ただし金融リサーチ専用」 — 自律型深掘りリサーチエージェント |
| 📊 Vibe-Trading | 「一行コマンドで量化戦略を生成・バックテスト・改善」 — マルチエージェント トレーディングワークスペース |
⚠️ 免責事項: 本記事で紹介するプロジェクトはすべて教育・研究目的であり、実際の投資判断やリアルトレードを推奨するものではありません。投資に関する意思決定は必ずライセンスを持つファイナンシャルアドバイザーに相談してください。
目次
- 金融AIエージェントとは?
- Dexter — 自律型金融リサーチエージェント
- Vibe-Trading — マルチエージェント量化トレーディングワークスペース
- 徹底比較表
- 関連プロジェクト(TradingAgents / ai-hedge-fund)
- ユースケース別おすすめ
- まとめ
1. 金融AIエージェントとは?
従来のLLM活用(ChatGPTへの質問など)は単発の応答が中心でした。一方、金融AIエージェントは以下のような自律的なループを実行します:
ユーザーの質問
↓
📋 タスク計画(Plan) — 質問を複数のサブタスクに分解
↓
🔧 実行(Act) — 金融データAPI・Web検索・ファイル解析を呼び出し
↓
🔍 自己検証(Reflect) — 結果の整合性・網羅性をチェック
↓
🔄 反復(Iterate) — 不足があれば追加ツール呼び出しへ戻る
↓
📝 最終回答生成(Synthesize)
この「Plan → Act → Reflect → Iterate」の設計パターンこそが、2026年の金融AIエージェントに共通する設計原則です。
2. Dexter — 自律型金融リサーチエージェント
2.1 概要
| 項目 | 内容 |
|---|---|
| リポジトリ | virattt/dexter |
| ⭐ Star数 | 26,500+(2026年5月時点) |
| 言語 | TypeScript |
| ランタイム | Bun v1.0+ |
| ライセンス | MIT(README記載) |
| 作者 | Virat Singh(ai-hedge-fund の作者でもある) |
| コンセプト | 「Claude Code, but built specifically for financial research」 |
Dexterは、複雑な金融リサーチの質問を受け取り、計画→実行→自己検証→反復のループで自律的にリサーチを遂行するCLIベースのAIエージェントです。単なる「LLM + Function Calling」ではなく、監査可能な研究プロセス全体を自動化する点が最大の特徴です。
2.2 アーキテクチャ
Dexterのアーキテクチャは3つの柱で構成されています:
① エージェントループ(Plan → Act → Reflect → Iterate)
[ユーザーの質問]
│
▼
┌─────────────────────┐
│ タスク計画(Plan) │ ← 複雑な質問を構造化されたリサーチステップに分解
└─────────┬───────────┘
│
▼
┌─────────────────────┐
│ ツール実行(Act) │ ← 金融データAPI / Web検索 / ブラウザ操作
└─────────┬───────────┘
│
▼
┌─────────────────────┐
│ 自己検証(Reflect) │ ← データの整合性・網羅性を自己チェック
└─────────┬───────────┘
│
不足あり? ──Yes──→ ツール実行へ戻る
│
No
│
▼
┌─────────────────────┐
│ 最終回答(Synthesize)│ ← スクラッチパッドの全データを統合して回答生成
└─────────────────────┘
- 最大反復回数: デフォルト10回(設定変更可能)
- ループ検出: 同じツールを同じ引数で3回連続呼び出すと強制的に「まとめ」モードに移行
- ステップ上限: N回超過で途中結果を返して終了(暴走防止)
② スクラッチパッド(Scratchpad)— 単一の真実の源
Dexterの最大の差別化要素がスクラッチパッドです。すべてのツール呼び出し結果をJSONL形式でディスクに保存し、LLMのコンテキストには短い要約(llmSummary)だけを渡します。
{
"type": "tool_result",
"timestamp": "2026-05-08T11:14:05.123Z",
"toolName": "get_income_statements",
"args": { "ticker": "AAPL", "period": "annual", "limit": 5 },
"result": { "/* 50KBのJSON生データ */" },
"llmSummary": "Retrieved 5 years of Apple annual income statements showing revenue growth from $274B to $394B"
}
メリット:
- 🔍 監査可能: すべてのデータ取得プロセスが
.dexter/scratchpad/に記録される - 💰 コスト削減: 生データ(50KB+)ではなく要約だけをLLMに渡すのでトークン消費を大幅削減
- 📏 長いリサーチに対応: 20以上のツール呼び出しでもコンテキスト長を超えない
③ SKILL.md — 宣言的なワークフロー拡張
Claude Codeと同様のYAML frontmatter + Markdownフォーマットで、コードを書かずにカスタムリサーチワークフローを追加できます。
---
name: dcf
description: Run a DCF valuation for a given ticker
---
# Steps
1. Pull the latest income statement, balance sheet, and cash flow statement.
2. Project free cash flows for the next 5 years.
3. Compute the terminal value and discount to present value.
同梱スキル:
-
dcf— 割引キャッシュフロー法によるバリュエーション -
x-research— 補助リサーチワークフロー -
investment-memo— 投資メモ作成(最新追加)
2.3 対応LLMプロバイダ
| プロバイダ | 備考 |
|---|---|
| OpenAI | デフォルト |
| Anthropic |
cache_controlによるSystem Promptキャッシュ対応 |
| Gemini系 | |
| xAI | Grok系 |
| OpenRouter | 複数モデルの集約 |
| Ollama | ローカル実行(外部APIにデータを送れない環境向け) |
2.4 データソースと必要APIキー
| APIキー | 用途 | 必須/任意 |
|---|---|---|
OPENAI_API_KEY |
デフォルトLLM | 必須(デフォルト構成) |
FINANCIAL_DATASETS_API_KEY |
米国上場企業の財務データ(PL/BS/CF) | 事実上必須 |
EXASEARCH_API_KEY |
Web検索(優先) | 任意 |
TAVILY_API_KEY |
Web検索(フォールバック) | 任意 |
ANTHROPIC_API_KEY 等 |
代替LLM | 任意 |
⚠️ 重要: Financial Datasets APIは米国市場が中心です。日本株を扱いたい場合は、フォーク版の
dexter-jp(EDINET DB + J-Quants連携)やdexter-kabu-jpの利用を検討してください。
2.5 WhatsAppゲートウェイ(キラー機能)
DexterにはWhatsApp統合が組み込まれています。自分自身へのメッセージ(セルフチャット)を入力として使い、同じチャットに回答を返す仕組みです。
# WhatsAppアカウントをリンク(QRコードをスキャン)
bun run gateway:login
# ゲートウェイを起動
bun run gateway
→ スマホから「NVDAの直近四半期のグロスマージンは?」と送信するだけで、数秒後に実データに基づく回答が返ってきます。
2.6 評価(Evaluation)スイート
# 全問題で評価
bun run src/evals/run.ts
# ランダム10問サンプル
bun run src/evals/run.ts --sample 10
- LangSmithでトラッキング
- LLM-as-Judgeアプローチ:別の(より強力な)モデルが正解判定
- リアルタイムUIで進捗表示
2.7 運用コスト目安
| 項目 | コスト |
|---|---|
| 1クエリあたり(gpt-5-mini、5〜10ツール呼び出し) | $0.02〜$0.10 |
| Exa検索 | $0.005/クエリ |
| 月額目安(個人利用) | $10〜$30 |
| gpt-5やclaude-opus-4に変更した場合 | 5〜10倍 |
参考: Bloomberg Terminalの年間コストは約$24,000。
2.8 セットアップ
# 1. Bunをインストール(まだの場合)
curl -fsSL https://bun.com/install | bash
# 2. リポジトリをクローン
git clone https://github.com/virattt/dexter.git
cd dexter
# 3. 依存関係をインストール
bun install
# 4. 環境変数を設定
cp env.example .env
# .envを編集してAPIキーを設定
# 5. 起動
bun start
2.9 Dexterの限界
| 限界 | 詳細 |
|---|---|
| 🌏 データカバレッジ | 米国株中心。国際市場・債券・デリバティブは限定的 |
| 📈 リアルタイム株価なし | ファンダメンタルリサーチ特化。分足OHLCデータは非対応 |
| 🧮 LLMの計算ミス | 複合成長率の計算等でミスが起こりうる。必ずスクラッチパッドで検証を |
| 🤖 シングルエージェント | マルチエージェントの議論・敵対的レビューは非対応 |
| 🏗️ Bun依存 | Node.js LTSやDenoを標準とするチームには摩擦になる |
3. Vibe-Trading — マルチエージェント量化トレーディングワークスペース
3.1 概要
| 項目 | 内容 |
|---|---|
| リポジトリ | HKUDS/Vibe-Trading |
| ⭐ Star数 | 8,800+(2026年5月時点) |
| 言語 | Python |
| ライセンス | MIT |
| 開発元 | 香港大学データ智能実験室(HKUDS) |
| コンセプト | 「One Command to Empower Your Agent with Comprehensive Trading Capabilities」 |
Vibe-Tradingは、自然言語の一行プロンプトから量化戦略の生成・バックテスト・レポート出力までを自動実行するオープンソースのリサーチワークスペースです。Dexterが「深掘りリサーチ」に特化しているのに対し、Vibe-Tradingは戦略構築→バックテスト→改善のフルサイクルをカバーします。
📌 重要: Vibe-Tradingは研究・シミュレーション・バックテスト目的で設計されており、リアルの取引は実行しません。
3.2 主要機能
🔍 自己改善型トレーディングエージェント
- 自然言語によるマーケットリサーチ
- 戦略ドラフト生成とファイル/Web解析
- クロスセッションメモリ — 前回のセッションで有効だったワークフローを「スキル」として記憶・再利用
🐝 マルチエージェント トレーディングチーム(Swarm)
29のプリセットチームが用意されており、複数のAIエージェントが協調してリサーチを実行します。
| プリセット例 | 内容 |
|---|---|
investment_committee |
強気派 vs 弱気派の議論 → リスク管理審査 → ポートフォリオマネージャー決定 |
quant_strategy_desk |
銘柄スクリーニング → ファクター分析 → バックテスト → 監査 |
crypto_trading_desk |
ファンディングレート + 清算データ + 資金フロー分析 |
macro_rates_fx_desk |
マクロ金利 + 外為 + コモディティ分析 |
📊 クロスマーケット対応のデータとバックテスト
6つの資産クラス:
- A株(中国)、香港株、米国株、暗号通貨、先物、外為
7つのバックテストエンジン:
- 個別市場エンジン +
CompositeEngine(複数市場を共有資金プールでバックテスト)
統計的検証:
- モンテカルロ置換検定、ブートストラップ信頼区間、Walk-Forward分析
無料データソース(APIキー不要):
- A株: AKShare、HK/US: yfinance、暗号通貨: OKX/CCXT — 自動フォールバック対応
🐿️ Alpha Zoo — 452のプリビルト量化アルファ
# ワンラインでアルファZooをベンチマーク
vibe-trading alpha bench --zoo gtja191 --universe csi300 --period 2018-2025 --top 20
# カタログを閲覧
vibe-trading alpha list --zoo gtja191 --theme reversal --limit 10
# 個別アルファの詳細
vibe-trading alpha show gtja191_171
| Zoo | 数量 | 出典 |
|---|---|---|
qlib158 |
158 | Microsoft Qlib(Apache-2ライセンス) |
alpha101 |
101 | Kakushadze 101 Formulaic Alphas(arXiv論文) |
gtja191 |
191 | 国泰君安2014年短期ファクターレポート |
academic |
2 | Fama-French 5 + Carhart 価格ベースプロキシ |
👥 Shadow Account — 自分のトレード行動を分析
自分の実際のトレード記録をアップロードし、AIが行動パターンを分析 → ルールを抽出 → シャドウ戦略をバックテスト → 比較レポートを出力します。
vibe-trading --upload trades_export.csv
vibe-trading run -p "Analyze my trading behavior, extract my shadow strategy, and compare it with my actual trades"
| ステップ | エージェントの出力 |
|---|---|
| 1. ジャーナル読み取り | 同花順、東方財富、富途、汎用CSV対応 |
| 2. 行動プロファイリング | 保有日数、勝率、PnL比率、ドローダウン、行動バイアス検出 |
| 3. ルール抽出 | 繰り返しのエントリー/エグジットを明示的な戦略プロファイルに変換 |
| 4. シャドウ実行 | 抽出されたルールでバックテスト、ルール違反を検出 |
| 5. レポート出力 | HTML/PDFレポート生成 |
3.3 3つのインターフェース
| インターフェース | コマンド | 用途 |
|---|---|---|
| CLI / TUI | vibe-trading |
インタラクティブな対話型ターミナル |
| Web UI | vibe-trading serve --port 8899 |
ブラウザベースのダッシュボード |
| MCP Server | vibe-trading-mcp |
Claude Desktop / Cursor / OpenClaw のプラグインとして動作 |
3.4 75のファイナンススキル × 8カテゴリ
データ取得、戦略生成、バックテスト、分析、資産管理、暗号通貨、資金フロー、ユーティリティの8カテゴリに75のスキルが実装されています。
3.5 対応LLMプロバイダ(13種)
OpenRouter、OpenAI、DeepSeek、Gemini、Groq、DashScope/Qwen、Zhipu(GLM)、Moonshot/Kimi、MiniMax、Xiaomi MIMO、Z.ai、Ollama(ローカル)、OpenAI Codex
推奨モデル構成:
| 用途 | 推奨モデル |
|---|---|
| 🏆 複雑なSwarm | Claude Opus 4.7, GPT-5.5-pro, Gemini 3.5 Flash |
| ✅ 日常利用(デフォルト) | DeepSeek v4 Pro, Grok 4.20, GLM 5.1, Kimi K2.6, Qwen3 Max |
| ❌ 避けるべき | *-nano, *-flash-lite, 小型/蒸留モデル(ツール呼び出しが不安定) |
3.6 セットアップ
# PyPIから1行インストール
pip install vibe-trading-ai
# 初期設定(対話形式でLLM APIキーを設定)
vibe-trading init
# 最初のリサーチタスクを実行
vibe-trading run -p "Backtest a BTC-USDT 20/50 moving-average strategy for 2024, summarize return and drawdown, then export the report"
Docker版(ゼロセットアップ):
git clone https://github.com/HKUDS/Vibe-Trading.git
cd Vibe-Trading
cp agent/.env.example agent/.env
# agent/.envを編集してLLMプロバイダとAPIキーを設定
docker compose up --build
# → http://localhost:8899 でアクセス
3.7 CLIコマンド & 使用例
# 移動平均戦略のバックテスト
vibe-trading run -p "Backtest a 20/50-day moving average crossover on AAPL for the past year, show Sharpe ratio and max drawdown"
# RSIミーンリバージョン(暗号通貨)
vibe-trading run -p "Test RSI(14) mean-reversion on BTC-USDT: buy below 30, sell above 70, last 6 months"
# マルチファクター戦略(A株)
vibe-trading run -p "Backtest a momentum + value + quality multi-factor strategy on CSI 300 constituents over 2 years"
# Swarmチームによる議論
vibe-trading --swarm-run investment_committee '{"topic": "Is TSLA a buy at current levels?"}'
# TradingView / TDX / MetaTrader 5へのエクスポート
vibe-trading --pine <run_id>
# クロスセッションメモリ
vibe-trading run -p "Remember: I prefer RSI-based strategies, max 10% drawdown, hold period 5-20 days"
3.8 API & MCPツール
REST API(22エンドポイント):
| メソッド | エンドポイント | 機能 |
|---|---|---|
| POST | /sessions |
セッション作成 |
| POST | /sessions/{id}/messages |
メッセージ送信 |
| GET | /sessions/{id}/events |
SSEイベントストリーム |
| POST | /swarm/runs |
Swarm実行開始 |
| POST | /alpha/bench |
Alpha Zooベンチマーク |
| POST | /upload |
ファイルアップロード |
MCPツール: 22種類(Claude Desktop / Cursor等から呼び出し可能)
3.9 Vibe-Tradingの限界
| 限界 | 詳細 |
|---|---|
| 🚫 リアル取引非対応 | バックテスト・シミュレーション専用 |
| 🧠 モデル依存 | 小型モデルではツール呼び出しが不安定になる |
| 📊 データ品質 | 無料データソースの精度は有料APIに劣る場合がある |
| 🏗️ Python 3.11+ | 古いPython環境では動作しない |
4. 徹底比較表
| 項目 | 🤖 Dexter | 📊 Vibe-Trading |
|---|---|---|
| リポジトリ | virattt/dexter | HKUDS/Vibe-Trading |
| ⭐ Star数 | 26,500+ | 8,800+ |
| 言語 | TypeScript | Python |
| ランタイム | Bun v1.0+ | Python 3.11+ |
| ライセンス | MIT(README記載) | MIT |
| 開発元 | Virat Singh(個人) | 香港大学 HKUDS |
| アーキテクチャ | シングルエージェント(Plan→Act→Reflect→Iterate) | マルチエージェント(29プリセットSwarmチーム) |
| 主な目的 | 深掘りファンダメンタルリサーチ | 戦略生成 → バックテスト → レポートのフルサイクル |
| 対象市場 | 🇺🇸 米国株中心 | 🌏 A株/香港/米国/暗号通貨/先物/外為(6市場) |
| データソース | Financial Datasets API(有料) | AKShare / yfinance / OKX / CCXT(無料、自動フォールバック) |
| バックテスト | ❌ なし(リサーチ特化) | ✅ 7エンジン + 統計的検証 |
| 量化アルファ | ❌ | ✅ 452プリビルトアルファ(Alpha Zoo) |
| スキル数 | 2(DCF、X-Research)+ SKILL.md拡張 | 75スキル × 8カテゴリ |
| インターフェース | CLI + WhatsApp | CLI / Web UI / MCP |
| 評価スイート | ✅ LangSmith + LLM-as-Judge | ❌ 明示的なeval無し |
| 監査証跡 | ✅ スクラッチパッド(JSONL) | ✅ ランカード + 信頼レイヤー |
| LLMプロバイダ | 6種 | 13種 |
| クロスセッションメモリ | ❌ | ✅ |
| Shadow Account | ❌ | ✅ 自分のトレード行動分析 |
| 1クエリあたりコスト | $0.02〜$0.10 | モデル依存(無料データ使用の場合はLLMコストのみ) |
| 最適ユースケース | 「AAPLの5年間FCF推移をMSFTと比較して」 | 「BTC-USDTの移動平均戦略を2024年でバックテストして」 |
5. 関連プロジェクト(TradingAgents / ai-hedge-fund)
金融AIエージェントの全体像を理解するために、他の主要プロジェクトも押さえておきましょう。
5.1 TradingAgents(TauricResearch)
| 項目 | 内容 |
|---|---|
| リポジトリ | TauricResearch/TradingAgents |
| ⭐ Star数 | 79,800+ |
| 論文 | arXiv:2412.20138(AAAI 2025 Oral) |
| アーキテクチャ | マルチエージェント(ファンダメンタル/センチメント/テクニカル/ニュースのアナリスト + Bull/Bear研究者 + トレーダー + リスク管理チーム + ファンドマネージャー) |
| 特徴 | 実際のトレーディングファームの組織構造をLLMエージェントで再現。エージェント間の議論・討論を通じて最適な戦略を導出 |
実績: 年率30.5%のリターンを達成し、従来のベースラインモデルを大幅に上回った(論文での報告)。
5.2 ai-hedge-fund(virattt)
| 項目 | 内容 |
|---|---|
| リポジトリ | virattt/ai-hedge-fund |
| ⭐ Star数 | 59,000+ |
| アーキテクチャ | 18のAIエージェント(ウォーレン・バフェット、チャーリー・マンガー、キャシー・ウッド等の投資哲学をペルソナとして実装) |
| 特徴 | 複数の著名投資家の視点を並列実行し、売買シグナルを統合。教育・シミュレーション目的 |
5.3 4プロジェクトのポジショニングマップ
リサーチ重視 ←────────────────────────────────→ トレーディング重視
│ │
シングル │ 🤖 Dexter │
エージェント │ (深掘りリサーチ) │
│ │
──────────────┼─────────────────────────────────────────────────────┤
│ │
マルチ │ 👔 ai-hedge-fund 📊 Vibe-Trading │
エージェント │ (投資家ペルソナ議論) (戦略生成+バックテスト) │
│ 🏢 TradingAgents │
│ (トレーディングファーム再現) │
6. ユースケース別おすすめ
🎯 ユースケースA: 「特定の米国株について徹底的にリサーチしたい」
→ Dexter がおすすめ
bun start
> Compare Apple and Microsoft's gross margin trend over the last 5 years
> and tell me which one has more pricing power.
理由:
- 計画→実行→検証→反復の自律ループが深掘りリサーチに最適
- スクラッチパッドによる完全な監査証跡
- Financial Datasets APIによる質の高い米国財務データ
🎯 ユースケースB: 「移動平均やRSIの戦略をサクッとバックテストしたい」
→ Vibe-Trading がおすすめ
vibe-trading run -p "Test RSI(14) mean-reversion on BTC-USDT: buy below 30, sell above 70, last 6 months"
理由:
- 一行コマンドで戦略生成 → バックテスト → レポート出力
- 7つのバックテストエンジン + 統計的検証
- 無料データソースでAPIキー不要
🎯 ユースケースC: 「複数のアナリスト視点でディベートさせたい」
→ Vibe-Trading(Swarm)または TradingAgents
# Vibe-Trading
vibe-trading --swarm-run investment_committee '{"topic": "Is TSLA a buy at current levels?"}'
# TradingAgents
python main.py --ticker TSLA
🎯 ユースケースD: 「自分のトレード履歴を分析してバイアスを発見したい」
→ Vibe-Trading(Shadow Account)
vibe-trading --upload trades_export.csv
vibe-trading run -p "Analyze my trading behavior and identify biases"
🎯 ユースケースE: 「日本株を分析したい」
→ Dexterの日本語フォーク版
- edinetdb/dexter-jp — EDINET DB + J-Quants連携
- raditrejp/dexter-kabu-jp — ラジ株ナビMCP連携
Vibe-TradingもA株データ(AKShare)は対応していますが、日本市場の直接的なサポートは限定的です。
🎯 ユースケースF: 「Claude Desktop / Cursorのプラグインとして使いたい」
→ Vibe-Trading(MCP)
vibe-trading-mcp # MCPサーバーを起動(stdio)
22のMCPツールが利用可能。既存のAIワークフローに量化分析を追加できます。
7. まとめ
金融AIエージェントの選び方フローチャート
あなたの目的は?
│
├─ 深掘りファンダメンタルリサーチ
│ └─ 🤖 Dexter
│ ├─ 米国株 → 本家 Dexter
│ └─ 日本株 → dexter-jp / dexter-kabu-jp
│
├─ 戦略のバックテスト・量化分析
│ └─ 📊 Vibe-Trading
│
├─ 投資家ペルソナ間の議論シミュレーション
│ └─ 👔 ai-hedge-fund
│
└─ トレーディングファーム全体の再現
└─ 🏢 TradingAgents
2026年の金融AIエージェントの現在地
| ✅ できること | ❌ まだできないこと |
|---|---|
| 自律的な財務データ収集・分析 | 人間の判断力の完全な代替 |
| 複数の投資視点のシミュレーション | リアルタイムの高頻度取引 |
| 戦略の自動生成とバックテスト | 市場の構造変化の予測 |
| 監査可能なリサーチプロセス | 100%正確な数値計算 |
| 自然言語による操作 | 規制・コンプライアンスの自動判断 |
金融AIエージェントは、人間のリサーチャー・アナリストを「代替」するものではなく、「増強」するものです。ツールが自動化してくれる部分を活かしつつ、最終的な投資判断は必ず人間が行いましょう。
参考リンク
- 📦 virattt/dexter — 自律型金融リサーチエージェント
- 📦 HKUDS/Vibe-Trading — マルチエージェント量化トレーディングワークスペース
- 📦 TauricResearch/TradingAgents — マルチエージェントLLM金融トレーディングフレームワーク
- 📦 virattt/ai-hedge-fund — AIヘッジファンドチーム
- 📄 TradingAgents論文(arXiv:2412.20138)
- 📝 Dexter Review(andrew.ooo)
- 📝 OSS「dexter」の仕組みと自律金融リサーチを支える設計(秋霜堂)
- 📝 一句话写量化策略:港大开源 Vibe-Trading(果比AI)
- 📦 vibe-trading-ai(PyPI)