---
title: "MixSeekとは？複数AIチームを競わせる仕組みと導入手順【0.1.0a19対応】"
url: "https://www.issoh.co.jp/tech/details/10365/"
published: 2025-12-23
updated: 2026-10-07
categories: ["AIエージェント・MCP"]
publisher: "株式会社一創"
---

# MixSeekとは？複数AIチームを競わせる仕組みと導入手順【0.1.0a19対応】

MixSeek（正式なパッケージ名はmixseek-core）は、同じ質問に複数のAIエージェントチームを並列で取り組ませ、評価役のAIが付けた点数で最良の回答を選ぶオープンソースのマルチエージェント基盤です。AlpacaTechが開発し、Apache License 2.0で公開しています。

本記事では、2026年9月15日公開の最新版[0.1.0a19](https://pypi.org/project/mixseek-core/0.1.0a19/)のソースとドキュメントに沿って、チーム・採点・ラウンドの仕組み、インストールで今つまずく依存関係の回避策、実行結果の確認方法、API費用の見積もり方を整理します。インストール、`mixseek init`、`--dry-run` による設定検証、DuckDBの列構成は、2026年10月7日に0.1.0a19を入れて確認しました。APIを呼ぶ本番実行の結果は掲載していません。

## まとめ：MixSeekの要点（2026年10月時点）

- MixSeekは、Leader 1体とMember複数体で組んだチームを並べて同時に走らせ、Evaluatorの採点が最も高い回答を採用するフレームワークです。土台はPydantic AIです。
- 最新版は0.1.0a19（2026年9月15日）です。Alphaの段階で、Python 3.13.7以上が必要です。
- 2026年10月7日時点では、新しい環境に `pip install mixseek-core` するだけでは起動できません。依存ライブラリの新版と噛み合わないためで、`uv tool install` に `--with` で2つの指定を足すと動きます。
- 実行は `mixseek init` でワークスペースを作り、`mixseek exec` で複数チームを走らせる流れです。結果はワークスペース直下の `mixseek.db`（DuckDB）に残ります。
- LLMの呼び出しは「チーム数×ラウンド数×（Leader＋Member＋評価メトリクス数＋継続判定）」で増えます。初期化で作られる3チーム構成のサンプルを3ラウンド回し、Memberを各ラウンド1回呼ぶ条件で試算すると63回です。
- 2026年5月の0.1.0a16から、手順を固定して流すworkflow modeも使えます。「競わせる」以外の使い方も選べるようになりました。

以下、正体と関連プロダクトの区別、仕組み、導入、使い方、費用、採用判断の順に見ていきます。

## MixSeek-Coreの開発元・ライセンス・開発状況

MixSeek-CoreのリポジトリはGitHubの `mixseek/mixseek-core` で、pyproject.tomlの作者欄はAlpacaTech Co. Ltd.、ライセンスはApache-2.0です。最初のGitHubリリースv0.1.0a1は2025年12月5日に公開され、PyPIには2026年1月28日の0.1.0a8から公開されています。分類子は「Development Status :: 3 – Alpha」のままで、0.1.0a19までの約10か月で19回のアルファ版を出しています。仕様が版ごとに動く段階だと見ておくのが妥当です。

依存の中心はPydantic AIで、LLMの呼び出し、構造化出力、リトライをPydantic AIに任せています。Pydantic AI自体の書き方は[PydanticAIの型安全なエージェント実装](/tech/details/6743/)で解説しています。

### MixSeek-Plus・Quant Insight・AIデータレイクとの違い

「MixSeek」を名前に含むものは複数あり、提供元も中身も違います。検索で混ざりやすいので先に区別しておきます。

| 名称                    | リポジトリ・提供元                     | 中身                           |
| --------------------- | ----------------------------- | ---------------------------- |
| MixSeek-Core          | mixseek/mixseek-core          | 本体のフレームワーク（本記事の対象）           |
| MixSeek Quant Insight | mixseek/mixseek-quant-insight | 株価シグナル生成を競わせる拡張（0.1.0）       |
| mixseek-plus          | drillan/mixseek-plus（個人）      | Groq・Tavily・Claude Code対応の拡張 |
| MixSeek AIデータレイク      | AlpacaTech                    | 日本株の開示情報を扱う金融向けデータ基盤         |

mixseek-plusは公式organizationの外にある個人リポジトリで、PyPIには登録されておらず、GitHubから直接インストールします。MixSeek AIデータレイクは、TDnetやEDINETの開示情報をAIエージェントから参照できるようにする基盤として2026年5月に報じられたもので、OSSのMixSeek-Coreとは別物です。

## MixSeekの仕組み：チーム・採点・ラウンドの3層

MixSeekの実行は、オーケストレーターが複数チームを `asyncio.gather()` で同時に起動するところから始まります。チームごとにRoundControllerが付き、回答の提出・採点・継続判定をチーム単位で繰り返します。失敗したチームは隔離され、残りのチームの実行は続きます。

### Leaderの役割とMember Agentの型

チームはLeader Agent 1体と、Leaderから仕事を振られるMember Agentで構成します。Member Agentの型は設定ファイルの `type` で選びます。

- `plain`：ツールを持たず、モデルの知識と推論だけで答える
- `web_search`：Web検索で情報を集める
- `web_fetch`：指定したURLの中身を取得して読む
- `code_execution`：Pythonコードを実行して計算する（Anthropicのモデル限定）
- カスタム：Pythonで独自のMember Agentを実装して登録する

code\_executionは公式ドキュメントに「Anthropic Claudeモデルのみサポート」と明記され、Google・OpenAIのモデルでは動きません。計算を任せるチームを作るならAnthropicのAPIキーが前提になります。1チームで同時に動かせるMemberの上限は `max_concurrent_members`（既定15、範囲1〜50）です。

### Evaluatorの採点とリーダーボード

各チームの回答は、Evaluatorが複数のメトリクスでLLM-as-a-Judge方式で採点します。`mixseek init` が作るサンプル設定では、次の4メトリクスに重みを付けて合成しています。

| メトリクス            | 重み   | 見ている点             |
| ---------------- | ---- | ----------------- |
| Coverage         | 0.30 | 網羅性               |
| Relevance        | 0.25 | 質問への適合            |
| ClarityCoherence | 0.20 | 構成と読みやすさ          |
| LLMPlain         | 0.25 | 新規性・意外性（サンプルでの指示） |

evaluator.pyはメトリクスを1つずつ順番に評価し、LLM型のメトリクスはそれぞれ別にLLMを呼び出します。サンプルの4つはいずれもLLM型なので、採点1回でエージェント実行が4回起きます（失敗時のリトライは別に数えます）。点数はDuckDBの `leader_board` テーブルの `score` 列に、メトリクスごとの内訳とコメントは `score_details`（JSON）に記録され、最も高い点数の提出が採用されます。採点プロンプトの設計やバイアスの抑え方は[LLM-as-a-Judgeの評価プロンプトとバイアス対策](/tech/details/10331/)が参考になります。

### ラウンド継続判定の3段階

1回の提出で終わらせず、採点のフィードバックを受けて回答を作り直すのがラウンド制です。既定のプロンプトでは、それまでの全ラウンドの提出内容と評価がLeaderに渡され、2ラウンド目以降は他チームを含む順位表も加わります。続けるかどうかは、round\_controller/controller.pyの次の3段階で決まります。

1. 現在のラウンドが `min_rounds` 未満なら、判定せずに次へ進む
2. それ以降は、Judgment用のLLMが前回と今回の成果物を比べて `should_continue` を返す
3. `max_rounds` に達したら、LLMの判定に関係なく停止する

3段目には無駄があります。最終ラウンドでもLLMの判定は既定で実行されるのに、結果は捨てられます。0.1.0a15で追加された `judge_on_final_round = false` を指定すると、この呼び出しを省けます。既定が `true` なのは後方互換のためと設定リファレンスに書かれているので、新しく設定を書くならfalseにしておく方が得です。

## MixSeekのインストールとセットアップ手順（0.1.0a19）

### 必要な環境とAPIキー

Pythonは3.13.7以上が必要です（pyproject.tomlの `requires-python`）。公式ドキュメントはuvでの導入を前提にしていて、uvなら必要なPythonも自動で取得されます。ワークスペースの場所は、環境変数 `MIXSEEK_WORKSPACE` か、各コマンドの `--workspace` オプションで指定します。あとは使うモデルのAPIキーを設定します。

| プロバイダー           | モデル指定の形式           | 環境変数                             |
| ---------------- | ------------------ | -------------------------------- |
| Google Gemini    | google-gla:モデル名    | GOOGLE\_API\_KEY                 |
| Google Vertex AI | google-vertex:モデル名 | GOOGLE\_APPLICATION\_CREDENTIALS |
| OpenAI           | openai:モデル名        | OPENAI\_API\_KEY                 |
| Anthropic        | anthropic:モデル名     | ANTHROPIC\_API\_KEY              |
| xAI              | xai:モデル名           | GROK\_API\_KEY                   |

サンプル設定の既定はGeminiの `gemini-flash-lite-latest` で、1チーム構成の `search_news.toml` を試すだけならGOOGLE\_API\_KEYで足ります。3チーム構成の `search_news_multi_perspective.toml` はSNSチームのMemberがGrokを使うため、GROK\_API\_KEYも必要です。未設定のままだと `--dry-run` の認証チェックで止まります。xAIのモデルには別の注意点もあります。READMEの例にある `grok-3` と、多視点サンプルのSNSチームが使う `grok-4-1-fast` 系は、xAIが2026年5月15日に廃止したモデルです。指定はそのまま通りますが、転送先の `grok-4.3` の単価（入力100万トークンあたり1.25ドル、出力2.50ドル）で課金されます。

### pip installで起動できない依存関係の回避策

2026年10月7日に、新しく作った仮想環境（Python 3.13.14）へ `pip install mixseek-core==0.1.0a19` で入れたところ、`mixseek` コマンドが起動しませんでした。原因は2つあります。

- typer 0.27.3がclickに依存しなくなり、`ModuleNotFoundError: No module named 'click'` で止まる
- clickを足しても、pydantic-ai-slim 2.54.0では `pydantic_ai.providers.grok` が見つからずに止まる

mixseek-coreは依存の下限（`typer>=0.20.0`、`pydantic-ai-slim>=1.26.0`）しか指定していないため、新しく入れるとその時点の最新版が選ばれます。リポジトリの uv.lock はtyper 0.20.0とpydantic-ai-slim 1.26.0で固定されています。次のように、Pydantic AIを2系未満に抑え、clickを明示して入れると起動しました。

```
uv tool install mixseek-core==0.1.0a19 \
  --with "pydantic-ai-slim[anthropic,google,openai]<2" \
  --with click
mixseek --version
# mixseek version 0.1.0a19
```

pipでライブラリとして入れる場合も、同じ2つを制約として渡します。上流で修正版が出れば不要になるので、導入前にPyPIの最新版とCHANGELOGを確認してください。

### ワークスペースの初期化と設定の検証

`mixseek init` を実行すると、ワークスペースに7つの設定ファイルが作られます。

```
export MIXSEEK_WORKSPACE=$HOME/mixseek-workspace
export GOOGLE_API_KEY=your-api-key
export GROK_API_KEY=xai-your-api-key   # 3チーム構成を使う場合
mixseek init

# 作成されるファイル
configs/search_news.toml                      # 1チーム構成
configs/search_news_multi_perspective.toml    # 3チーム構成
configs/agents/team_general_researcher.toml
configs/agents/team_sns_researcher.toml
configs/agents/team_academic_researcher.toml
configs/evaluators/evaluator_search_news.toml
configs/judgment/judgment_search_news.toml
```

APIを呼ぶ前に、`--dry-run` で設定を検証できます。Evaluator・Judgment・メトリクス名・ワークスペースの書き込み権限に加え、APIキーの有無と形式（xAIのキーが `xai-` で始まるか等）まで確かめ、問題があれば「Preflight failed」と件数を表示します。

```
mixseek exec "test" --dry-run \
  --config configs/search_news_multi_perspective.toml
```

## MixSeekの使い方：exec・team・uiの各コマンド

### 複数チームを競わせるmixseek exec

本番の実行は `mixseek exec` です。質問文と、オーケストレーターの設定ファイルを渡します。

```
mixseek exec "最新のAI技術トレンドについて調査してください" \
  --config configs/search_news_multi_perspective.toml \
  --output-format json
```

多視点サンプルのオーケストレーター設定は、3チーム（汎用・SNS・学術）、`min_rounds = 1`、`max_rounds = 3`、チームごとのタイムアウト300秒です。チーム単位のタイムアウトは `--timeout` で上書きでき、`--output-format json` を付けると結果を機械処理しやすい形で受け取れます。

### 開発用のmixseek teamとmixseek member

1チームだけを走らせる `mixseek team` と、Member Agent単体を走らせる `mixseek member` もあります。CLIのヘルプにはどちらも「development/testing only」と書かれており、チームやエージェントの設定を詰めるときの動作確認用です。採点を伴う比較は `exec` で行います。

### 結果の確認：DuckDBとWeb UI

実行結果は `$MIXSEEK_WORKSPACE/mixseek.db` に保存されます。リーダーボードは次のSQLで取り出せます。公式ドキュメントのデータベース説明では点数の列が `evaluation_score` と書かれていますが、0.1.0a19の実装（`src/mixseek/storage/schema.py`）が作る列は `score` です。ドキュメントどおりに書くとDuckDBが「Binder Error」を返します。

```
duckdb "$MIXSEEK_WORKSPACE/mixseek.db" "
SELECT team_name, round_number, score
FROM leader_board
ORDER BY score DESC, created_at ASC
LIMIT 10;"
```

同じテーブルには提出内容（`submission_content`）、メトリクスごとの内訳とコメント（`score_details`）、終了理由（`exit_reason`）も入っています。トークン使用量の列は無いため、費用を追うときは `--logfire` を付けて実行し、Logfireにトークン使用量を記録させます。DuckDBそのものの使い方は[DuckDBの特徴とSQLite・PostgreSQLとの違い](/tech/details/5741/)を参照してください。

ブラウザで見る場合は `mixseek ui` でStreamlitのダッシュボードを起動します。ただし0.1.0a17でStreamlitが任意の依存に変わったため、本体だけを入れた環境では「Streamlit is not installed」と表示されて起動しません。先ほどの `uv tool install` で入れた場合は、同じ制約を付けたまま `ui` を指定して入れ直します。

```
uv tool install --force "mixseek-core[ui]==0.1.0a19" \
  --with "pydantic-ai-slim[anthropic,google,openai]<2" \
  --with click
```

## workflow mode：手順を固定した実行（0.1.0a16〜）

MixSeekは複数チームを競わせる基盤として紹介されることが多いものの、2026年5月15日の0.1.0a16で、手順を固定して流すworkflow modeが入りました。

workflow modeでは、TOMLの `[[workflow.steps]]` に手順を並べ、各ステップの `[[workflow.steps.executors]]` にエージェントかPython関数を置きます。同じステップ内の実行者は `asyncio.gather` で並列に動きます。公式サンプルは「Web検索エージェントとツールを持たないエージェントで情報を集める→Python関数でMarkdownに整形→エージェントが最終回答を作る」の3ステップです。

出力の形式が決まっている定型の処理はworkflow modeで書き、答えが1つに定まらない調査や分析はチームを競わせる、という使い分けが同じ基盤の中でできるようになりました。

## MixSeekの費用と実行時間の見積もり方

MixSeek本体は無料ですが、LLMのAPI料金はチームとラウンドを増やすほど掛け算で増えます。1チームが1ラウンドで行うエージェント実行は、Leader 1回、Memberの呼び出し（Leaderが振った回数分）、評価メトリクスの数だけの採点、そして継続判定1回です。継続判定は現在のラウンドが `min_rounds` 以上のときに行われます。

| 多視点サンプルの条件                          | 1チーム1ラウンド | 合計  |
| ----------------------------------- | --------- | --- |
| 全チームが1ラウンドで停止                       | 7回        | 21回 |
| 全チームが3ラウンドまで実行                      | 7回        | 63回 |
| 3ラウンド＋judge\_on\_final\_round=false | 7回（最終は6回） | 60回 |

表は、Leaderが各ラウンドでMemberを1回だけ呼ぶと仮定した条件付きの試算です（Leader 1＋Member 1＋採点4＋判定1）。Memberを何回呼ぶかはLeaderがその場で判断するので、実際の回数は増えることも減ることもあります。1回のエージェント実行の中でもツール呼び出しのたびにモデルへのリクエストが発生するので、実際のリクエスト数はこれより多くなります。時間は、チームが並列に動くため最も遅いチームで決まり、サンプルでは1チーム300秒が上限です。

費用を抑える手段は4つあります。`max_rounds` を下げる、評価メトリクスを減らす、Evaluatorの `default_model` を安いモデルにする、`judge_on_final_round = false` にする、です。実行後はLogfireに記録したトークン使用量を見て、点数の伸びに見合わないラウンド数やメトリクスから削ります。

## 金融向けの拡張：MixSeek Quant Insightの評価方法

MixSeek Quant Insightは、各チームに株価のシグナル生成関数を書かせて競わせる拡張です。評価はKaggleのTime Series API形式を参考にしていて、エージェントから見えない将来の期間（Private Test期間）でバックテストします。

採点は2段階です。まず評価日ごとに、全銘柄のシグナルの順位と実際のリターンの順位のSpearman順位相関を求めます。次に、その日次相関の平均を標準偏差で割ったシャープレシオを最終スコアにします。平均的に当たるだけでなく、日による当たり外れの小さい関数が上位に来る設計です。リポジトリの最終更新は2026年2月5日で、版は0.1.0のままです。

## 他のエージェントフレームワークとの違いと採用判断

### CrewAI・AutoGenとの構造の違い

MixSeekの特徴は、採点役（Evaluator）、順位表（leader\_board）、ラウンド継続判定（Judgment）がフレームワークに最初から組み込まれている点です。同じ問いに複数の解き方を並べて点数で比べる、という評価の仕組みを自分で書かずに済みます。

一方、役割を持つエージェントが手順や会話で協力して1つの成果物を作る用途は、[CrewAIのAgent・Task・Crewの仕組み](/tech/details/13598/)や[AutoGen（v0.4以降）](/tech/details/5020/)も比較候補になります。そもそも1つのエージェントで足りるかの判断は、[シングルエージェントとマルチエージェントの使い分け](/tech/details/4261/)で整理しています。

### MixSeekを採用すべきでない場面

次の条件に当てはまるなら、MixSeekは選ばない方がよいと考えます。

- 応答に数秒しか待てない：チーム並列でも、最も遅いチームのラウンド完了まで結果が出ない
- 会話の文脈を保ったやり取りが必要：1回のexecで完結する設計で、exec同士の間で会話を自動的に引き継ぐ機能ではない
- 良い回答の基準を言葉にできない：採点が評価プロンプト頼みになり、点数の差が品質の差を示さない
- 本番で長期間の安定が要る：Alphaの段階で、依存の上限も固定されていない

反対に、調査レポートや分析のように正解が1つでなく、評価基準を書き出せて、数分待てる用途なら、複数チームの回答を点数で比べられる利点が生きます。

## よくある質問

### MixSeekは無料で使えますか？

MixSeek-CoreはApache License 2.0のOSSで、無料で商用利用もできます。ただし実行時にはGemini・OpenAI・Anthropic・xAIなど各社のAPI料金がかかり、チーム数とラウンド数に比例して増えます。

### MixSeekとMixpeekは同じものですか？

別物です。MixSeekはAlpacaTechのマルチエージェント基盤で、Mixpeekはベクトルやファイルの検索基盤を提供する別の会社のサービスです。綴りが1文字違いなので、検索するときは「mixseek-core」と書くと混ざりにくくなります。

### MixSeekに必要なPythonのバージョンは？

0.1.0a19ではPython 3.13.7以上が必要です。uvでインストールすれば、条件を満たすPythonが自動で取得されます。

### MixSeekで日本語の質問や回答は扱えますか？

扱えます。`mixseek init` が作るサンプル設定のシステムプロンプトや評価基準は日本語で書かれており、日本語の質問をそのまま渡せます。

### mixseek uiが起動しないのはなぜですか？

0.1.0a17からStreamlitが任意の依存になったためです。`uv tool install` で入れた場合は、`--force` を付けて `mixseek-core[ui]` を指定し、依存の制約も付けたまま入れ直します。

## 関連記事

- [CrewAIとは？Agent・Task・Crewの仕組みからAutoGen・LangGraphとの違い・採用判断まで実装者向けに解説【2026年版】](/tech/details/13598/)
- [PydanticAIとは｜型安全なPythonエージェントの作り方を実装コードで解説](/tech/details/6743/)
- [LLM-as-a-Judgeとは？評価プロンプトの書き方・3つのバイアス対策と人手との一致率の測り方](/tech/details/10331/)
- [シングルエージェントとマルチエージェントの違い｜使い分けの判断基準とコスト・失敗モード【2026年版】](/tech/details/4261/)
- [DuckDBとは？特徴・用途とSQLite・PostgreSQLとの違いを実測で解説【1.5.6対応】](/tech/details/5741/)

---

出典: [MixSeekとは？複数AIチームを競わせる仕組みと導入手順【0.1.0a19対応】](<https://www.issoh.co.jp/tech/details/10365/>)（株式会社一創）
