FinGPT のエージェントパイプラインを、カスタムの OpenAI 互換エンドポイントで動かす。

Updated 2026-07-30

FinGPT のマルチエージェント分析パイプラインは、api_type "openai" と base_url を受け取る AG2 の LLMConfig 辞書を通じて LLM を設定します。base_url を https://api.apisrouter.com/v1 に設定し、キーを1つ渡せば、リサーチャー・センチメント・アドバイザーの各エージェントを、カタログの任意のモデル id で動かせます。

早わかり: AG2 の LLMConfig 辞書の base_url。

FinGPT のマルチエージェント金融分析パイプライン(upstream リポジトリの fingpt/ag2_financial_analysis_pipeline.ipynb)は、model・api_key・api_type・base_url の4つのキーを持つ AG2 の LLMConfig 辞書として、LLM の設定を構築します。upstream のノートブック自体が、base_url を api.openai.com ではなく OpenAI 互換のルーターエンドポイントに向けているため、ゲートウェイ経由のルーティングは、ここでは回避策ではなくドキュメント記載済みのパターンです。 APIsRouter を通じてこのパイプラインを動かすには、api_type を "openai" に、base_url を https://api.apisrouter.com/v1 に設定し、api_key にゲートウェイのキーを入れ、model には任意のカタログ id を設定してください。ノートブック内のすべての AssistantAgent は同じ llm_config オブジェクトを受け取るため、1つの辞書がエージェントチーム全体を動かします。

from autogen import LLMConfig  # ag2[openai]>=0.11.4

llm_config = LLMConfig({
    "model": "claude-sonnet-4-6",
    "api_key": os.environ["APISROUTER_API_KEY"],
    "api_type": "openai",
    "base_url": "https://api.apisrouter.com/v1",
})

FinGPT が実際にどこで LLM API を呼び出しているか。

FinGPT(GitHub 上では AI4Finance-Foundation、スター数はおよそ21K)は、1つの名前の下に2つのものを内包しており、どちらの半分を実行しているかによって、カスタムエンドポイントがそもそも関係するかどうかが決まります。 前半はファインチューニング済みのオープンウェイトです。このプロジェクトを有名にした Llama と ChatGLM 向けの LoRA トレーニングノートブックです。これらはローカルまたはレンタル GPU 上で Hugging Face の transformers を通じて実行され、チャット補完の呼び出しは一切行わず、どんなベース URL も適用されません。 後半はアプリケーションパイプラインであり、ここに OpenAI 互換の表面が存在します。AG2 のマルチエージェント分析パイプラインは、3つの AssistantAgent(ニュースリサーチャー、センチメントアナリスト、投資アドバイザー)を1つの LLMConfig に配線し、yfinance のツール呼び出しとローカルの FinBERT センチメント分類器でそれらを強化し、株式分析を役割間で受け渡させます。財務報告分析パイプライン(fingpt/FinGPT_FinancialReportAnalysis)は、sec-api と Financial Modeling Prep を通じて取得された SEC の開示資料に対して、LangChain の ChatOpenAI を駆動します。どちらのパイプラインも標準的な /v1/chat/completions リクエストを送り、どちらもエンドポイントをパラメータとして公開し、どちらも model フィールドをそのままの文字列として転送します。これが、base_url の先にあるエンドポイントがそれを提供する限り、Claude や DeepSeek の id が "openai" の api_type に乗れる理由です。

フルセットアップ: AG2 パイプラインとレポート分析パイプライン。

AG2 パイプラインが最もクリーンな統合です。ノートブックの LLMConfig の値をゲートウェイのエンドポイントと好みのモデル id に置き換えれば、3つのエージェントとそのツール呼び出しループはそのまま動作します。財務データ側(yfinance の相場、FinBERT のセンチメントスコアリング)はローカルで API キー不要なので、あなたが移動させる外部依存は LLM エンドポイントだけです。 レポート分析パイプラインは LangChain の ChatOpenAI を使い、これは api_key と base_url をコンストラクタの引数として受け付けます。upstream のノートブックは、ローカルの OpenAI 互換サーバーに切り替える方法を示す際に、まさにこのペアを実演しています。同じ2つの引数を、代わりにゲートウェイに向けてください。このノートブックはデータ取得のために SEC と Financial Modeling Prep の認証情報も必要とすることに注意してください。それらは市場データ用のキーであり、LLM エンドポイントとは無関係で、そのままにしておきます。

import os
from autogen import AssistantAgent, LLMConfig

llm_config = LLMConfig({
    "model": "claude-sonnet-4-6",         # any catalog id
    "api_key": os.environ["APISROUTER_API_KEY"],
    "api_type": "openai",
    "base_url": "https://api.apisrouter.com/v1",
})

researcher = AssistantAgent(name="News_Researcher", llm_config=llm_config)
analyst = AssistantAgent(name="Sentiment_Analyst", llm_config=llm_config)
advisor = AssistantAgent(name="Investment_Advisor", llm_config=llm_config)

金融分析エージェントのためのモデル選び。

すべての候補が同じエンドポイントに対する1つのモデル文字列であるため、実践的なループは、銘柄と日付を固定し、候補 id ごとにパイプラインを1回実行し、アドバイザーの出力を diff することです。キーごとの利用ログが各候補の実行に価格を付けてくれるため、トークンあたりの品質という議論は、直感ではなく数字で決着します。

  • アドバイザーの役割は推論のボトルネックです。リサーチャーの発見、センチメントスコア、リスク像を1つの見通しに統合する役割であり、フロンティア級の推論モデル(claude-opus-4-7、gpt-5.5)は、その統合が凡庸でなくなる場所です。
  • リサーチャーとアナリストの役割はボリュームの役割です。見出しを読み、ツールの出力を構造化し、下書きを採点します。claude-sonnet-4-6 や deepseek-v4-pro が、中間ターンごとにフロンティア価格を払うことなく、それらを鋭く保ちます。
  • レポート分析は長文脈のワークロードです。10-K のセクションに株価目標の文脈を加えると大きなプロンプトになるため、デフォルトを当然視する前に、開示資料側で gemini-3.1-pro-preview や claude-sonnet-4-6 をテストしてください。
  • FinGPT のルーツはバイリンガルです。あなたのパイプラインが中国語の開示資料やニュースを読む場合、glm-5.2 と deepseek-v4-pro はそこでネイティブに強く、同じエンドポイントを通じて id でアドレスできます。
  • すべてのエージェントに1つの LLMConfig を使うのがノートブックのデフォルトですが、同じ base_url に対して2つの辞書を構築し、アドバイザー用にフロンティアのもの、読み手用に速いものを、エージェントごとに割り当てることも自由にできます。

従量課金 · 公式価格より安い

Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.

モデル公式価格当社価格
Claude Opus 4.7$5.00 / $25.00 per M$4.00 / $20.00 per M
Claude Sonnet 4.6$3.00 / $15.00 per M$2.40 / $12.00 per M
GPT-5.5$5.00 / $30.00 per M$4.00 / $24.00 per M
DeepSeek V4 Pro$0.43 / $0.87 per M$0.40 / $0.90 per M
GLM-5.2$1.14 / $4.00 per M$1.10 / $4.00 per M

注意点: FinGPT のすべての base_url が LLM を指すわけではない。

FinGPT はリサーチ用のモノレポであり、いくつかの設定は LLM エンドポイントの設定に見えて、実際はそうではないものがあります。 Forecaster の market_sentiment.py には api_key と base_url のパラメータがありますが、これらは(ADANOS_API_KEY から読み込まれる)市場データのセンチメントサービスを設定するものであり、チャット補完のエンドポイントではありません。この base_url を変更しても、LLM のトラフィックは一切ルーティングされません。FinGPT-Forecaster のモデル自体は、Hugging Face を通じて提供されるファインチューニング済みの Llama ウェイトであり、フォーキャスターのデモはそもそも OpenAI 互換のクライアントではありません。 リポジトリ内のより新しい Finogrid プラットフォームは、FINGPT_LLM_PROVIDER という環境変数(openai、minimax、fingpt)を通じて LLM を選び、openai プロバイダー向けに OPENAI_API_KEY を読み込みます。2026年7月時点で、そのサンプル環境ファイルはプロバイダーの切り替えとキーをドキュメント化していますが、ベース URL の上書き変数はありません。したがって、upstream がそれをドキュメント化するまで、Finogrid はゲートウェイの対象外として扱ってください。 最後に、AG2 のノートブックは ag2[openai] を 0.11.4 以降に固定しています。それより古い pyautogen 0.2 世代のインストールは、LLMConfig クラスの代わりに config_list のエントリを通じて同じ4つのキーを設定します。キーは同一なのでルーティングは機能しますが、実際にインストールされている AutoGen の世代に、import のスタイルを合わせてください。

ゲートウェイ経由で FinGPT を使うのは誰か。

  • 銘柄リストにわたってマルチエージェント分析を実行するクオンツリサーチャーで、1銘柄あたり数十回のエージェントターンがあるため、プロバイダーごとのベンダーダッシュボードより、キーごとの利用状況の可視性の方が役立つ人。
  • モデルファミリー間で分析品質を比較するチームで、各候補は LLMConfig の中の1つのモデル文字列であり、新しいプロバイダー統合やアカウントではない場合。
  • レポートパイプラインを通じて開示資料を大量に処理するアナリストで、id 間の長文脈の価格差が請求額を左右する人。
  • glm-5.2 や deepseek-v4-pro のような中国語に強い id と、Claude や GPT の推論を組み合わせる、バイリンガルな金融チームで、すべて1つのエンドポイントの裏にある場合。
  • 特定ベンダーの請求手段にアクセスできない開発者。チャージ制でカード不要のアクセスなら、プロバイダーごとのサインアップという依存を取り除けます。

エンドポイントを検証し、最初の実行をデバッグする。

ノートブックを起動する前に、あなたのキーがアドレスできるモデルを一覧してください。LLMConfig の中のモデル文字列は、提供されている id と正確に一致していなければなりません。 初回実行の失敗は、短いリストに収まります。401 は、辞書の中の api_key が base_url のエンドポイントに対して有効なキーではないことを意味します。両方が同じ辞書に存在するため、(キーを除いて)辞書を出力し、エージェントが実際に受け取ったコピーを編集したか確認してください。model-not-found エラーは id のタイプミスであり、/v1/models の出力が正しい綴りの根拠です。接続エラーは、通常 base_url が /v1 のサフィックスを失っていることを意味します。クライアントは与えられたベースに /chat/completions を付加するからです。そして、エージェントのチャットは動いているのにセンチメントのステップが失敗する場合、それはゲートウェイではなく、ローカルの FinBERT 分類器か transformers のインストール漏れです。 リクエストが流れ始めたら、APIsRouter コンソールがリクエストごとのモデル、トークン数、支出を表示します。マルチエージェントパイプラインは呼び出しを急速に増やすため、利用状況ビューこそが、実行をウォッチリスト全体にスケールする前に、どのエージェントの役割がトークンを消費しているかを確認する方法です。

curl -s https://api.apisrouter.com/v1/models \
  -H "Authorization: Bearer $APISROUTER_API_KEY" | head -50

よくある質問

FinGPT は初期状態でカスタムの OpenAI 互換エンドポイントをサポートしていますか?

はい、その API 駆動のパイプラインでは対応しています。AG2 のマルチエージェント分析ノートブックは、api_type "openai" と base_url を持つ LLMConfig を設定し、レポート分析ノートブックは base_url を LangChain の ChatOpenAI に渡します。どちらも upstream のパターンであり、ファインチューニング済みのローカルモデルはプロジェクトの別のオフライン半分です。

FinGPT のエージェントは、この方法で Claude や DeepSeek のモデルを動かせますか?

はい。api_type は "openai" のままで、model フィールドはそのままの文字列として /v1/chat/completions 経由で転送されます。base_url の先にあるエンドポイントが提供する id なら何でも動作し、Claude・DeepSeek・GLM・Gemini の id も含まれます。

AG2 パイプラインにも OpenAI アカウントは必要ですか?

いいえ。base_url がゲートウェイを指し、api_key がゲートウェイのキーを保持していれば、どのリクエストも OpenAI のホストに触れません。upstream のノートブック自体が、OpenAI 以外の互換エンドポイントを経由することでこれを実演しています。

カスタムの base_url は、FinGPT の市場データや FinBERT のセンチメントスコアリングに影響しますか?

いいえ。yfinance の相場と FinBERT の分類器は API キーなしでローカルに動作し、レポートパイプラインの SEC と Financial Modeling Prep の認証情報は別のデータキーです。base_url が移動させるのは LLM エンドポイントだけです。

Forecaster の market_sentiment.py にある base_url パラメータについてはどうですか?

それは ADANOS_API_KEY で認証される市場データのセンチメントサービスを設定するものであり、LLM エンドポイントではありません。Forecaster 自身のモデルは、Hugging Face を通じて提供されるファインチューニング済みのウェイトであるため、そこには OpenAI 互換のルーティングは適用されません。

FinGPT 内の Finogrid プラットフォームも、カスタムエンドポイントに対応していますか?

2026年7月時点ではドキュメント化されていません。Finogrid は FINGPT_LLM_PROVIDER でプロバイダーを選び、OPENAI_API_KEY を読み込みますが、そのサンプル環境ファイルにはベース URL の上書きが示されていないため、upstream が追加するまでは直接ベンダールーティングだと想定してください。