Patakbuhin ang agent pipelines ng FinGPT sa isang custom OpenAI-compatible endpoint.
Updated 2026-07-30
Ini-configure ng multi-agent analysis pipeline ng FinGPT ang LLM nito sa pamamagitan ng isang AG2 LLMConfig dict na tumatanggap ng api_type na "openai" at isang base_url. Itakda ang base_url sa https://api.apisrouter.com/v1, magpasa ng isang key, at maaaring tumakbo ang researcher, sentiment, at advisor agents sa anumang model id sa katalogo.
Mabilisang sagot: base_url sa AG2 LLMConfig dict.
Binubuo ng multi-agent financial analysis pipeline ng FinGPT (fingpt/ag2_financial_analysis_pipeline.ipynb sa upstream repo) ang LLM configuration nito bilang isang AG2 LLMConfig dict na may apat na key: model, api_key, api_type, at base_url. Itinuturo mismo ng upstream notebook ang base_url sa isang OpenAI-compatible router endpoint sa halip na sa api.openai.com, kaya ang pagruruta sa pamamagitan ng gateway ay ang naka-document na pattern dito, hindi isang workaround. Para patakbuhin ang pipeline sa pamamagitan ng APIsRouter, itakda ang api_type sa "openai", itakda ang base_url sa https://api.apisrouter.com/v1, ilagay ang gateway key mo sa api_key, at itakda ang model sa anumang catalog id. Tumatanggap ang bawat AssistantAgent sa notebook ng parehong llm_config object, kaya isang dict lamang ang naglilipat sa buong agent team.
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",
})Saan talaga tumatawag ang FinGPT ng isang LLM API.
Ang FinGPT (AI4Finance-Foundation sa GitHub, humigit-kumulang 21K stars) ay dalawang bagay sa ilalim ng isang pangalan, at ang pagkaalam kung aling kalahati ang pinapatakbo mo ang nagdedesisyon kung mahalaga man ang custom endpoint. Ang unang kalahati ay fine-tuned open weights: ang mga LoRA training notebook para sa Llama at ChatGLM na siyang nagpapakilala sa proyekto. Tumatakbo ang mga ito nang lokal o sa rentang GPU sa pamamagitan ng Hugging Face transformers, walang ginagawang chat-completions calls, at walang naaangkop na base URL sa kanila. Ang ikalawang kalahati ang application pipelines, at dito nakatira ang OpenAI-compatible surface. Ikinakabit ng AG2 multi-agent analysis pipeline ang tatlong AssistantAgent (isang news researcher, isang sentiment analyst, at isang investment advisor) sa isang LLMConfig, dinaragdagan sila ng yfinance tool calls at isang local FinBERT sentiment classifier, at pinapayagan silang maglipat ng equity analysis sa pagitan ng mga role. Pinapatakbo ng financial report analysis pipeline (fingpt/FinGPT_FinancialReportAnalysis) ang ChatOpenAI ng LangChain laban sa mga SEC filing na kinuha sa pamamagitan ng sec-api at Financial Modeling Prep. Nagpapadala ang dalawang pipeline ng standard /v1/chat/completions requests, parehong ipinapakita ang endpoint bilang isang parameter, at parehong ipinapasa ang model field bilang plain string, na siyang nagpapahintulot sa isang Claude o DeepSeek id na sumakay sa isang "openai" api_type kapag si-serve na ng endpoint sa likod ng base_url.
Buong setup: ang AG2 pipeline at ang report-analysis pipeline.
Ang AG2 pipeline ang pinakamalinis na integration. Palitan ang mga value ng LLMConfig ng notebook ng gateway endpoint at ng paboritong model id mo, at tatakbo ang tatlong agent kasama ang tool-calling loop nila nang walang pagbabago. Lokal at walang API keys ang financial-data side (yfinance quotes, FinBERT sentiment scoring), kaya ang LLM endpoint lamang ang panlabas na dependency na inililipat mo. Gumagamit ang report-analysis pipeline ng ChatOpenAI ng LangChain, na tumatanggap ng api_key at base_url bilang constructor arguments; ipinapakita mismo ng upstream notebook ang eksaktong pares na ito kapag ipinapakita nito kung paano magpalit ng isang local na OpenAI-compatible server. Ituro ang parehong dalawang argument sa gateway sa halip. Tandaan na gusto rin ng notebook na ito ng SEC at Financial Modeling Prep credentials para sa mga data pull nito; mga market-data key iyon, hindi kaugnay sa LLM endpoint, at nananatili silang gaya ng dati.
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)Pagpili ng model para sa financial analysis agents.
Dahil isang model string lamang ang bawat kandidato laban sa parehong endpoint, ang praktikal na loop ay ayusin ang mga ticker at petsa mo, patakbuhin ang pipeline nang isang beses per kandidatong id, at i-diff ang output ng advisor. Ipinepresyo ng per-key usage log ang bawat run ng kandidato para sa iyo, na siyang nagsasara sa argumento ng kalidad-per-token gamit ang numero sa halip na instinct.
- Ang advisor role ang reasoning bottleneck. Pinagsasama nito ang mga natuklasan ng researcher, ang sentiment scores, at ang risk picture sa isang outlook, at doon huminto ang isang frontier reasoning model (claude-opus-4-7, gpt-5.5) sa pagiging generic ng synthesis na iyon.
- Volume roles ang researcher at analyst: pagbabasa ng headlines, pagbubuo ng tool output, pagsusuri ng drafts. Pinapanatili silang matalas ng claude-sonnet-4-6 o deepseek-v4-pro nang walang frontier pricing sa bawat intermediate turn.
- Long-context na workload ang report analysis. Isang malaking prompt ang isang seksyon ng 10-K kasama ang price-target context, kaya subukan ang gemini-3.1-pro-preview o claude-sonnet-4-6 sa filing side bago ipagpalagay ang default.
- Bilingual ang ugat ng FinGPT. Kung ang pipeline mo ay nagbabasa ng Chinese-language filings o balita, likas na malakas doon ang glm-5.2 at deepseek-v4-pro at naaabot sa pamamagitan ng parehong endpoint gamit ang id.
- Default ng notebook ang pagpapatakbo ng isang LLMConfig para sa lahat ng agent, pero walang pumipigil sa iyong bumuo ng dalawang dict laban sa parehong base_url, isang frontier para sa advisor at isang mabilis para sa mga reader, at i-assign ang mga ito per agent.
Pay-as-you-go · mas mababa sa opisyal na presyo
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| Model | Opisyal na Presyo | Aming Presyo |
|---|---|---|
| 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 |
Caveats: hindi bawat base_url sa FinGPT ang LLM.
Isang research monorepo ang FinGPT, at ilang bagay ang mukhang LLM endpoint settings kahit hindi. May api_key at base_url parameters ang market_sentiment.py ng Forecaster, pero ini-configure nito ang isang market-data sentiment service (binabasa mula sa ADANOS_API_KEY), hindi isang chat-completions endpoint. Ang pagbabago sa base_url na iyon ay hindi nagruruta ng anumang LLM traffic. Ang mga model mismo ng FinGPT-Forecaster ay fine-tuned na Llama weights na si-serve sa pamamagitan ng Hugging Face, kaya hindi talaga OpenAI-compatible consumer ang forecaster demo. Pinipili ng mas bagong Finogrid platform sa loob ng repo ang LLM nito sa pamamagitan ng isang FINGPT_LLM_PROVIDER environment variable (openai, minimax, o fingpt) at binabasa ang OPENAI_API_KEY para sa openai provider. Simula Hulyo 2026, idinodokumento ng example environment file nito ang provider switch at ang key, pero walang base-URL override variable, kaya ituring ang Finogrid na wala sa saklaw para sa isang gateway hangga't hindi ito idinodokumento ng upstream. Sa wakas, itinatakda ng AG2 notebook ang ag2[openai] sa 0.11.4 o mas bago. Ini-configure ng mga mas lumang pyautogen 0.2-era na installation ang parehong apat na key sa pamamagitan ng config_list entries sa halip na ang LLMConfig class; magkatulad ang mga key, kaya gumagana ang routing, pero itugma ang import style mo sa henerasyon ng AutoGen na talagang naka-install sa iyo.
Sino ang nagru-route ng FinGPT sa pamamagitan ng isang gateway.
- Mga quant researcher na nagpapatakbo ng multi-agent analysis sa isang listahan ng ticker. Dose-dosenang agent turn per equity ang nagpapagawa sa per-key usage visibility na mas kapaki-pakinabang kaysa sa isang vendor dashboard per provider.
- Mga team na naghahambing ng kalidad ng analysis sa iba't ibang model family. Isang model string lamang sa LLMConfig ang bawat kandidato, hindi isang bagong provider integration at account.
- Mga analyst na nagpoproseso ng filings nang bulto sa pamamagitan ng report pipeline, kung saan naghahari sa bill ang pagkakaiba ng long-context pricing sa pagitan ng mga id.
- Mga bilingual na finance team na nagpapares ng mga Chinese-strong id tulad ng glm-5.2 o deepseek-v4-pro sa reasoning ng Claude o GPT, lahat sa likod ng isang endpoint.
- Mga developer na walang access sa billing ng isang partikular na vendor. Ang top-up based na access na walang kailangang card ay inaalis ang per-provider na sign-up dependency.
I-verify ang endpoint at i-debug ang unang run.
Bago ilunsad ang notebook, ilista ang mga model na maaabot ng key mo; dapat eksaktong tumugma ang model string sa LLMConfig sa isang si-serve na id. Sumusunod sa isang maikling listahan ang mga first-run failure. Ang isang 401 ay nangangahulugan na hindi valid na key ang api_key sa dict para sa endpoint sa base_url; dahil parehong nasa iisang dict, i-print ang dict (bukod sa key) at tingnan kung na-edit mo ang kopyang natanggap talaga ng mga agent. Ang model-not-found error ay typo sa id, at ang /v1/models output ang authoritative na baybay. Karaniwang nangangahulugan ang connection error na nawala ang /v1 suffix ng base_url, dahil ini-append ng client ang /chat/completions sa anumang base na ibinigay mo. At kung nabibigo ang sentiment step habang gumagana ang agent chat, ang local FinBERT classifier o kulang na transformers install iyon, hindi ang gateway. Kapag dumadaloy na ang mga request, ipinapakita ng APIsRouter console ang per-request na model, token counts, at gastos. Mabilis na nagpaparami ng calls ang multi-agent pipelines, at ang usage view ang paraan para makita mo kung aling agent role ang kumakain ng tokens bago mo palakihin ang run sa buong watchlist.
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50Mga madalas itanong
Sinusuportahan ba ng FinGPT ang custom OpenAI-compatible endpoint out of the box?
Oo, sa mga API-driven na pipeline nito. Ini-configure ng AG2 multi-agent analysis notebook ang LLMConfig na may api_type na "openai" kasama ang isang base_url, at ipinapasa ng report-analysis notebook ang base_url sa ChatOpenAI ng LangChain. Parehong upstream pattern ito; hiwalay at offline na kalahati ng proyekto ang fine-tuned na local models.
Maaari bang tumakbo ang mga agent ng FinGPT sa Claude o DeepSeek models sa ganitong paraan?
Oo. Nananatiling "openai" ang api_type at ipinapasa ang model field bilang plain string sa /v1/chat/completions. Gumagana ang anumang id na si-serve ng endpoint sa likod ng base_url, kasama ang Claude, DeepSeek, GLM, at Gemini ids.
Kailangan ko pa ba ng OpenAI account para sa AG2 pipeline?
Hindi. Kapag ang base_url ay nakaturo sa gateway at ang api_key ay may hawak na gateway key, walang request na humihipo sa OpenAI hosts. Ipinapakita mismo ito ng upstream notebook sa pamamagitan ng pagruruta sa isang non-OpenAI compatible endpoint.
Naaapektuhan ba ng custom base_url ang market data o FinBERT sentiment scoring ng FinGPT?
Hindi. Tumatakbo nang lokal at walang API keys ang yfinance quotes at ang FinBERT classifier, at hiwalay na data keys ang SEC at Financial Modeling Prep credentials ng report pipeline. Ang LLM endpoint lamang ang inililipat ng base_url.
Ano ang tungkol sa base_url parameter sa market_sentiment.py ng Forecaster?
Ini-configure niyon ang isang market-data sentiment service na naka-authenticate sa ADANOS_API_KEY, hindi isang LLM endpoint. Fine-tuned na weights na si-serve sa pamamagitan ng Hugging Face ang sariling mga model ng Forecaster, kaya walang naaangkop na OpenAI-compatible routing doon.
Sinusuportahan din ba ng Finogrid platform sa loob ng FinGPT ang custom endpoint?
Hindi pa ito naidodokumento hanggang Hulyo 2026. Pumipili ng provider ang Finogrid sa pamamagitan ng FINGPT_LLM_PROVIDER at binabasa ang OPENAI_API_KEY, pero walang ipinapakitang base-URL override ang example environment file nito, kaya ipagpalagay ang direktang vendor routing doon hangga't hindi nagdaragdag ang upstream ng isa.