GTCLOUD Assistant is a production-grade financial intelligence platform designed for business users who need instant answers from SAP ERP data — without writing a single line of SQL. Type a question in natural Spanish, and the agent classifies your intent, selects the right tables via semantic search, generates a validated SQL query, executes it against your MySQL ERP database, and streams back formatted results complete with charts, KPI cards, and an executive summary, all within a single conversational turn. The system is built around a two-level LangGraph architecture: an outer Conversation Graph that handles intent understanding, clarification, planning, and presentation; and an inner SQL Pipeline Graph that owns schema linking, SQL generation, self-correction, human-in-the-loop gating, and data visualization. This separation means conversational orchestration is cleanly decoupled from the data-retrieval mechanics, making both layers individually testable and independently upgradeable.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.
Key capabilities
- Natural language → SQL — Ask questions in Spanish; receive validated, read-only SQL generated by Claude Sonnet 4.5 with zero prompt injection risk.
- Multi-turn conversation — Full context across turns: follow-up questions reuse previous result sets without re-querying the database.
- Auto-visualization — Automatic chart selection (bar, line, pie, horizontal bar, stacked bar) via ECharts, plus KPI cards for totals, averages, min/max.
- Self-correcting SQL — Up to three automatic correction attempts through the
error_handler → sql_validatorloop before a graceful failure message. - Human-in-the-loop (HITL) — Configurable confirmation gate before executing sensitive queries.
- Export — One-click CSV and Excel export for any result set.
- RBAC & multi-tenancy — Role-based access control enforced at the SQL validation layer, with per-tenant module and table restrictions stored in DynamoDB.
- Long-term memory — Conversation history persisted to DynamoDB with a 90-day TTL; active session state cached in Redis.
- File analysis — Upload Excel/CSV files for in-context analysis alongside ERP data.
- Forecasting — Time-series projections via StatsForecast directly from the chat interface.
Tech stack
| Layer | Technology |
|---|---|
| LLM | AWS Bedrock — Claude Sonnet 4.5 (us.anthropic.claude-sonnet-4-5-20250929-v1:0) |
| Embeddings | Amazon Titan Text Embeddings V2 (1 024 dims) |
| Orchestration | LangGraph async (langgraph >= 1.0.5) |
| Backend | FastAPI 0.128 + WebSocket + slowapi rate limiting |
| Frontend | React 19 + Vite + TypeScript + Tailwind CSS 4 + ECharts 6 |
| Database | MySQL (SAP ERP migrated schema, accessed via aiomysql + SQLAlchemy) |
| Auth | AWS Cognito (JWT) — validated server-side via python-jose |
| Cache / Sessions | Redis 7 (ElastiCache) — async pool via redis[hiredis] |
| Long-term memory | DynamoDB — 90-day TTL on conversation history |
| Infrastructure | AWS ECS Fargate + ALB + NAT Gateway |
| Observability | Prometheus counters/histograms + structlog + LangSmith tracing |
Explore the docs
Quickstart
Clone the repo, configure environment variables, and run your first SQL query from the chat UI in under five minutes.
Architecture
Deep-dive into the two-level LangGraph design, routing logic, self-correction loop, and HITL gate.
Chat API
REST and WebSocket endpoints for sending queries, handling HITL confirmations, and streaming per-node events.
RBAC & Multi-tenancy
How role-based table restrictions and per-tenant module permissions are enforced at query-execution time.