Project 04 / Full-Stack · AI

La Colonia: A Multi-LLM Council

A 3-Stage Multi-LLM Deliberation Council

FastAPI React 19 Vite OpenRouter Ollama Python SSE Streaming Async httpx react-markdown uv
Overview
01 / 04

La Colonia runs a council of LLMs instead of a single model. The models deliberate, rank each other's answers, and synthesize one verdict. Each model takes on a Spanish-language persona, El Profesor, La Abogada, El Patrón, grounding the experience in Latino culture instead of a generic chat interface.

I built it on top of Andrej Karpathy's llm-council concept and extended it into a full-stack app: a FastAPI backend that streams results over SSE, a React 19 frontend with a radial deliberation view, and support for nine LLM providers including OpenRouter, Ollama, Groq, OpenAI, and Anthropic.

Walkthrough
02 / 04
La Colonia start page showing council members
Start page · council roster
Question sent to council
01 Deliberation · models query in parallel
Peer ranking leaderboard
02 Peer Review · models rank each other
Final verdict from El Patrón
03 Synthesis · El Patrón delivers the verdict
Three-Stage Pipeline
03 / 04
Stack & Outcomes
04 / 04

The backend runs on FastAPI with async httpx firing requests at up to nine LLM providers in parallel, OpenRouter, Ollama, Groq, OpenAI, Anthropic, Google, Mistral, and DeepSeek, then streams results to the frontend over SSE as each model finishes. There's no database; conversations persist as JSON files, so the whole stack runs anywhere uv and npm exist.

The frontend is React 19 on Vite, rendering responses through react-markdown inside a radial view that shows every council member at once. Three execution modes let you run chat-only, add peer ranking, or run the full deliberation pipeline, with personas configurable per model.

9
LLM Providers Supported
3
Deliberation Stages
0
Database Required