Multi-Agent IT Support Assistant
In Progress2026 – Present
A helpdesk assistant for Turkish IT requests — a LangGraph supervisor hands off to Triage, Solution, Ticket and Analytics agents; tickets open only after user approval.






Problem
IT helpdesk requests often arrive as one long message mixing several issues. The assistant understands Turkish requests, splits them into steps, finds answers in the knowledge base and opens tickets — without acting on the user's behalf until they approve.
Architecture
flowchart TD
U[User message] --> NLU[BERTurk NLU + rule-based fallback]
NLU --> S[Supervisor / planner]
S -- handoff --> T[Triage agent]
S -- handoff --> SO[Solution agent]
S -- handoff --> TI[Ticket agent]
S -- handoff --> A[Analytics agent - managers only]
SO --> KB[(Hybrid search: pgvector + keyword)]
TI --> H{User approval - interrupt}
H -- approved --> DB[(PostgreSQL)]
A --> SQL[Text-to-SQL + sqlglot guard]
SQL --> RO[(Read-only DB role)]What I built
- Supervisor / planner that extracts intent and entities, splits multi-issue messages into
step plans and hands off (
Command) to Triage, Solution, Ticket and manager-only Analytics agents - Human-in-the-loop: tickets are opened only after user approval via
interrupt(), with a Postgres checkpointer and Store memory - Solution agent runs hybrid (pgvector + keyword) knowledge-base search and must cite sources
- Analytics agent converts natural-language questions to SQL, validated by a sqlglot SQL guard and executed under a read-only database role
- 8 tools exposed through a FastMCP server
- Guardrails: prompt injection, PII masking (Presidio), role-based tool permissions and step limits
- BERTurk NLU pipeline (training with transformers/torch, ONNX Runtime inference) with a rule-based fallback; LLM optional (OpenAI/Ollama), traced in LangSmith
- FastAPI (REST, WebSocket) and Chainlit UI on PostgreSQL/Alembic
- Docker Compose and k3s deployment with Prometheus/Grafana monitoring, MLflow and Label Studio, GitHub Actions CI
All data is synthetic.
Status
In progress. Evaluation numbers will be added here once the evals have actually run.
Tech
- LangGraph
- FastMCP
- pgvector
- sqlglot
- Presidio
- BERTurk
- FastAPI
- k3s
- Prometheus
- Grafana