Synaplan Multimodal Gateway
resmiOffers the complete functionality of the Open Source server as a MCP example
Synaplan Multimodal Gateway ile neler yapabilirsiniz?
- RAG bilgi tabanını sorgula — Yüklediğiniz belgelere karşı sorular sorun ve
POST /mcparacılığıyla kendi içeriğinize dayalı AI yanıtları alın. - AI anılarını al — MCP uç noktası aracılığıyla Qdrant vektör aramasında depolanan kullanıcı profillerini ve etkileşim geçmişini sorgulayın.
- Karmaşık istekleri ayrıştır — AI planlayıcının bir görev grafiğine (çıkar, özetle, oluştur) ayırdığı çok adımlı görevler gönderin ve canlı ilerlemeyi akış olarak alın.
- Sohbet kanallarını yönet — Çok kanallı AI destekli konuşmalar için WhatsApp, e-posta veya gömülü sohbet widget'larını bağlayın ve yapılandırın.
- Harici MCP sunucularını bağla — Kendi MCP sunucularınızı Kanallar altına kaydedin, böylece çoklu görev planlayıcı
mcp_fetchdüğümleri aracılığıyla onlardan canlı veri çekebilsin.
Dokümantasyon
Synaplan
RAG, sohbet widget'ları ve çok kanallı entegrasyon ile yapay zeka destekli bilgi yönetimi.
Canlı örnek: web.synaplan.com | Dokümanlar: docs.synaplan.com | API: Swagger UI

Ön Koşullar
- Docker + Docker Compose v2 (macOS/Windows'ta Docker Desktop veya Linux'ta Docker Engine + Compose eklentisi)
- Git
- Minimum 8 GB RAM (yerel yapay zeka standart kurulumu için 16 GB önerilir)
- Standart kurulum için ~9 GB boş disk (minimal kurulum için ~5 GB)
- Boş TCP portları
5173,8000,8082,8025,3307,6333,11435
Apple Silicon (M1–M4) Mac'ler: Synaplan'ın konteyner imajları
linux/amd64için yayınlanır, bu nedenle Apple Silicon'da emülasyon altında çalışırlar. Docker Desktop → Ayarlar → Genel bölümünde, varsayılan QEMU'dan çok daha hızlı ve kararlı konteynerler için "Apple Silicon'da x86/amd64 emülasyonu için Rosetta kullan" seçeneğini etkinleştirin (macOS 13+). Bu olmadan da her şey çalışır — sadece daha yavaş ve ilk derleme daha uzun sürer.
Hızlı Başlangıç
git clone https://github.com/metadist/synaplan.git
cd synaplan
docker compose up -d
http://localhost:5173 adresini açın — kullanıcı arayüzü ~2 dakika içinde hazır olur. Standart kurulumda, yerel Ollama modelleri (gpt-oss:20b, bge-m3, toplam ~14 GB) arka planda indirilmeye devam eder — yerel yapay zeka kullanan sohbet, bu indirme tamamlandığında çalışmaya başlar (docker compose logs -f backend ilerlemeyi gösterir). En hızlı ilk deneyim için aşağıdaki Minimal kurulumu kullanın.
Kurulum Seçenekleri
| Mod | Komut | Boyut | En Uygun Olduğu Durum |
|---|---|---|---|
| Standart | docker compose up -d | ~9 GB | Tam özellikler, yerel yapay zeka |
| Minimal | docker compose -f docker-compose-minimal.yml up -d | ~5 GB | Yalnızca bulut yapay zeka (Groq/OpenAI) |
Minimal kurulum için, ilk başlatmanın anahtarı görmesi için API anahtarınızı yığını başlatmadan önce ayarlayın (yeniden başlatmayı önler). console.groq.com adresinden ücretsiz bir anahtar alın:
echo "GROQ_API_KEY=your_key" >> backend/.env
docker compose -f docker-compose-minimal.yml up -d
Anahtar olmadan zaten başlattınız mı? Anahtarı ekleyin ve arka ucu yeniden başlatın:
echo "GROQ_API_KEY=your_key" >> backend/.env && docker compose restart backend
Erişim
| Servis | URL |
|---|---|
| Uygulama | http://localhost:5173 |
| API | http://localhost:8000 |
| API Dokümanları | http://localhost:8000/api/doc |
| phpMyAdmin | http://localhost:8082 |
| MailHog | http://localhost:8025 |
Varsayılan Giriş Bilgileri:
| E-posta | Parola | Seviye |
|---|---|---|
| [email protected] | admin123 | ADMIN |
| [email protected] | demo123 | PRO |
| [email protected] | test123 | YENİ (doğrulanmamış) |
Özellikler
- Yapay Zeka Sohbet — Ollama, OpenAI, Anthropic, Groq, Gemini
- Çok Görevli Yönlendirme — Bir yapay zeka planlayıcı, karmaşık istekleri bir görev grafiğine (çıkar → özetle → oluştur → yanıtla) ayrıştırır ve adımlar yürütülürken canlı görev kartları akışı sağlar
- RAG Arama — MariaDB VECTOR veya Qdrant ile anlamsal belge araması
- Sohbet Widget'ı — Herhangi bir web sitesine gömün (widget kılavuzu)
- Canlı Destek — Gerçek zamanlı WebSocket katmanı (Centrifugo + Redis): widget sohbetlerinin insan tarafından devralınması, yazma göstergeleri, operatör bildirimleri (gerçek zamanlı kılavuz)
- WhatsApp — Meta Business API entegrasyonu
- E-posta — Yapay zeka destekli e-posta yanıtları
- Ses — Whisper transkripsiyonu (giriş) + isteğe bağlı synaplan-tts (çıkış)
- Belgeler — PDF, Word, Excel, OCR ile görüntüler
- Yapay Zeka Anıları — Qdrant vektör araması ile kullanıcı profilleme
- Geri Bildirim Sistemi — Qdrant tarafından desteklenen geri bildirim yakalama ve analizi
- Eklentiler — Müdahalesiz eklenti sistemi (eklenti kılavuzu)
- MCP Sunucusu (erken erişim) — Model Bağlam Protokolü üzerinden yapay zeka istemcilerini (Claude, Cursor, …) bağlayın; RAG ve anılarınız
POST /mcpadresinde araç haline gelir (MCP kılavuzu) - MCP İstemcisi (erken erişim) — Kanallar → MCP Sunucuları altında kendi MCP sunucularınızı (CRM, wiki, n8n, …) bağlayın; çok görevli planlayıcı,
mcp_fetchDAG düğümleri aracılığıyla onlardan canlı veri çeker — salt okunur, SSRF korumalı, konu başına katılım. TohumlanmışBCONFIGbayrakları ile etkinleştirilir (MCP.CLIENT_ENABLED,MULTITASK.MCP_FETCH_ENABLED—app:seeddağıtımda bunları AÇIK olarak ayarlar; açık bir0satırı operatör kapatma anahtarıdır). Bkz. docs/MULTITASK_DATA_NODES.md
Qdrant Vektör Veritabanı
Qdrant dahili bir Docker servisi olarak çalışır — yapılandırma gerekmez. Yapay zeka anılarını, RAG belge aramasını ve geri bildirim sistemini destekler.
docker compose up -d ile otomatik olarak başlar. Synaplan onsuz da tamamen çalışır (anılar ve vektör araması devre dışı kalır).
Gerçek Zamanlı ve Arka Plan İşleme
Her iki compose dosyası da üç dahili servisi başlatır (ana bilgisayar portu yok, kurulum gerekmez):
| Servis | Rol |
|---|---|
redis | Zorunlu paylaşımlı altyapı: önbellek, oturumlar, kilitler, hız sınırları, mesaj kuyrukları (Redis Akışları), Centrifugo motoru |
centrifugo | Gerçek zamanlı özellikler için WebSocket ağ geçidi (canlı sohbet devralma, yazma göstergeleri, operatör bildirimleri) — tarayıcılar aynı kaynaktan /connection/websocket aracılığıyla bağlanır |
worker | Eşzamansız işleri yürüten Symfony Messenger tüketicisi (yapay zeka işleme, belge indeksleme, widget tarama) |
Çok düğümlü bir kümede tüm düğümler bir Redis'i paylaşır, böylece bir düğümde yayınlanan WebSocket olayları diğerine bağlı tarayıcılara ulaşır. Ayrıntılar: docs/REALTIME.md.
Metin-Konuşma (İsteğe Bağlı)
Ses çıkışı için, Synaplan ile birlikte synaplan-tts çalıştırın:
git clone https://github.com/metadist/synaplan-tts.git && cd synaplan-tts && docker compose up -d
Yaygın Komutlar
# Logs
docker compose logs -f backend
# Restart
docker compose restart backend
# Reset database
docker compose down -v && docker compose up -d
# Run tests
make test
# Code quality
make lint
Dokümantasyon
Kullanıcıya dönük ve API dokümanları docs.synaplan.com adresinde bulunur. Kaynak: metadist/synaplan-docs.
Depo içi kılavuzlar (bu kod tabanı üzerinde çalışan geliştiriciler için):
| Kılavuz | Açıklama |
|---|---|
| Kurulum | Ayrıntılı kurulum talimatları |
| Yapılandırma | Ortam değişkenleri, API anahtarları |
| Geliştirme | Komutlar, test, mimari |
| Gerçek Zamanlı / WebSocket'ler | Centrifugo + Redis gerçek zamanlı katmanı, çok düğümlü dağıtım |
| RAG Sistemi | Belge arama ve işleme |
| Sohbet Widget'ı | Web sitelerine sohbet gömme |
| Meta Business API kurulumu | |
| E-posta | E-posta kanalı entegrasyonu |
İlgili Depolar
| Depo | Amaç |
|---|---|
| synaplan | Ana uygulama (bu depo) |
| synaplan-docs | Genel doküman sitesi (docs.synaplan.com) |
| synaplan-tts | İsteğe bağlı Piper TTS servisi |
| synaplan-sortx | Belge sıralama eklentisi + yerel araç |
| synaplan-charts | Kubernetes için Helm şemaları |
| synaplan-platform | Üretim dağıtım yapılandırmaları |
Proje Yapısı
synaplan/
├── backend/ # Symfony PHP API
├── frontend/ # Vue.js SPA
├── docs/ # Documentation
├── _docker/ # Docker configs
└── plugins/ # Plugin system
Katkıda Bulunma
Geliştirme yönergeleri ve kod standartları için AGENTS.md dosyasına bakın.