# Yapay Zeka Temsilcileri İçin Sağlık Kalıpları (beta)

> Bir hastanın kaydında ne değişti ve ne tekrarlıyor, sabit istatistiksel kurallarla hesaplanmış: eğilimler, kişinin normal seviyesinden sapmalar ve belirti tekrarları, her biri kendi dönemi, kanıtı ve sınırlamalarıyla; teşhisler değil.

Source: https://developers.anpheros.com/tr/guides/health-patterns

**Anpheros, sabit istatistiksel kurallarla bir hastanın kaydında neyin değiştiğini ve neyin tekrarlandığını hesaplar ve her bulguyu dönemi, arkasındaki kaynaklar, yöntem sürümü ve sınırlamalarıyla birlikte uygulamanıza veya yapay zeka temsilcinize iletir.** Bir model artık birkaç sayıdan bir eğilim tahmin etmek zorunda kalmaz: eğilimi, etrafındaki belirsizliği ve referans verileri alır.

Beta. Sandbox'ta herhangi bir sandbox kimlik bilgisiyle (`sk_test_…` anahtarlar ve sandbox OAuth bağlantıları) çalışır. Üretim kayıtlarında yalnızca ayrı `anpheros/patterns` iznini içeren bir hastanın OAuth rızası altında çalışır; üretim API anahtarları 403 alır.

## Ne Bulur

| Tür | Cevapladığı Soru | Yöntem |
|---|---|---|
| `trend` | Bir ölçüm pencere boyunca artıyor mu, azalıyor mu? | Theil–Sen eğimi, günde bir değer üzerinde Mann–Kendall ile (yoğun izleme verileri için haftalık medyanlar), komşu günler benzer olduğunda düzeltilir |
| `trend` (`change_between_results`) | İki ila beş sonucu olan bir laboratuvar testi nasıl değişti? | İlk ve son sonuç, en sonuncusu raporun referans aralığına karşı; test edilmez, açıklanır |
| `trend` (`event_rate_change`) | Bir semptom daha sık veya daha az mı kaydediliyor? | Semptom günleri, kişinin herhangi bir şey kaydettiği günlere karşı, son 30 gün ile önceki 90 gün karşılaştırılır, kesin test |
| `baseline_deviation` | Bu kişi için son hafta olağandışı mı? | Son 7 gün ile 8-60. günler karşılaştırılır, Mann–Whitney veya otonokorelasyon düzeltilmiş ortalama farkı |
| `recurrence` | Semptom atakları düzenli aralıklarla mı geri geliyor? | Atak başlangıçları arasındaki aralıklar, rastgele yerleştirilmiş ataklara karşı tohumlanmış Monte Carlo |
| `association` (`around_medication_start`, sandbox) | Bir ilaç başlangıcından itibaren bir semptom daha sık veya daha az mı kaydediliyor? | İlaç başlangıcından itibaren 30 gün içindeki aktif günlere karşı semptom günleri, öncesindeki 90 güne kadar, kesin test |
| `association` (`after_short_sleep`, sandbox) | 6 saatten az uyunan günlerden sonra bir semptom daha sık mı kaydediliyor? | Uyku ölçülen ve kişi tarafından bir giriş yapılan günler, kısa gecelere karşı uzun geceler, Fisher'ın kesin testi |
| `convergence` (`recent_changes_together`, sandbox) | Yakın zamanda aynı dönemde birkaç şey değişti mi? | Yeni test yok: en az iki yakın zamandaki değişikliği gruplandırır (olağandışı bir hafta, daha sık veya daha az görülen bir semptom) ve her biri istatistiksel olarak desteklenir; sadece birlikte olduklarını söyler |

Tek bir çalıştırmanın tüm testleri birlikte düzeltilir (Benjamini–Hochberg). Bir bulgu yalnızca düzeltilmiş q-değeri 0.05'in altında **ve** değişiklik o ölçüm için eşik değerinden en az olduğunda `statistically_supported` olur.

## Ne Değildir

- **Tanı Değildir.** Bulgular kaydı tanımlar; asla bir durumu adlandırmaz veya tedavi değişikliği önermez. Her bulgu `safety.not_a_diagnosis = true` ve `safety.causal_claim = false` taşır.
- **Neden Değildir.** Yeni bir ilaçtan sonraki bir değişiklik veya birlikte kaydedilen iki şey, birinin diğerine neden olduğuna dair kanıt değildir. İlişkiler yalnızca iki şeyin aynı anda gerçekleştiğini söyler; her biri `confounding_possible` ve `not_causal` taşır ve yalnızca ilaç başlangıçları ve uyku semptomlara karşı test edilir, her çift değil. Şu anda yalnızca sandbox kimlik bilgileriyle.
- **Yapay Zeka Modeli Değildir ve Henüz Klinik Olarak İncelenmemiştir.** Her sayı sabit, sürümlenmiş istatistiksel kurallardan gelir; hiçbir yapay zeka modeli verileri analiz etmez. Anlamlı bir değişiklik için eşikler yapay zeka yardımıyla belirlenmiş ve henüz bir klinisyen tarafından incelenmemiştir; her bulgu `review.thresholds_reviewed_by_clinician`'te bunu belirtir. Motor, bilinen yerleştirilmiş desenlere sahip sentetik hastalar üzerinde doğrulanır: yerleştirileni bulur ve hiçbir şey olmadığında sessiz kalır. Bu klinik doğrulama değildir.

## Deneyin

Her sandbox projesinde 30 sentetik hasta bulunur ve bunların altısında önceden belirlenmiş bir desen bulunur. `GET /fhir/R4/Patient?identifier=https://anpheros.com/fhir/sid/sandbox-persona|<key>` ile birini bulun.

| Hasta | Ne ekildi | Motor ne raporluyor |
|---|---|---|
| p01 Andrei Popescu | Günlük evde kan basıncı, altı ay boyunca yaklaşık 8/5 mmHg düşüş | Sistolik (8480-6) ve diyastolik (8462-4) için `trend.decreasing` |
| p06 Giulia Rossi | Her 7 günde bir, artı eksi bir gün baş ağrısı | Baş ağrısı (R51) için `recurrence.intervals` |
| p17 Ciarán Murphy | Son 30 günün yaklaşık yarısında yorgunluk, önceden 12 günde 1'e karşı | Yorgunluk (R53) için `frequency.increased` |
| p19 Felix Gruber | Bir saatten alınan dinlenme kalp atış hızı, son haftada normal seviyesinin yaklaşık 9 bpm üzerinde | Dinlenme kalp atış hızı (40443-4) için `baseline.higher` |
| p20 Ivana Horvat | Bir saatten alınan dinlenme kalp atış hızı, altı ay boyunca yaklaşık 16 bpm düşüş | Dinlenme kalp atış hızı (40443-4) için `trend.decreasing` |
| p30 Jan Kowalczyk | Yoğun saat ve ev verileri, eklenen bir desen yok | Desteklenen bulgu yok: motor sessiz kalır |

16 Ekim 2026'dan önce oluşturulan projeler, sentetik hastalarını kontrol panelinden sıfırladıktan sonra bu desenleri alırlar; sıfırlama, onlarda yapılan tüm değişiklikleri değiştirir.

```bash
curl -s https://platform.anpheros.com/v1/patients/$PATIENT/patterns?window_days=180 \
  -H "Authorization: Bearer $ANPHEROS_KEY"
```

TypeScript SDK (`@anpheros/sdk` 0.2.0 veya daha yenisi) ile:

```ts
const run = await anpheros.patterns.run(patientId, { window_days: 180, min_strength: 'moderate' });
for (const f of run.findings) console.log(f.summary_text, f.strength, f.limitations.map(l => l.code));
```

MCP sunucusu ile, aracınıza *"Bu hastanın kaydında son altı ayda ne değişti?"* diye sorun: bu `get_health_patterns` çağırır ve ardından `get_pattern_evidence`, `get_series` ve `compare_periods` ile devam edebilir. `POST /v1/context`, değişiklikler ve ilişkiler hakkındaki sorular için veya `patterns` ihtiyacını sorduğunuzda bir `patterns` bölümü ekler.

## Uç Noktalar

| Uç Nokta | Ne döndürür |
|---|---|
| `GET /v1/patients/{id}/patterns` | bir çalıştırma: bulgular, hesaplanamayanlar ve nedenleri, hangi rızanın dışarıda bırakıldığı; filtreler `window_days` (30–730), `end`, `types`, `min_strength` |
| `GET /v1/patients/{id}/patterns/{finding_id}` | aynı pencere için yeniden hesaplanmış tek bir bulgu |
| `GET /v1/patients/{id}/patterns/{finding_id}/evidence` | sayfalama ile her destekleyici kaynak |
| `GET /v1/patients/{id}/series?code=…` | günlük tek bir değer olarak tek bir ölçüm, kapsama, boşluklar ve kaynak değişiklikleri ile |
| `POST /v1/patients/{id}/patterns/compare` | seçtiğiniz iki dönemde tek bir ölçüm |

## Bir bulguyu okuma

- `summary_text`: Gösterilmesi veya alıntılanması güvenli, tek bir düz cümle.
- `strength`: `strong`, `moderate`, `weak` veya `not_tested`. Zayıf ve test edilmemiş bulgular kanıt değil, açıklamalardır.
- `window`, `comparison_window`: analiz edilen dönemler.
- `evidence` (20'ye kadar, dönem boyunca dağılmış) ve `evidence_total`: bulgunun arkasındaki kaynaklar, sürüm, tarih, değer ve yazar türü ile birlikte.
- `limitations`: metin ile kodlanmış. Bunları bulgu ile birlikte gösterin.
- `review`: bir klinisyenin eşik değerleri (şimdilik `false`) gözden geçirip geçirmediği ve bunların nereden geldiği.
- `method`, `engine_version`, `input_fingerprint`: aynı veri, yapılandırma ve sürümler aynı sonucu ve aynı kimliği verir.

## Bilmeniz Gereken Kurallar

- **Önce Onay.** Bir OAuth hibesi kapsamında, motor yalnızca iznin izin verdiği şeyleri okur; okuyamadığı şeyler `omitted`'te içerik olmadan listelenir.
- **Kimlikler.** Hastalar projenizin eşleşen kimliği ile görünür; bulunan kimlikler proje başına türetilir. Kayıt değiştiğinde, bir bulgu yeni bir kimlik alır ve eskisi 404 yanıtı verir.
- **Saat.** Bir okumanın saati açık bir ofset taşıdığında (`2026-10-16T00:30:00+03:00`), kişinin kendi gününe sayılır; UTC'deki saatler (`Z`) veya ofsetsiz saatler UTC gününde kalır. Her bulgu `time_basis`'da hangisi olduğunu söyler (`record_offsets`, `partly_local` veya `local_time_unknown`). Yerel günler sandbox ve üretim kayıtlarında kullanılır; günün saatine göre desenler henüz hesaplanmamıştır.
- **Hariç Tutulanlar.** Yapay zeka tarafından yazılan değerler, "hata girildi" olarak işaretlenmiş sonuçlar ve yalnızca aya ait bilinen tarihler kullanılmaz ve sayılır.
- **Limitler.** Her kimlik başına dakikada 30 desen çalıştırma, olağan dakikada 600 isteğe ek olarak.

## Sıkça Sorulan Sorular

### Bir dil modeli kullanıyor mu?
Hayır. Her sayı sabit, sürümlenmiş istatistiksel yöntemlerden gelir. Barındırılan veya yerel herhangi bir model, sonuçları okuyabilir.

### Verilerimdeki net bir değişiklik neden zayıf olarak işaretlendi?
Çünkü kanıt, çalıştırmadaki tüm testler için düzeltmeye dayanmıyor, seri kısa veya gürültülü ya da değişiklik o ölçüm için eşiğin altında. Bulgular hala kaydın gösterdiklerini tanımlar.

### Üretim kayıtlarında çalışıyor mu?
Evet, 16 Ekim 2026'dan itibaren, ancak yalnızca hastanın ayrı `anpheros/patterns` iznini içeren bir OAuth izni altında, bu izin onay ekranında kendi satırında gösterilir. `patient/…` kapsamlarınızın yanında kapsamı isteyin; onsuz bir izin ve herhangi bir üretim API anahtarı 403 hatası alır.

## İlgili Konular

- [Yapay Zeka Ajanları için FHIR MCP Sunucusu](https://developers.anpheros.com/tr/guides/mcp)
- [LLM Uygulamaları ve Sağlık Verileri](https://developers.anpheros.com/tr/guides/llm-healthcare-data)
- [Yapay Zeka Ajanları ve Tıbbi Veriler](https://developers.anpheros.com/tr/guides/ai-agents-medical-data)
- [Hasta Onayı ile Sağlık API'si](https://developers.anpheros.com/tr/guides/healthcare-api-patient-consent)
