A Multi-Modal Enterprise Agent that answers business questions by combining structured SQL data with semantic search over financial documents.
- Vector ETL Pipeline — Ingests 10-K/financial documents, cleans text, splits into semantic chunks using
SemanticChunker, embeds withall-MiniLM-L6-v2, and stores in Qdrant with metadata (company_name,document_year). - LangGraph ReAct Agent — Two tools:
execute_sql: queries a SQLite database of financial metrics (revenue, net income, EPS) with error-recovery.search_vector_db: semantic search over Qdrant for qualitative information from reports.
- FastAPI + Docker — Wraps the agent as a REST API (
/ask), containerized, with response time logging for FinOps tracking.
Apple, Microsoft, Google, Amazon, Tesla, Meta, Nvidia, Samsung, Netflix (2023 data)
docker compose up -dpython3 -m venv venv
source venv/bin/activate
pip install -r requirements.txtCreate a .env file:
python etl/pipeline.pyuvicorn api.main:app --reload --port 8080docker build -t ai-analyst .
docker run -p 8080:8080 -e QDRANT_HOST=host.docker.internal --add-host=host.docker.internal:host-gateway ai-analystcurl -X POST http://localhost:8080/ask \
-H "Content-Type: application/json" \
-d '{"question": "What was Tesla revenue in 2023?"}'- LangGraph (ReAct agent)
- Groq (Llama 3.1 8B) — chosen for free, reliable inference after Gemini quota exhaustion
- Qdrant (vector database)
- HuggingFace
all-MiniLM-L6-v2(embeddings) - SQLite (structured financial data)
- FastAPI + Docker
Mohan Balaji Rajaram and Ezekiel
https://1drv.ms/v/c/5cc8b40456e8a390/IQCUEtgjMdfmS61Gy7fM-WUSAdOxw9qHAAGxMAInAmqqNyQ?e=iQHkZq