Bir InterMIND toplantısının yapı taşları
Neredeyse her ürün, herkesin başvurduğu büyük tescilli SaaS varsayılanlarından oluşan aynı varsayılan yığınla oluşturulur. Bunlar sürtünmesiz yoldur. Toplantı verilerinizin gerçekten bulunduğu her katmanda, biz farklı bir yol izledik: kendi kodumuz veya kendi sunucularımızda barındırabileceğimiz açık kaynak yazılım.
Bu yazı, coğrafyayı — her servisin nerede yürütüldüğünü ve hangi verilerden geçtiğini haritalayan — Bir InterMIND toplantısı gerçekte nerede çalışır adlı gönderiye bir eşlikçidir. Bu gönderi, bir güvenlik ekibinin sonrasında sorduğu soruyu yanıtlar: bu şey neden oluşuyor — ve onu okuyabilir, denetleyebilir ve değiştirebilir miyiz?
Nerede çalıştığı değil — katman katman neden oluştuğu.
Varsayılanlar ve bunların bedeli
Her ürün bir tercih yığınıdır. Çoğu ürün için, bu tercihlerin çoğu varsayılan olarak belirlenir: Google Analytics, Firebase, Google Translate API, Auth0, React. Bunlar sürtünmesiz yoldur ve çoğu ekip için bu makul bir karardır. Takas, her birinin yığınınızın bir kısmını okuyamayacağınız, denetleyemeyeceğiniz ve yeniden yazmadan ayrılamayacağınız bir satıcının arkasına koymasıdır.
Toplantı verilerinizin gerçekten bulunduğu her katmanda farklı bir tercih yaptık: kendi kodumuz veya kendi sunucularımızda barındırabileceğimiz açık kaynak yazılım. Bir katman toplantınızın içeriğine dokunmadığında ise pragmatik kalır ve bunu açıkça söyleriz. İşte bütün resim.
Omurga: motor bizim kodumuz, üçüncü bir tarafın değil
Toplantınızın çoğundan aktığı için en çok önem taşıyan katmanla başlayalım. Gerçek zamanlı taşıma ve ses/sohbet çevirisi ikisi de mind-sdk + Mind API — OVH France üzerindeki kendi motorumuz üzerinde çalışır. Çevrilmiş bir toplantı oluşturmanın varsayılan yolu, bir gerçek zamanlı SaaS'ı (LiveKit) bir çeviri API'sına (DeepL, Google) iliştirmektir; biz ikisini de canlı yolda çalıştırmıyoruz. Döngüde üçüncü taraf bir çeviri modeli yoktur. (DeepL kullanıyoruz — ancak yalnızca sohbete bırakılan belgeler için, canlı ses/sohbet yolu için değil; çalışma zamanı haritasına bakın. Boru hattı mekaniklerini Çeviri boru hatlarının içinde adlı yazıda ele aldık.)
İşte çalışma zamanı haritasında olmayan kısım: toplantınızın üzerinde çalıştığı SDK, BSD 3-Clause lisansı altında açık kaynaktır — mind-sdk istemcisi gitlab.com/mindlabs/api/sdk adresinde herkese açıktır, telif hakkı Eston IP varlığımız MindMeeting OÜ'ye aittir. OVH France üzerinde kendimizin çalıştırdığı api.mind.com adresindeki Mind API ile iletişim kurar.
Bu, "bakın ama dokunmayın" türünden kaynak erişilebilir bir düzenleme değildir. BSD 3-Clause, izin verici, OSI onaylı bir lisanstır. Güvenlik ekibiniz SDK'yı klonlayabilir, sesinizin ve metninizin nasıl yakalandığını, çerçevelendiğini ve aktığını tam olarak okuyabilir ve bu entegrasyonu kendi gereksinimlerinize göre denetleyebilir. Konuştuğu sunucu tarafı motor bizimdir — üçüncü bir tarafın kapalı kutusu değil — ve ihtiyaç duyan bir kiracı için tamamen kendi sunucularında barındırılabilir bir motor yol haritamızdadır, ancak bugün sunduğumuz bir şey değildir. Çıktığı an bu yazıyı güncelleyeceğiz.
Katman katman: varsayılanlar ve çalıştırdıklarımız
| Katman | Her zamanki varsayılan | Çalıştırdıklarımız | Sizin için neden önemli |
|---|---|---|---|
| Gerçek zamanlı + çeviri motoru (ses + sohbet) | LiveKit + bir çeviri API'sı (DeepL / Google) | mind-sdk (BSD-3-Clause istemci) + kendi Mind API'mız, OVH France | En ağır veri akışı üçüncü taraf bir model değil, kendi motorumuzdur — ve istemci SDK'sı açıktır ve denetlenebilir |
| Ön yüz iskeleti | React (Meta) / Next.js | Vue + Nuxt | Topluluk yönetimli OSS — arayüzünüzün üzerinde çalıştığı iskelete tek bir şirket sahip değildir |
| Ürün analitiği | Google Analytics | PostHog | Açık kaynak, AB bulutu, kendi alanımız üzerinden birinci taraf olarak proxy'lenen — kullanım verileri bir üçüncü taraf reklam platformuna akmaz |
| Yazı tipleri | Google Fonts CDN | Kendi sunucularımızda barındırılan (@nuxt/fonts) | Kullanıcılarınızın yüklediği sayfadan üçüncü taraf yazı tipi çağrısı yoktur — tekrarlayan bir GDPR bulgusu, önlendi |
| Kimlik doğrulama | Auth0 / Clerk / Firebase Auth | Kendi işlettiğimiz OIDC, Google / Microsoft ile federe | Ortada bir kimlik doğrulama aracısı oturumlarınızı tutmaz — kendi kimlik sağlayıcınızı getirirsiniz |
| Belge çevirisi | Google Translate | DeepL (Cologne) | Uzmanlaşmış AB satıcısı, Almanya işleme |
| İçerik / belgeler | Contentful / Sanity (headless CMS) | Nuxt Content (git ile izlenen markdown) | Sitemizdeki kelimeler bir satıcının veritabanında değil, bizim depomuzda yaşar |
| Uygulama veritabanı | Firestore / DynamoDB (tescilli) | Postgres (Neon üzerinde) | Açık standart — herhangi bir Postgres sunucusuna taşınabilir, yeniden yazılacak tescilli sorgu API'sı yoktur |
| Nesne depolama | Tescilli blob API'ları | Tigris (S3 uyumlu) | Açık protokol — kayıtlar ve dışa aktarmalar herhangi bir S3 deposuna taşınabilir |
| CRM / satış | Salesforce / HubSpot | Pipedrive (Eston) | Müşteri ve anlaşma kayıtları bir ABD satış platformunda değil, AB merkezli bir CRM'de bulunur |
O tabloda iki çizgi var. Aracın verilerinizi işlediği yerlerde Açık kaynak — böylece denetlenebilir ve prensipte kendi sunucularınızda barındırılabilir. Altyapıya bağımlı olduğumuz yerlerde Açık standartlar (Postgres, S3 API, OIDC) — böylece hiçbir şey tek bir satıcının fiyatlandırmasına veya uyumluluk durumuna kilitli değildir. Postgres herhangi bir Postgres sunucusuna taşınabilir; depolama herhangi bir S3 deposuna taşınabilir; kimlik doğrulama zaten çalıştırdığınız kimlik sağlayıcısıyla federe olur. Son satır üçüncü bir eksen üzerinde durur: müşteri kayıtlarını tutan CRM, bir ABD satış platformu yerine AB merkezlidir (Pipedrive, Eston) — açık kaynak değil, ancak ABD yargısı altında da değildir.
Bunlardan birkaçı bir cümle daha hak ediyor. PostHog açık kaynaktır ve kendi sunucularınızda barındırılabilir; biz onu PostHog'un AB bulutunda çalıştırıyoruz ve kendi kaynağımız üzerinden birinci taraf olarak proxy'liyoruz, böylece olaylar reklam engelleyiciler tarafından sessizce düşmez ve bir üçüncü taraf analitik alanından geçmez. Kimlik doğrulama asla sizinle oturumlarınızın arasına girecek üçüncü taraf bir kimlik doğrulama SaaS'ına gitmez — OIDC akışını kendimiz çalıştırıyoruz ve mevcut Google veya Microsoft kimliğinizle federe ediyoruz. Ve her sayfadaki yazı tipleri kendi alanımızdan sunulur; Google Fonts'un kod tabanımızda göründüğü tek yer, kullanıcılarınızın yüklediği uygulama değil, hiçbir zaman çevrimdışı bir marka varlığı betiğidir.
Pragmatik olduğumuz yerler — açıkça söyleyerek
Tüm yığının el yapımı veya ABD dışı olduğunu iddia etmiyoruz. Değil ve aksini iddia eden bir gönderi, kendi çalışma zamanı haritamız tarafından yalanlanır.
Altyapı tesisatı — barındırma ve SSR (Vercel), toplantı sunucusunun işlem gücü (Fly.io), ödemeler (Stripe), işlemsel e-postalar (Resend) — ABD merkezli SaaS üzerinde çalışır. Stripe ve Resend faturalandırmayı ve davetleri ele alır ve asla toplantı içeriğini görmez. Vercel ve Fly kiralık işlem gücüdür: kendi kodumuz onlarda çalışır ve Fly'daki toplantı sunucusu canlı oturumu ve özetimizin okuduğu dökümü ele alır — ancak bu onların makinelerindeki bizim kodumuzdur, toplantınızı yutan bir satıcı ürünü değil. Tüm bunlar çalışma zamanında AB'de yürütülür (çalışma zamanı haritasının konusu).
Bu bilinçli, sınırlı bir takastır: veri düzlemini sahiplenin ve açık kaynak yapın; kontrol düzlemi için mevcut en iyi SaaS'ı kullanın. Bunu adlandırmak mesele — istisnalar kazanımların yanında masada değilse "egemenlik" pek bir şey ifade etmez.
Toplantı sonrası AI adımları ve plan
Toplantıdan türetilen içeriğe ABD merkezli hiçbir tescilli model dokunmaz. Aramadan sonra çalışan dil modeli adımları — AI özeti (konular, kararlar, aksiyon maddeleri), toplantı sonrası özet ve AI not editörü — hepsi AB işlemcileri üzerinde durur. Özet ve editörün üretici eylemleri sıfır veri saklamalı AB'de barındırılan Mistral üzerinde çalışır (Vercel'in AI Ağ Geçidi üzerinden ulaşılır, Mistral sağlayıcısına sabitlenmiştir). Özet ve editörün çeviri eylemi ise OVH üzerindeki kendi AB motorumuzda çalışır — canlı ses ve sohbetin arkasındaki motorun aynısı. Gerçek zamanlı ses, sohbet, notlar ve belgeler başından beri genel amaçlı bir LLM'e hiç yaklaşmadı.
Döngüde hâlâ bulunan tek ABD modeli, herkesin toplantısı olmayan, sabit FLORES-200 referans cümlelerinin makine çevirilerini puanlayan herkese açık çeviri kıyaslamamızı yargılar.
AB-Mistral adımlarında daha da ileri gidiyoruz: özeti tamamen kapatmak için sahip kontrollü bir opt-out ve harici Mistral'ı değiştirecek kendi sunucularımızda barındırılan, açık ağırlıklı bir özetleme modeli (Kimi sınıfı). Açık ağırlıklı rotanın amacı, ağırlıkları kimin laboratuvarının eğittiği değil — açık ağırlıkların kontrol ettiğimiz bir altyapıda çalışabilmesidir, bu da onu veri düzleminin geri kalanıyla aynı açık-ve-kendi-sunucunuzda-barındırılabilir ekseninde tutar. İkisi de yol haritamızdadır, henüz yayınlanmadı; tamamlandıklarında bu yazıyı güncelleyeceğiz.
Bunun bizim ötesinde neden önemli olduğu
Bu kendi başına bir mühendislik çabası değildir. Bir yığını bu şekilde oluşturmanın nedeni, sözleşmenin sizin tarafınızda ortaya çıkar:
- Denetlenebilir. Toplantınızın üzerinde çalıştığı SDK, güvenlik ekibinizin okuyabileceği açık kaynak koddur ve arkasındaki motor bizimdir — üçüncü bir tarafın kapalı kutusu değil.
- Taşınabilir. Her veri katmanında açık standartlar — Postgres, S3, OIDC — tescilli bir kilitlenme olmadığı anlamına gelir. Taşınabilen şey tek bir satıcıya bağlı değildir.
- Kendi sunucularınızda barındırılabilir. Açık standart veri katmanları — Postgres, S3, OIDC — zaten kontrol ettiğiniz altyapıda çalışıyor; ihtiyaç duyan kiracı için tamamen kendi sunucularında barındırılabilir bir çeviri motoru yol haritamızdadır.
Bu, 2026-06-07 itibarıyla resimdir. Yığın değiştiğinde — bir satıcı değişimi, bir katmanın yeniden inşası, özet modelinin değiştirilmesi — güncelleyeceğiz. Mevcut yapılandırma, açık vercel.json dosyamız, nuxt.config.ts dosyamız ve yukarıda bağlantısı verilen BSD-3-Clause mind-sdk depomuzda doğrulanabilir durumdadır.
Buradaki bir katman yanlış görünüyorsa veya güvenlik incelemeniz bu haritanın vermediği bir yanıtı gerektiriyorsa, bize yazın. Eksik bir ayrıntıyı düzeltmeyi, sizin onu bir kod denetiminde bulmanıza tercih ederiz.
Kaynaklar: mind-sdk deposu (BSD-3-Clause), FLORES-200; yığın gerçekleri, dağıtılan yapılandırmaya (vercel.json, nuxt.config.ts) ve gönderilen koda göre doğrulanmıştır, Ağustos 2026'da kontrol edilmiştir.