Skip to content

Self-evolving agentic architecture

This project is based on a self-evolving agentic architecture, which is led by an architect, and acts on feedback received from a feedback agent (in this case, manifesting Warren Buffet).

Core trick

An architect agent rewrites the analyst graph each round based on a feedback agent's critique of the valuation output.

Tags

Description

This project is based on a self-evolving agentic architecture, which is led by an architect, and acts on feedback received from a feedback agent (in this case, manifesting Warren Buffet). The objective is to identify an optimal agentic architecture for stock valuation automatically. This might save AI engineers a lot of time doing manual research and trying different architectures.
ziyu-toh/cv-gemini-hackathon-2026★ 00 forksHTMLCreated Mar 7, 2026 · last push Mar 7, 2026

README excerpt

# Warren Buffett Stock Valuation Framework

A dynamic self-organizing multi-agent system built with **Python**, **LangGraph**, **LangChain**, and **Google Gemini**.

## Features
- **Architect Agent**: Dynamically designs a team of analysts tailored to the stock.
- **Tool-Equipped Subagents**: Subagents use `yfinance` and `Tavily` to gather financial data and news.
- **Local Data Storage**: All gathered research and iteration states are saved to `data/SYMBOL/YYYY-MM-DD/`.
- **Warren Buffett Feedback**: Iterative assessment of the architecture based on value investing principles.
- **Dynamic Execution**: Runs research agents and synthesizes their findings into a final report.
- **Architecture Visualizer**: A FastAPI frontend to visualize the evolution of the graph and agent prompts across iterations.
- **Configurable Models**: Centralized configurations via `config.yaml` to specify iterations and model parameters.

## Setup & Running
1. Ensure you have `uv` installed for dependency management.
2. `cp .env.example .env` (Add your **Google Gemini** and Tavily API keys)
3. Run the backend framework:
   ```bash
   PYTHONPATH=. uv run python backend/main.py
   ```
4. In a separate terminal, run the visualizer frontend:
   ```bash
   uv run python frontend/visualizer.py
   ```
   Access the visualizer at `http://localhost:8000`

## Project Structure
- `backend/`:
    - `main.py`: Entry point for the framework.
    - `graph.py`: LangGraph state machine definition.
    - `schema.py`: P

Team