SICPA Turkey · 2023 – present
Corporate AI Chatbot
Multi-agent RAG & LLM fine-tuning pipeline
A fully local, department-isolated corporate assistant built on a multi-agent Retrieval-Augmented Generation architecture with self-hosted LLMs.
Company Assistant
local model · Ollama
How many days of annual leave do I get?
It depends on seniority: 14 days for 1–5 years, 20 days for 5–15 years, 26 days for 15+ years.
Supervisor
QdrantBM25rerank
- Role
- Fullstack Developer
- Period
- 2023 – present
- Context
- SICPA Turkey
- Status
- In production
Highlights
- 01
Built an advanced RAG pipeline: Qdrant vector store with department-isolated collections, hybrid dense + BM25 search, cross-encoder reranking, HyDE and multi-query expansion, semantic/parent-child chunking and a hallucination checker; bilingual embeddings (nomic-embed-text for English, multilingual-e5-large for Turkish).
- 02
Designed a multi-agent orchestration layer (LangChain + LangGraph) with a supervisor routing queries to specialized agents (HR, tech, market, fact-checker, self-critique, translation, summarization) including prompt-injection / PII guards.
- 03
Served local models with Ollama (Qwen, gpt-oss, llama3.2-vision) behind a multi-provider abstraction with OpenAI / Anthropic / Azure fallback, streaming responses, token-budget context fitting and Prometheus metrics.
- 04
Designed a feedback-driven DPO (Direct Preference Optimization) fine-tuning pipeline: mined high- vs low-rated production responses into prompt/chosen/rejected preference pairs and customized models via Ollama Modelfiles.
- 05
Built a separate Turkish subtitle/transcription pipeline with Whisper (whisper.cpp, large-v3-turbo) and a rule-based SRT cleaning engine (~60 Turkish correction rules) producing final SRT/ASS subtitles and DOCX transcripts.
Architecture
- 01
Ingest
Semantic / parent-child chunking, TR + EN embeddings
- 02
Qdrant
Department-isolated collections
- 03
Hybrid retrieval
Dense + BM25, HyDE, cross-encoder reranking
- 04
LangGraph supervisor
Routes to specialist agents; PII / injection guards
- 05
Ollama
Local models, OpenAI / Anthropic / Azure fallback, streaming
- 06
DPO loop
Rated answers → preference pairs → Modelfile
Other projects
All projects →MzTurnCounter
Visitors today
12,480
Active RTUs
47 / 48
Open alarms
0
Passages per hour
09:0014:0020:00
Device fleet
● 45 online● 2 buffering● 1 offline
SICPA Turkey · 2023 – present
RTU-MYS / MzTurnCounter
Museum visitor counting & device monitoring
Visitor-counting and remote-device-monitoring platform for Turkey's Ministry of Culture & Tourism, ingesting turnstile telemetry from a fleet of Raspberry Pi RTUs (Remote Terminal Units).
- C# / .NET 8
- ASP.NET Core MVC
- EF Core
- PostgreSQL (AWS RDS)
- Python
EXP-2026-1042
Expense report
Total
₺3,025.00
Meals
Approved
₺635.00
Taxi
Approved
₺240.00
Hotel
Pending
₺2,150.00
Submit for approval
SAP mapping
Meals →770.01.003
RabbitMQ
expense.submitted ✓ ack
SICPA Turkey · 2023 – present
Exprova
Corporate expense management platform
Mobile + web platform for capturing, submitting and approving employee expense reports and cash advances, with SAP accounting-code integration.
- Laravel 10
- PHP 8.1
- MySQL 8
- Laravel Sanctum
- RabbitMQ