This guide walks you from a fresh checkout to a fully operational chat session. You’ll configure the required AWS and database credentials, start all services, verify the health endpoint, and send your first Spanish-language financial query through the React UI. The entire flow takes about five minutes once prerequisites are in place.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/yohangr3/agentelanggrafh/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Before you begin, make sure you have the following installed and accessible:- Python 3.12+ — the project targets
requires-python = ">=3.12"inpyproject.toml - uv — the package and virtual-environment manager used throughout (
uv sync,uv run) - Node.js 18+ — required for the React/Vite frontend
- Docker & Docker Compose — needed for the all-in-one Compose workflow (includes Redis)
- AWS account with:
- Amazon Bedrock access enabled for Claude Sonnet 4.5 in your region
- An Amazon Cognito User Pool and App Client for authentication
- MySQL database containing your SAP ERP schema (accessible from your machine or a tunnel)
Configure environment variables
Copy the provided example file and fill in every required value:Open
.env in your editor. The minimum required variables are:.env
BEDROCK_EMBEDDING_MODEL_ID defaults to amazon.titan-embed-text-v2:0. You only need to override it if you are using a different embeddings model or cross-region inference prefix.Start all services with Docker Compose
The Compose file at The backend will automatically build the FAISS Schema Registry on first start, which indexes every table in your MySQL database using Amazon Titan V2 embeddings.
infra/docker/docker-compose.yml starts three services: redis, app (FastAPI backend on port 8000), and frontend (React SPA served on port 5173). The app service overrides REDIS_URL to point to the Compose-internal Redis container.Schema Registry cold-start: On a fresh database connection, building the FAISS index can take up to 120 seconds. The startup sequence enforces this as a hard timeout — if it is exceeded the process exits with
RuntimeError: Schema Registry build timed out during startup. Subsequent starts are faster because the schema metadata is cached in Redis.Or run backend and frontend separately
If you prefer to develop without Docker, run each service independently:Make sure Redis is running locally on
redis://localhost:6379/0 (or update REDIS_URL in your .env).Verify the health endpoint
Once the backend is up, confirm the service is healthy and the database connection is live:A successful response looks like:A
"status": "degraded" response means the MySQL connection failed — double-check DB_HOST, DB_USER, and DB_PASSWORD.Open the chat UI and send your first query
Navigate to http://localhost:5173 in your browser. You will be prompted to log in via your AWS Cognito User Pool. After authenticating, type a financial question in Spanish into the chat input, for example:
¿Cuáles son los 10 centros de costo con mayor gasto en el último trimestre?The agent will classify the intent, link relevant tables via semantic search, generate SQL, validate it, execute it against your ERP database, and stream back a result table, KPI cards, and an auto-selected chart.
What’s next?
Architecture
Understand how the two-level LangGraph design works, including routing, the self-correction loop, and the HITL gate.
Chat API reference
Explore the
/chat REST endpoint and the /ws/chat WebSocket for streaming per-node events to custom frontends.