Draai de agentpijplijnen van FinGPT op een aangepast OpenAI-compatibel endpoint.
Updated 2026-07-30
De multi-agent-analysepijplijn van FinGPT configureert zijn LLM via een AG2 LLMConfig-dict die api_type "openai" en een base_url neemt. Zet base_url op https://api.apisrouter.com/v1, geef één sleutel door, en de researcher-, sentiment- en adviseuragents kunnen draaien op elk model-ID in de catalogus.
Snel antwoord: base_url in de AG2 LLMConfig-dict.
De multi-agent financiële-analysepijplijn van FinGPT (fingpt/ag2_financial_analysis_pipeline.ipynb in de upstream-repo) bouwt zijn LLM-configuratie als een AG2 LLMConfig-dict met vier sleutels: model, api_key, api_type en base_url. De upstream-notebook wijst base_url zelf naar een OpenAI-compatibel router-endpoint in plaats van naar api.openai.com, dus routeren via een gateway is hier het gedocumenteerde patroon, geen workaround. Om de pijplijn via APIsRouter te draaien, zet je api_type op "openai", zet je base_url op https://api.apisrouter.com/v1, plaats je je gatewaysleutel in api_key, en zet je model op elk catalogus-ID. Elke AssistantAgent in de notebook ontvangt hetzelfde llm_config-object, dus één dict verplaatst het hele agentteam.
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",
})Waar FinGPT daadwerkelijk een LLM-API aanroept.
FinGPT (AI4Finance-Foundation op GitHub, ongeveer 21K sterren) is twee dingen onder één naam, en weten welke helft je draait, beslist of een aangepast endpoint er überhaupt toe doet. De eerste helft is fine-tuned open weights: de LoRA-trainingsnotebooks voor Llama en ChatGLM die het project bekend maakten. Die draaien lokaal of op gehuurde GPU's via Hugging Face transformers, doen geen chat-completions-aanroepen, en geen base URL is daarop van toepassing. De tweede helft zijn de applicatiepijplijnen, en dit is waar het OpenAI-compatibele oppervlak leeft. De AG2 multi-agent-analysepijplijn bekabelt drie AssistantAgents (een nieuwsresearcher, een sentimentanalist en een investeringsadviseur) aan één LLMConfig, verrijkt ze met yfinance-tool-aanroepen en een lokale FinBERT-sentimentclassifier, en laat ze een aandelenanalyse doorgeven tussen rollen. De financiële-rapportanalysepijplijn (fingpt/FinGPT_FinancialReportAnalysis) drijft LangChain's ChatOpenAI aan tegen SEC-filings opgehaald via sec-api en Financial Modeling Prep. Beide pijplijnen sturen standaard /v1/chat/completions-verzoeken, beide stellen het endpoint bloot als parameter, en beide geven het model-veld door als platte string, wat ervoor zorgt dat een Claude- of DeepSeek-ID kan meerijden op een "openai"-api_type zodra het endpoint achter base_url het bedient.
Volledige instelling: de AG2-pijplijn en de rapportanalysepijplijn.
De AG2-pijplijn is de schoonste integratie. Vervang de LLMConfig-waarden van de notebook door het gateway-endpoint en je voorkeursmodel-ID, en de drie agents plus hun tool-aanroeplus draaien ongewijzigd. De financiële-datakant (yfinance-koersen, FinBERT-sentimentscoring) is lokaal en vrij van API-sleutels, dus het LLM-endpoint is de enige externe afhankelijkheid die je verplaatst. De rapportanalysepijplijn gebruikt LangChain's ChatOpenAI, dat api_key en base_url accepteert als constructorargumenten; de upstream-notebook demonstreert precies dit paar wanneer het toont hoe je een lokale OpenAI-compatibele server inruilt. Wijs dezelfde twee argumenten naar de gateway. Merk op dat deze notebook ook SEC- en Financial Modeling Prep-credentials wil voor zijn datapulls; dat zijn marktdatasleutels, los van het LLM-endpoint, en ze blijven zoals ze zijn.
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)Modellen kiezen voor financiële-analyse-agents.
Omdat elke kandidaat één model-string is tegen hetzelfde endpoint, is de praktische lus om je tickers en datums vast te zetten, de pijplijn eenmaal per kandidaat-ID te draaien, en de adviseursoutput te diffen. Het gebruikslogboek per sleutel prijst elke kandidaatrun voor je, wat het kwaliteit-per-token-argument beslecht met cijfers in plaats van instinct.
- De adviseursrol is het redeneerknelpunt. Het synthetiseert de bevindingen van de researcher, de sentimentscores en het risicobeeld tot een outlook, en een frontier-redeneermodel (claude-opus-4-7, gpt-5.5) is waar die synthese ophoudt generiek te zijn.
- De researcher- en analistrollen zijn volumerollen: koppen lezen, tooloutput structureren, concepten scoren. claude-sonnet-4-6 of deepseek-v4-pro houdt ze scherp zonder frontierprijzen op elke tussenbeurt.
- Rapportanalyse is een langecontextworkload. Een 10-K-sectie plus koersdoelcontext is een grote prompt, dus test gemini-3.1-pro-preview of claude-sonnet-4-6 op de filingkant voordat je de standaard aanneemt.
- De wortels van FinGPT zijn tweetalig. Als je pijplijn Chineestalige filings of nieuws leest, zijn glm-5.2 en deepseek-v4-pro daar native sterk in en aanspreekbaar via hetzelfde endpoint per ID.
- Eén LLMConfig draaien voor alle agents is de notebookstandaard, maar niets weerhoudt je ervan twee dicts te bouwen tegen dezelfde base_url, een frontier-dict voor de adviseur en een snelle voor de lezers, en ze per agent toe te wijzen.
Betaal naar gebruik · onder officiële prijzen
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| Model | Officiële prijs | Onze prijs |
|---|---|---|
| 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 |
Kanttekeningen: niet elke base_url in FinGPT is de LLM.
FinGPT is een onderzoeksmonorepo, en een paar dingen lijken op LLM-endpointinstellingen zonder dat te zijn. De market_sentiment.py van de Forecaster heeft api_key- en base_url-parameters, maar die configureren een marktdatasentimentservice (gelezen van ADANOS_API_KEY), geen chat-completions-endpoint. Het wijzigen van die base_url routeert geen LLM-verkeer. De FinGPT-Forecaster-modellen zelf zijn fine-tuned Llama-weights bediend via Hugging Face, dus de forecaster-demo is helemaal geen OpenAI-compatibele consument. Het nieuwere Finogrid-platform binnen de repo selecteert zijn LLM via een omgevingsvariabele FINGPT_LLM_PROVIDER (openai, minimax of fingpt) en leest OPENAI_API_KEY voor de openai-provider. Vanaf juli 2026 documenteert het voorbeeld-omgevingsbestand de providerwissel en de sleutel, maar geen base-URL-overridevariabele, dus behandel Finogrid als buiten scope voor een gateway totdat upstream er een documenteert. Ten slotte pint de AG2-notebook ag2[openai] op 0.11.4 of nieuwer. Oudere pyautogen-0.2-installaties configureren dezelfde vier sleutels via config_list-vermeldingen in plaats van de LLMConfig-klasse; de sleutels zijn identiek, dus de routering werkt, maar match je importstijl met de AutoGen-generatie die je daadwerkelijk hebt geïnstalleerd.
Wie routeert FinGPT via een gateway.
- Quantonderzoekers die de multi-agent-analyse draaien over een tickerlijst. Tientallen agentbeurten per aandeel maken gebruikszichtbaarheid per sleutel nuttiger dan een leveranciersdashboard per provider.
- Teams die analysekwaliteit vergelijken over modelfamilies. Elke kandidaat is één model-string in LLMConfig, geen nieuwe providerintegratie en account.
- Analisten die filings in bulk verwerken via de rapportpijplijn, waar langecontextprijsverschillen tussen ID's de rekening domineren.
- Tweetalige financiële teams die Chinees-sterke ID's zoals glm-5.2 of deepseek-v4-pro paren met Claude- of GPT-redenering, allemaal achter één endpoint.
- Developers zonder toegang tot de facturering van een bepaalde leverancier. Toegang op basis van opwaarderen zonder kaartvereiste verwijdert de aanmeldingsafhankelijkheid per provider.
Verifieer het endpoint en debug de eerste run.
Lijst voor het starten van de notebook de modellen op die je sleutel kan aanspreken; de model-string in LLMConfig moet exact overeenkomen met een bediend ID. Fouten bij de eerste run volgen een korte lijst. Een 401 betekent dat de api_key in de dict geen geldige sleutel is voor het endpoint in base_url; omdat beide in dezelfde dict leven, print de dict (zonder de sleutel) en controleer of je de kopie hebt bewerkt die de agents daadwerkelijk ontvingen. Een model-not-found-fout is een tikfout in het ID, en de /v1/models-output is de gezaghebbende schrijfwijze. Een verbindingsfout betekent meestal dat base_url zijn /v1-achtervoegsel kwijt is, aangezien de client /chat/completions toevoegt aan welke base je ook geeft. En als de sentimentstap faalt terwijl agentchat werkt, is dat de lokale FinBERT-classifier of een ontbrekende transformers-installatie, niet de gateway. Zodra verzoeken stromen, toont de APIsRouter-console model per verzoek, tokenaantallen en uitgaven. Multi-agentpijplijnen vermenigvuldigen aanroepen snel, en de gebruiksweergave is hoe je ziet welke agentrol de tokens verbruikt voordat je de run opschaalt naar een volledige watchlist.
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50Veelgestelde vragen
Ondersteunt FinGPT een aangepast OpenAI-compatibel endpoint standaard?
Ja, in zijn API-gedreven pijplijnen. De AG2 multi-agent-analysenotebook configureert LLMConfig met api_type "openai" plus een base_url, en de rapportanalysenotebook geeft base_url door aan LangChain's ChatOpenAI. Beide zijn upstream-patronen; de fine-tuned lokale modellen zijn een aparte, offline helft van het project.
Kunnen de FinGPT-agents op deze manier op Claude- of DeepSeek-modellen draaien?
Ja. De api_type blijft "openai" en het model-veld wordt als platte string doorgegeven over /v1/chat/completions. Elk ID bediend door het endpoint achter base_url werkt, inclusief Claude-, DeepSeek-, GLM- en Gemini-ID's.
Heb ik nog steeds een OpenAI-account nodig voor de AG2-pijplijn?
Nee. Met base_url gewezen naar de gateway en api_key met een gatewaysleutel, raakt geen verzoek OpenAI-hosts. De upstream-notebook demonstreert dit zelf door te routeren via een niet-OpenAI-compatibel endpoint.
Beïnvloedt een aangepaste base_url de marktdata of FinBERT-sentimentscoring van FinGPT?
Nee. yfinance-koersen en de FinBERT-classifier draaien lokaal zonder API-sleutels, en de SEC- en Financial Modeling Prep-credentials van de rapportpijplijn zijn aparte datasleutels. Het LLM-endpoint is het enige dat base_url verplaatst.
Wat met de base_url-parameter in de market_sentiment.py van de Forecaster?
Die configureert een marktdatasentimentservice geauthenticeerd door ADANOS_API_KEY, geen LLM-endpoint. De eigen modellen van de Forecaster zijn fine-tuned weights bediend via Hugging Face, dus daar is geen OpenAI-compatibele routering van toepassing.
Ondersteunt het Finogrid-platform binnen FinGPT ook een aangepast endpoint?
Niet gedocumenteerd vanaf juli 2026. Finogrid selecteert een provider via FINGPT_LLM_PROVIDER en leest OPENAI_API_KEY, maar zijn voorbeeld-omgevingsbestand toont geen base-URL-override, dus ga daar uit van directe vendorroutering totdat upstream er een toevoegt.