RAI PACS Developer Platform
Bulut PACS, DICOM gateway ve AI raporlama icin teknik merkez.
dev.raipacs.com; RAI PACS mimarisi, entegrasyon yuzeyleri, DICOM aktarim bilgileri, AI servisleri ve surum notlari icin canli dokumantasyon alanidir.
Guides
Baslangic noktasi
Metadata PostgreSQL'de, orijinal DICOM nesneleri Supabase Storage dicom-originals bucket'inda saklanir.
DICOM GatewayModaliteler C-STORE ile gateway'e gelir; Orthanc gateway katmani RAI metadata ve Storage import akisina baglanir.
ViewerRAI Viewer hizli preview, cache, frame kontrolu ve OHIF yeni sekme koprusuyle birlikte calisir.
AI RaporlamaOpenAI, Claude, Gemini, MedGemma ve RAI LLM adaptorlari ayni AI job ve draft rapor modelinde toplanir.
Architecture
Cift katmanli PACS veri ayrimi
RAI PACS metadata ve buyuk DICOM nesnelerini ayirir. PostgreSQL; organizasyon, sube, hasta, tetkik, seri, instance, rapor, audit ve yetki metadata bilgisini tutar. Supabase Storage ise orijinal DICOM dosyalarini private dicom-originals bucket alaninda saklar.
Storage key:
{organization_id}/{study_instance_uid}/{series_instance_uid}/{sop_instance_uid}.dcmDICOM
DICOM Gateway baglanti bilgileri
Modalite kaynak AE Title, kaynak IP, Called AE ve opsiyonel kurulus/sube kodu ile eslestirilir. Gelisen canli kurulumda once serbest erisim, hastane canli gecisinde IP veya ulke bazli firewall kisitlamasi uygulanir.
Viewer
RAI Viewer ve OHIF koprusu
RAI Viewer radyolog icin ana is istasyonudur. Scroll, pan, window/level, zoom, fit, frame ok tuslari, seri paneli, preview/liste modu, privacy mode ve AI on rapor paneli birlikte calisir. OHIF yeni sekme artik RAI kontrollu launch katmanindan acilir; harici OHIF viewer fallback olarak korunur.
- Frame cache ve preview katmani viewer performansini hizlandirir.
- Renkli US gibi farkli fotometrik yorumlar desteklenir.
- OHIF hasta oturumu ayni hastanin son tetkiklerini tek dicomjson manifestinde acar.
- RAI OHIF Gateway signed token, DICOMweb root ve RAI-hosted OHIF launch aksiyonlarini tek ekranda tasir.
- Self-host OHIF static viewer /ohif-viewer altinda RAI domaininden servis edilir.
- Public OHIF sadece teknik fallback olarak kodda korunur; ana akis RAI domainindedir.
- Harici paylasim linkleri privacy mode on varsayimi ile calisir.
Faz 2 hedefi self-host OHIF ve DICOMweb endpoint olarak ilerler. Gateway katmani ve static OHIF shell hazirdir; sonraki adim OHIF datasource'u dogrudan /ohif/config ve /dicomweb uzerinden sertlestirmektir.
GET /dicomweb/studies
GET /dicomweb/studies/{StudyInstanceUID}/series
GET /dicomweb/studies/{StudyInstanceUID}/series/{SeriesInstanceUID}/instances
GET /dicomweb/studies/{StudyInstanceUID}/metadata
GET /dicomweb/studies/{StudyInstanceUID}/series/{SeriesInstanceUID}/instances/{SOPInstanceUID}/frames/1API
Public ve signed teknik yuzeyler
| Method | Path | Kapsam | Yetki |
|---|---|---|---|
GET | /ohif | RAI kontrollu OHIF launch sayfasi | Signed launch token |
GET | /ohif/config | Self-host OHIF DICOMweb datasource config | Signed launch token |
GET | /viewer-data/studies/:studyId | OHIF dicomjson metadata | Signed launch token |
GET/HEAD | /viewer-data/instances/:instanceId | Range destekli DICOM instance proxy | Signed launch token |
GET | /dicomweb/studies | QIDO-RS study arama | RAI oturumu veya Bearer launch token |
GET | /dicomweb/studies/:studyUid/series | QIDO-RS series arama | RAI oturumu veya Bearer launch token |
GET | /dicomweb/studies/:studyUid/series/:seriesUid/instances | QIDO-RS instance arama | RAI oturumu veya Bearer launch token |
GET/HEAD | /dicomweb/studies/:studyUid/series/:seriesUid/instances/:sopUid | WADO-RS raw DICOM instance retrieve | RAI oturumu veya Bearer launch token |
GET | /dicomweb/studies/:studyUid/series/:seriesUid/instances/:sopUid/frames/:frameList | WADO-RS frame retrieve | RAI oturumu veya Bearer launch token |
GET | /viewer-data/ohif-session | OHIF icin hasta bazli coklu tetkik dicomjson manifesti | Signed multi-study launch token |
POST | /api/share | Sureli harici paylasim linki | RAI oturumu |
GET | /api/share/:token veya /share?s=:id | Paylasim onizleme ve OHIF acilis | Sureli share token |
GET/POST | /api/jobs/ai-provider-health | Gunluk AI provider saglik testi ve e-posta raporu | Vercel Cron Bearer token |
DICOM instance proxy Range headerlarini upstream Storage signed URL tarafina tasir. DICOMweb CORS RAI app, OHIF domaini ve public fallback viewer icin kisitli tutulur; RAI Viewer dahili signed URL akisini kullanir.
Database
Ana tablo ve sorumluluklar
organizations | Tenant/konsolidasyon siniri |
branches | Merkez, Dev, Kosova gibi sube ayrimi |
organization_members | Kullanici rol ve varsayilan sube |
organization_member_branches | Kullanici bazli sube yetkisi |
patients | Hasta demografi ve HIS kaynak alanlari |
studies / series / instances | DICOM metadata hiyerarsisi |
reports | Taslak ve nihai radyoloji raporlari |
ai_service_providers / ai_jobs | AI servis secimi ve is kuyrugu |
ai_usage_events | Token ve maliyet raporlama |
external_study_shares | Sureli guvenli paylasim linkleri |
AI
AI servisleri ve on rapor akisi
AI islemi viewer icinden manuel baslatilir. Secilen provider ai_jobs kaydi olusturur, tetkik metadata verisi ve hazirlanan goruntu onizlemeleri provider adapter katmanina tasinir, sonuc ai_report_drafts icinde saklanir.
Token ve maliyet izleme ai_usage_events tablosu uzerinden Admin AI Servisleri ekraninda tarih araligi, provider, model ve rapor bazinda gosterilir.
HIS
HIS / RIS entegrasyon modeli
HIS tanimlari Admin panelinden sube bazli tutulur. HL7, REST ve planlanan DICOM Modality Worklist akislari icin vendor, protokol, mesaj tipleri, auth tipi ve test sonuc alanlari hazirdir.
- Hasta demografi alanlari HIS kaynak kimlikleriyle genisletildi.
- HIS kaynak alanlari yalnizca Admin grubunda gorunur.
- Sube ve tenant ayrimi tek organizasyon icinde baslatildi.
Operations
Operasyon runbook
npm run import:dicom-folder npm run sync:orthanc-events npm run sync:orthanc-logs
Changelog
Surum notlari
Self-host OHIF RAI Viewer geri donusu eklendi
- RAI OHIF launch linkleri artik self-host OHIF URL'ine guvenli returnUrl parametresi ekler.
- OHIF static build patch'i returnUrl varsa sag ustte RAI Viewer'a donus butonu gosterir.
- Return hedefi RAI app origin ve /viewer/ path'i ile sinirlandirilir.
Self-host RAI OHIF static viewer eklendi
- Build sirasinda @ohif/app 3.12.5 static dist indirilip /ohif-viewer altinda RAI domaininden servis edilir.
- RAI Viewer ve OHIF Gateway linkleri public viewer.ohif.org yerine ohif.raipacs.com/ohif-viewer akisini kullanir.
- OHIF asset path, webpack public path ve SPA rewrite kurallari /ohif-viewer prefix'i icin patchlenir.
OHIF Gateway iframe fallback'i kaldirildi
- Public viewer.ohif.org iframe icinde calismadigi icin gateway artik top-level launch akisi kullanir.
- OHIF ayni sekmede ac ve yeni sekmede ac aksiyonlari signed DICOMweb token ile calisir.
- Gomulu OHIF deneyimi self-host OHIF build fazina ayrildi; DICOMweb/config katmani korunur.
RAI OHIF Gateway launch katmani eklendi
- RAI Viewer OHIF butonlari artik dogrudan public OHIF yerine RAI /ohif launch sayfasina gider.
- /ohif/config endpoint'i signed token ile DICOMweb datasource bilgisini uretir.
- ohif.raipacs.com host rewrite hazirlandi; public viewer.ohif.org simdilik fallback olarak korunur.
WADO-RS frame retrieve endpoint'i eklendi
- DICOMweb altinda /frames/{frameList} endpoint'i eklendi.
- Native uncompressed pixel data ve encapsulated compressed frame fragmentleri multipart/related yanit olarak doner.
- Metadata Pixel Data BulkDataURI artik ilk frame endpoint'ine isaret eder.
DICOMweb read-only API katmani baslatildi
- RAI metadata ve Supabase Storage uzerinden QIDO-RS study, series ve instance arama endpointleri eklendi.
- WADO-RS metadata ve raw DICOM instance retrieve endpointleri RAI oturumu veya signed launch token ile calisir hale getirildi.
- Frame-level WADO-RS ve self-host OHIF datasource baglantisi bir sonraki faza ayrildi.
OHIF hasta oturumu ve DICOMweb yol haritasi
- RAI Viewer icine tek tetkik OHIF linkine ek olarak hasta bazli coklu tetkik OHIF oturumu eklendi.
- Signed launch token artik tek study veya study-session kapsaminda birden fazla study tasiyabilir.
- Uzun vadeli self-host OHIF + DICOMweb gecisi icin operasyon yol haritasi dokumante edildi.
AI provider saglik cron job'u eklendi
- Vercel Cron her gun Turkiye saatiyle 09:00'da aktif AI provider'lari test eder.
- OpenAI, Claude, Gemini, Qwen, DeepSeek, MedGemma, RAI LLM ve RAI AI Orchestrator saglik sonucu support@raipacs.com adresine gonderilecek sekilde hazirlandi.
- Qwen varsayilan modeli qwen-vl-max olarak guncellendi; eski latest model adlari runtime'da normalize edilir.
RAI AI Orchestrator ve RAI LLM checklist eklendi
- Admin AI Servisleri ekranina RAI LLM kurulum checklist'i eklendi.
- RAI AI Orchestrator provider'i aktif olarak seed edilir ve manuel AI butonunda secilebilir.
- Orchestrator RAI LLM, OpenAI, Gemini, Claude, MedGemma ve RAI Mock sirasiyla calisabilir provider'a route eder.
RAI LLM GPU quota on kosulu netlestirildi
- Cloud Run L4 GPU deploy script'i no-zonal-redundancy parametresiyle kalici hale getirildi.
- Google Cloud Run NVIDIA L4 GPU kotasi 0 oldugunda deploy'un duracagi ve quota talebi gerektigi dokumante edildi.
- RAI LLM runbook'u Cloud Run GPU quota kontrolu ve Vercel aktivasyon adimlariyla guncellendi.
RAI LLM Vercel aktivasyon script'i eklendi
- Cloud Run deploy sonrasinda endpoint ve token degerlerini rai-llm-vercel.env dosyasina yazan akis eklendi.
- RAI LLM production env degerlerini Vercel'e tek komutla gecmek icin npm run configure:rai-llm:vercel script'i eklendi.
- RAI LLM canli kullanim icin Cloud Run GPU endpoint, Vercel env ve Admin canli test adimlari netlestirildi.
RAI LLM Cloud Run GPU deploy script'i eklendi
- RAI LLM icin Google Cloud Run Gen2 + NVIDIA L4 GPU deploy script'i hazirlandi.
- Artifact Registry build, Cloud Run deploy ve endpoint smoke-test akisi tek runbook'a baglandi.
- Servis public HTTPS endpoint verir; erisim Bearer token ile uygulama icinde sinirlanir.
RAI LLM operasyon durumu Admin ekranina eklendi
- Admin AI Servisleri ekraninda RAI LLM provider, model, endpoint ve API token hazirlik durumu gosterilir.
- Endpoint degeri maskeli gosterilir; secret degerleri UI'da aciga cikmaz.
- Canli GPU endpoint hazir oldugunda kullanilacak smoke-test komutu ayni panelde yer alir.
RAI LLM endpoint test ve operasyon runbook'u eklendi
- RAI LLM OpenAI-compatible endpoint icin npm run test:rai-llm smoke-test komutu eklendi.
- GPU endpoint kurulumu, Vercel env tanimlari ve canli test adimlari dokumante edildi.
- Endpoint hazir oldugunda RAI Viewer AI akisi ayni provider uzerinden test edilebilir hale geldi.
RAI LLM self-hosted model hatti baslatildi
- RAI LLM provider seed'i ve RAI_LLM_ENDPOINT entegrasyonu eklendi.
- Admin AI Servisleri sayfasi RAI LLM provider eksikse otomatik olusturur.
- Qwen/Qwen2.5-VL-7B-Instruct tabanli OpenAI-compatible inference servisi hazirlandi.
- RAI LLM modeli ileride RAI radyoloji veri setleriyle fine-tune edilebilir hat olarak konumlandi.
Developer portal yayina hazirlandi
- dev.raipacs.com host'u public teknik dokumantasyon sayfasina rewrite edilir.
- Mimari, API, DICOM, AI, HIS ve operasyon notlari tek portalda toplandi.
- Surum notlari icin RAI gelistirme akisi baslatildi.
Admin kullanici ve sube yetkileri
- Kullanici yonetimi acilir bloklara ve filtrelenebilir tabloya tasindi.
- Dev ve Kosova subeleri olusturuldu; Admin varsayilan subesi Dev yapildi.
- organization_member_branches ile kullanici bazli sube yetkisi eklendi.
Rapor taslaklari ve AI goruntu onizleme
- Ayni tetkik uzerinde birden fazla taslak rapor kaydi desteklendi.
- DICOM preview verileri AI servislerine tasinabilir hale getirildi.
- Gorunur hata mesajlarina kopyalama kontrolu eklendi.
MedGemma ve tibbi AI presetleri
- MedGemma endpoint adapter, retry ve cold-start toleransi eklendi.
- OpenAI, Claude, Gemini, MedGemma ve RaDialog provider secenekleri ayni modelde toplandi.
- AI provider hata durumlari viewer icinde daha acik gosterilmeye baslandi.
Harici paylasim ve AI token raporlama
- Sureli guvenli paylasim linkleri eklendi.
- AI token tuketimi provider, model, rapor ve tarih araligi bazinda izlenebilir oldu.
- OHIF icin viewer-data koprusu daha kararli hale getirildi.
DICOM Server ve HIS yonetimi
- DICOM modalite, gateway sagligi, baglanti loglari ve import kuyrugu Admin paneline eklendi.
- HIS entegrasyon tanimlari, mesaj tipleri ve test aksiyonlari icin arayuz hazirlandi.
- Branch ve modality matching temeli kuruldu.
RAI PACS MVP veri modeli
- Hasta, tetkik, seri, instance, rapor ve audit tablolarindan olusan temel PACS semasi olusturuldu.
- Turkce karakter desteği, Supabase Storage ve DICOM import akisi MVP'ye alindi.
- RAI Viewer ve OHIF koprusu ilk calisan surume geldi.