Text-to-SQL + BI Copilot — Doğal dilde soru sorun, veritabanınızdan yanıt alın.
6 açık kaynak projenin (QueryWeaver, WrenAI, SQLBot, Vanna, MindsDB, DB-GPT) en iyi pattern'larını birleştiren enterprise-grade sistem.
- 🧠 4-yollu Hybrid Schema Discovery — vector + graph + column + sphere search
- 🛡️ AST-Level SQL Guard — statement check, tablo izinleri, destructive block, auto LIMIT
- 🔄 SQL Self-Healing — 3 iterasyonlu diagnose → fix → retry döngüsü
- 📊 Chart.js Otomatik Üretimi — sorgu sonuçlarından chart config
- 🎯 Intent Classification — 4 kategori (SQL, genel, yanıltıcı, yardım)
- 💾 Memory System — başarılı pattern'ları kaydet/ara, shortcut
- 📝 Terminology Library — iş terimlerini SQL generation'a enjekte
- 🧩 Offline Embedding Fallback — API key yoksa deterministic local embedding ile çalışır
- 🔒 Row-Level Permissions — kullanıcı bazlı WHERE filter enjeksiyonu
- 📡 SSE Streaming — pipeline adımlarını real-time stream
- 🧭 Admin Control Center — semantic, keys, memory, audit, metrics ve governance yönetimi
- 🎨 Premium Dark UI — glassmorphism, pipeline tracker, SQL highlighting
cd CoreInsight
pip install -e .
export OPENAI_API_KEY=sk-...
export COREINSIGHT_DATABASE__URL=postgresql+asyncpg://user:pass@localhost/mydb
python -m coreinsight.main
# → http://localhost:8000/docs (Swagger UI)cd CoreInsight/web
npm install
npm run dev
# → http://localhost:3000| Method | Endpoint | Açıklama |
|---|---|---|
| POST | /api/ask |
SSE streaming Text-to-SQL |
| GET | /api/health |
Health check |
| GET | /api/schema/tables |
Tablo listesi |
| POST | /api/schema/refresh |
Schema yeniden yükle |
| GET/POST/DELETE | /api/terminology |
Terminology yönetimi |
| GET/POST/DELETE | /api/examples |
Few-shot SQL örnek yönetimi |
| GET | /api/admin/audit |
Audit kayıtları (admin) |
| GET | /api/admin/metrics |
Operasyonel metrikler (admin) |
| GET | /api/admin/governance/report |
Governance raporu (admin) |
| GET | /api/admin/memory |
Memory pattern listesi (admin) |
| POST | /api/admin/memory/expire |
TTL ile memory temizliği (admin) |
| GET/POST/DELETE | /api/admin/keys* |
API key yönetimi (admin) |
| POST | /api/sql/execute |
Direkt SQL çalıştır |
/api/ask body alanları:
question(zorunlu)confirm_destructive(opsiyonel,trueise destructive SQL onayı)confirmed_sql(opsiyonel, onaylanan SQL metni)datasource_id(opsiyonel, semantic/memory scope)
Auth:
- Header:
Authorization: Bearer <api_key> - Demo dışı modda header zorunludur.
Datasource / workspace scope:
datasource_idverilmezse kullanıcınınworkspace_iddeğeri kullanılır.- Terminology, examples ve memory shortcut aramaları scope'a göre filtrelenir.
Persistence:
- Semantic/memory/audit/api key verileri SQLite üzerinde kalıcı saklanır.
- Varsayılan dosya:
coreinsight_meta.db(override:COREINSIGHT_META_DB).
Soru → Intent → Schema Discovery → SQL Generation → SQL Guard → Execute → Heal → Format → Chart → Suggestions
│ │ │ │ │ │
WrenAI 4-cat QueryWeaver QueryWeaver MindsDB QueryWeaver+WrenAI MindsDB
hybrid search S1-S5, P1-P13 AST check heal loop chart.js
CoreInsight/
├── config/ # YAML konfigürasyon + engine-specific prompt kuralları
├── src/coreinsight/ # Python backend
│ ├── agents/ # 7 agent (intent, generator, healer, planner, formatter, chart, followup)
│ ├── core/ # LLM, database, embeddings, shared models
│ ├── schema/ # Schema graph + hybrid retriever
│ ├── security/ # AST SQL guard + permissions
│ ├── memory/ # Pattern store + conversation manager
│ ├── semantic/ # Terminology + few-shot examples
│ ├── observability/# Audit logger
│ └── api/ # FastAPI endpoints
└── web/ # Next.js frontend
└── src/app/ # Chat UI with SSE streaming