Prerequisites
- Python 3.10 or 3.11 (Strictly required; 3.12+ is incompatible).
- Google AI Studio API Key (Free tier works).
- Conda or a virtual environment manager.
1. Architecture Overview
Because OpenBB Agents are hardcoded for OpenAI’s SDK, we cannot connect Gemini directly. We use a “Bridge” architecture:
OpenBB Workspace → Local Agent Server (Port 8095) → LiteLLM Bridge (Port 4000) → Google Gemini API
2. Environment Setup (The “Bridge”)
First, we set up LiteLLM, a tool that translates OpenAI HTTP requests into Google Gemini requests.
- Install LiteLLM:
Bash
pip install litellm - Run the Bridge:
Open a dedicated terminal window (keep this running) and start the proxy. We use the Flash model because it supports the large context windows required for analyzing financial datasets.
Bash
# Replace with your actual model name if different
export GEMINI_API_KEY=your_google_key_here
litellm –model gemini/gemini-latest-flash –port 4000
Result: You now have an “OpenAI-compatible” server running at http://127.0.0.1:4000.
3. Agent Installation (The “Brain”)
The official openbb-agents package on PyPI is often outdated. We must install the agent server from the source to avoid dependency conflicts.
- Create a Clean Environment:
Bash
conda create -n bb-agents python=3.11 -y
conda activate bb-agents - Install the Core Library (Editable Mode):
Clone the library repository and install it so Python can find the base modules.
Bash
git clone https://github.com/OpenBB-finance/openbb-agents.git
cd openbb-agents
pip install -e . (there are some dependencies to be fixed, it will want pydantic = “==2.7.1” and you need to update it under [home_dir]/OpenBB/openbb-agents/pyproject.toml to pydantic = “>=2.7.1”) - Get the Runnable Examples:
Clone the secondary repository that contains the actual server implementations.
Bash
cd .. # Go back to your root folder
git clone https://github.com/OpenBB-finance/agents-for-openbb.git
cd agents-for-openbb
4. Configuration & Launch
We will run the “Vanilla Agent” (Agent #30), which can read widgets from your dashboard. We must configure it to talk to our local Bridge (Port 4000) instead of OpenAI servers.
- Navigate to the Agent:
Bash
cd 30-vanilla-agent-raw-widget-data - Install Dependencies:
Bash
pip install langchain-openai fastapi uvicorn python-dotenv - Launch with Redirection:
Run this command block to inject the configuration and start the server.
- OPENAI_BASE_URL: Points the agent to our local LiteLLM bridge.
- OPENAI_API_KEY: A dummy key (required to pass validation checks).
Bash
export OPENAI_BASE_URL=”http://127.0.0.1:4000″
export OPENAI_API_KEY=”sk-fake-key”
uvicorn main:app –host 127.0.0.1 –port 8095 –reload
Success Indicator: You will see Uvicorn running on http://127.0.0.1:8095.
5. Connecting to OpenBB
- Open OpenBB Workspace (Web or Desktop).
- Open the Copilot Menu (Sidebar).
- Click (+) to Add Copilot.
- Enter the URL: http://127.0.0.1:8095.
- Click Add.
Verification: You should see a green indicator next to “Vanilla Agent.”
6. How to Use It
The Vanilla Agent does not have internet access; it relies on context.
- Add a widget to your dashboard (e.g., Stock Price for AAPL).
- Click the @ (Add to Chat) button on the widget header.
- Ask the chat: “Summarize the price trend in this widget.”
Result: The agent retrieves the JSON data from the widget, sends it to Gemini (via LiteLLM), and returns the analysis.