Yapay Zeka İkizleri
AI Twin'iniz Chainabit'in sizi nasıl anladığına dair kişiselleştirilmiş bir görünümdür. Sistem bunu otomatik olarak sürdürür; siz onu bu uç noktalar aracılığıyla gözlemlersiniz, sınırlı davranışsal tercihleri ayarlarsınız ve istemediğiniz öğeleri unutur veya işaretlersiniz.
Kimlik sistem tarafından yönetilir. Bir ikizin profilini veya anılarını elle yazmanın bir son noktası yoktur.
Uç noktalar
| Method | Path | Description | Auth |
|---|---|---|---|
GET | /agents/twins/export | Oturum açmış kişinin Twin verilerini dışa aktarır | JWT |
PATCH | /agents/twins/me/preferences | Oturum açan kişinin Twin tercihlerini günceller | JWT |
GET | /workspaces/{workspaceId}/ai/twins | List twins in a workspace | JWT |
GET | /workspaces/{workspaceId}/ai/twins/skill-coverage | Skill coverage summary | JWT |
GET | /workspaces/{workspaceId}/ai/twins/behavioral-baseline | Behavioral baseline summary | JWT |
GET | /workspaces/{workspaceId}/ai/twins/{twinId}/brain | Read the latest twin profile | JWT |
GET | /workspaces/{workspaceId}/ai/twins/{twinId}/confidence | Per-field confidence values | JWT |
GET | /workspaces/{workspaceId}/ai/twins/{twinId}/evidence | Provenance for the twin's claims | JWT |
GET | /workspaces/{workspaceId}/ai/twins/{twinId}/timeline | History of twin profile versions | JWT |
PATCH | /workspaces/{workspaceId}/ai/twins/{twinId}/preferences | Update behavioural preferences | JWT |
POST | /workspaces/{workspaceId}/ai/twins/{twinId}/test | Run a sample prompt against the twin | JWT |
DELETE | /workspaces/{workspaceId}/ai/twins/{entityTwinId}/contributions/{userId} | Admin: revoke a member's contributions to an entity twin | JWT, admin role |
POST | /workspaces/{workspaceId}/ai/twins/{entityTwinId}/contributions/{userId}/regrant | Üyeyi yeniden katkıya uygun kılar | JWT, admin role |
GET | /agents/twins/me/beliefs | İkizinizin nasıl karar verdiğinize dair şu anki inançları ve dayanakları | JWT |
POST | /agents/twins/me/beliefs/rulings | Bir inancı onaylayın veya reddedin | JWT |
DELETE | /agents/twins/me/beliefs | İkizinizin hakkınızdaki tüm inançları silin | JWT |
GET | /agents/twins/{twinId}/memories | List memories | JWT |
POST | /agents/twins/{twinId}/memories/{id}/deletions/preview | Silmeden önce anıyı incele | JWT |
POST | /agents/twins/{twinId}/memories/{id}/deletions/cancel | Bekleyen silme işlemini iptal et | JWT |
DELETE | /agents/twins/{twinId}/memories/{id} | Forget a memory | JWT |
POST | /agents/twins/{twinId}/memories/{id}/flag | Flag a memory as wrong | JWT |
GET /agents/twins/export
Oturum açmış kişinin Twin kaydını, anılarını, davranışsal kanıtlarını ve çalışma alanı politikalarını JSON yanıtında döndürür. Yanıtın data nesnesinde twin, memories, evidence ve policies alanları bulunur. Kişinin dışa aktarılacak Twin kaydı yoksa 404 döner. JWT ile ilgili Twin yetkisi ve politika denetimleri gerekir.
GET /workspaces/{workspaceId}/ai/twins/{twinId}/brain
Tanım
İkizlerin mevcut profilini verir: kişilik boyutları ve sizin hakkınızda oluşturduğu en çok desteklenen iddialar. İkiz hala ilk sinyallerini topluyorsa yanıt "durum: "başladı" ifadesini gösterir.
Rica etmek
- Başlıklar:
Authorization: Bearer <token> - Yol parametreleri:
- "çalışma alanı kimliği"
- "ikiz kimlik"
Cevap
- '200 Tamam'json
{ "data": { "version": 12, "personality": { "threatSensitivity": 0.2, "rewardSensitivity": 0.6, "impulseControl": 0.7, "socialTrust": 0.5, "uncertaintyTolerance": 0.4, "emotionalRegulation": 0.65, "goalPersistence": 0.8 }, "topClaims": [ { "fieldPath": "preference.terse_replies", "claim": "terse_replies", "confidence": 0.82, "evidenceCount": 14 } ] } }
Kod Örneği
curl -H "Authorization: Bearer $TOKEN" \
https://api.chainabit.com/api/v1/workspaces/$WORKSPACE/ai/twins/$TWIN/brainGET /workspaces/{workspaceId}/ai/twins/{twinId}/confidence
Tanım
İkizlerin halihazırda sahip olduğu her iddia için düz bir "fieldPath → güven (0..1)" haritasını döndürür. Hangi iddiaların belirgin bir şekilde sergileneceğine ve hangilerinin geçici olarak ortaya çıkacağına karar vermek için bunu kullanın.
Rica etmek
- Yol parametreleri:
workspaceId,twinId
Cevap
- '200 Tamam'json
{ "data": { "preference.terse_replies": 0.82, "style.code_oriented": 0.61 } }
Kod Örneği
curl -H "Authorization: Bearer $TOKEN" \
https://api.chainabit.com/api/v1/workspaces/$WORKSPACE/ai/twins/$TWIN/confidenceGET /workspaces/{workspaceId}/ai/twins/{twinId}/evidence
Tanım
İkizlerin iddialarını destekleyen son kaynak satırlarını döndürür. Belirli bir iddiayı neyin desteklediğini görmek için isteğe bağlı olarak "fieldPath"e (ör. "preference.terse_replies") göre filtreleyin.
Rica etmek
- Yol parametreleri:
workspaceId,twinId - Sorgu: 'fieldPath' (isteğe bağlı), 'limit' (isteğe bağlı, varsayılan 50)
Cevap
- '200 OK' — 'iddia', 'kutupluluk', 'güven', 'çıkarıcı', 'kanal', 'createdAt' içeren kanıt girişleri dizisi.
Kod Örneği
curl -H "Authorization: Bearer $TOKEN" \
"https://api.chainabit.com/api/v1/workspaces/$WORKSPACE/ai/twins/$TWIN/evidence?fieldPath=preference.terse_replies"GET /workspaces/{workspaceId}/ai/twins/{twinId}/timeline
Tanım
İkiz profilin en son sürümlerini, en yenisi önce gelecek şekilde döndürür. İkizlerin zaman içinde nasıl geliştiğini görmek için bunu kullanın.
Rica etmek
- Yol parametreleri:
workspaceId,twinId - Sorgu: 'limit' (isteğe bağlı, varsayılan 20)
Cevap
- '200 OK' — 'sürüm' açıklamasına göre sıralanan profil anlık görüntüleri dizisi.
Kod Örneği
curl -H "Authorization: Bearer $TOKEN" \
"https://api.chainabit.com/api/v1/workspaces/$WORKSPACE/ai/twins/$TWIN/timeline?limit=20"PATCH /workspaces/{workspaceId}/ai/twins/{twinId}/preferences
Tanım
İkizlerin davranışsal tercihlerini güncelleyin. Bu, bir ikizin kimliğinin üzerine yazılabilen tek yüzeydir. Kimliğin kendisi sistem tarafından yönetilir.
İzin verilen alanlar:
| Field | Type | Notes |
|---|---|---|
paused | boolean | Pause background twin updates. |
observationEnabled | boolean | Allow the system to observe signals for this twin. |
aggregationCron | string | Cron expression. |
memoryRetentionDays | integer (1–3650) | How long memories are retained. |
sensitivityLevel | "low" | "med" | "high" | Privacy / sharing sensitivity. |
publicBrainShowcase | boolean | Opt-in to the public brain showcase on your profile. Off by default. |
Çalışma alanı ve kurumsal yönetici politikaları bu alanları geçersiz kılabilir veya kısıtlayabilir.
Rica etmek
- Başlıklar:
Authorization: Bearer <token>,Content-Type: application/json - Vücut:json
{ "paused": false, "memoryRetentionDays": 180, "sensitivityLevel": "med" }
Cevap
200 OK—{ "data": { "preferences": { ... } } }- "400 Hatalı İstek" — geçersiz alan değerleri
- '403 Yasak' — arayan ikizin kapsamında değil
Kod Örneği
curl -X PATCH \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{ "paused": false, "memoryRetentionDays": 180, "sensitivityLevel": "med" }' \
https://api.chainabit.com/api/v1/workspaces/$WORKSPACE/ai/twins/$TWIN/preferencesDELETE /workspaces/{workspaceId}/ai/twins/{entityTwinId}/contributions/
Tanım
Yalnızca yönetici. Tek bir üyenin bir ekip/çalışma alanı/kurum ikizine yaptığı katkıları iptal eder. Üyenin kendi kullanıcı ikizi etkilenmez.
Kuruluş içindeki her ekipten de iptal etmek için kurumsal ikizi üzerinde ?cascade=teams komutunu kullanın.
Rica etmek
- Yol parametreleri:
workspaceId,entityTwinId,userId - Sorgu:
cascade=teams(isteğe bağlı)
Cevap
200 OK—{ "data": { "evidenceRowsDeleted": 42, "teamsCascaded": 3 } }- '403 Yasak' — arayan, kapsamdaki bir yönetici değil.
Kod Örneği
curl -X DELETE \
-H "Authorization: Bearer $TOKEN" \
"https://api.chainabit.com/api/v1/workspaces/$WORKSPACE/ai/twins/$ENTITY_TWIN/contributions/$USER_ID?cascade=teams"POST /workspaces/{workspaceId}/ai/twins/{entityTwinId}/contributions/{userId}/regrant
Hesap yöneticileri etkin bir üye için önceki katkı dışlamasını kaldırabilir. Bu işlem üyenin gözlem rızasını değiştirmez; yalnızca rıza ve politika izin veriyorsa üyeyi yeniden katkıya uygun hale getirir.
201 Created yanıtı participation: "eligible_if_consented" değerini, dışlamanın değişip değişmediğini ve gözlem rızasının değiştirilmediğini bildirir.
İnançlar
Tekil anıların ötesinde ikiziniz, nasıl karar verdiğinize ve iletişim kurduğunuza dair az sayıda kanıta dayalı inanç tutar; örneğin mühendislik işlerinde kök nedeni çözen düzeltmeleri tercih ettiğiniz gibi. Bir inanç, sabit bir boyut ve duruş listesinden yalnızca tek bir seçimdir ve bir bağlama bağlıdır; bu yüzden asla serbest metin içermez.
Bir inanç, farklı günlerdeki tekrarlanan kanıtla yerleşir. Çıkarıma dayalı tek bir gözlem kişiselleştirmeye yön vermez; açıkça belirttiğiniz veya onayladığınız bir tercih daha erken kullanılabilir. İnançlar Twin'inizi kullanan Agent'lara yön verebilir; her konuşmaya otomatik olarak eklenmez. Güncel isteğiniz her zaman önceliklidir. Gözlem rızanızı gerektirir ve duraklatıldığında durur; inançlar size özeldir.
GET /agents/twins/me/beliefs
İkizinizin tuttuğu inançları data dizisinde döndürür. Her öğede okunabilir bir statement ve güncel rıza ile kanıtın kişiselleştirmeye izin verip vermediğini belirten boolean eligibleForPersonalization alanı bulunur. Uygunluk, inancın her konuşmaya eklendiği anlamına gelmez.
Öğelerde ayrıca dimension, stance, context (general, engineering, business, personal, learning veya creative), status (hypothesis, emerging, established, contested veya stale), basis (observed, stated veya mixed), confidence (tentative, moderate veya high), supportDays, firstObservedAt ve lastSupportedAt bulunur. Boyutlar: detail_level, answer_format, solution_scope, solution_origin, delivery_style, risk_attitude, speed_quality, cost_attitude, delegation, evidence_standard, privacy_stance, learning_style.
POST /agents/twins/me/beliefs/rulings
Bir inanç hakkında karar verin. Gövde: { "dimension": "solution_scope", "context": "engineering", "stance": "systemic", "ruling": "confirmed" }. ruling değeri confirmed veya rejected olur. Onaylama, daha önce gözlenmemiş geçerli bir tercihi de belirleyebilir. Reddetme o duruşun mevcut dayanaklarını devreden çıkarır; yalnızca sonraki kanıtla yeniden oluşabilir. Reddetme bir düzeltmedir; tekil kanıtı fiziksel olarak silmez. Rızanızı geri çekmiş olsanız bile yapılabilir. 201 Created ve { "data": { "ruled": true } } döner; desteklenmeyen bir boyut, bağlam veya duruş birleşimi için 422.
DELETE /agents/twins/me/beliefs
Tüm inançları ve kanıtlarını siler. 200 OK ve { "data": { "erased": 12 } } döner; erased kaldırılan dayanakların sayısıdır. Kaydedilmiş anılar ve Agent'ların ayrı deneyimleri bu işlemle silinmez.
DELETE /agents/twins/{twinId}/memories/
Tanım
Önce seçilen anıyı inceleyin. Dönen anlamsal bilgi kullanıcı tarafından açıkça onaylandıktan sonra silin. Onay on dakika geçerlidir; kullanıcıya, çalışma alanına, İkize, anıya ve anının sürümüne bağlıdır. Anı değişmişse yeni bir önizleme gerekir. Onay kaydı olmadan doğrudan DELETE isteği reddedilir.
İstek
- Yol parametreleri: anı listesindeki
twinIdveid. - JSON gövdesi:
{ "previewToken": "<önizlemenin döndürdüğü onay kaydı>" }. - Önizleme, iptal ve onay için aynı çalışma alanını kullanın.
- İptal etmek için aynı gövdeyi
/agents/twins/{twinId}/memories/{id}/deletions/canceladresine POST ile gönderin; anı korunur.
Yanıt
- Önizleme:
data.success,data.previewToken,data.expiresAt,data.totalFoundve anlamsalcontent/typeiçerendata.willForget. Bulunamayan veya erişilemeyen anı için onay kaydı dönmez. - Onaylı silme:
200 OKve{ "data": { "success": true, "preview": false, "deletedCount": 1 } }. Aynı işlemi tekrarlamak aynı sayıyı vereplayed: truedeğerini döndürür. - Eksik, süresi dolmuş, iptal edilmiş, değişmiş veya yanlış kapsamlı onay:
400 Bad Request. Başka bir kullanıcının anısı açıklanmaz.
Kod örneği
# Salt okunur önizleme; willForget içeriğini kullanıcıya gösterin.
curl -X POST \
-H "Authorization: Bearer $TOKEN" \
-H "X-Workspace-Id: $WORKSPACE_ID" \
-H "Content-Type: application/json" \
-d '{}' \
https://api.chainabit.com/api/v1/agents/twins/$TWIN/memories/$MEMORY_ID/deletions/preview
# Yalnızca açık kullanıcı onayından sonra çalıştırın. PREVIEW_TOKEN önizlemeden gelir.
curl -X DELETE \
-H "Authorization: Bearer $TOKEN" \
-H "X-Workspace-Id: $WORKSPACE_ID" \
-H "Content-Type: application/json" \
-d "{\"previewToken\":\"$PREVIEW_TOKEN\"}" \
https://api.chainabit.com/api/v1/agents/twins/$TWIN/memories/$MEMORY_IDPOST /agents/twins/{twinId}/memories/{id}/flag
Tanım
Bir anıyı yanlış olarak işaretleyin. Sistem, ileriye dönük olarak hafızanın etkisini azaltır ve kısa bir pencere içinde başka işaretler biriktirirse onu mezar taşı haline getirebilir.
Rica etmek
- Yol parametreleri:
twinId,id(Hafızaları listele'inGET /agents/twins/{twinId}/memoriesyanıtından bellek kimliği)
Cevap
200 OK—{ "data": { "flaggedCount": 1 } }
Kod Örneği
curl -X POST \
-H "Authorization: Bearer $TOKEN" \
https://api.chainabit.com/api/v1/agents/twins/$TWIN/memories/$MEMORY_ID/flagPOST /workspaces/{workspaceId}/ai/twins/{twinId}/test
Tanım
İkize karşı örnek bir istem çalıştırın ve ikizin üreteceği şeyi döndürün. QA ve ürün ayarlama için kullanışlıdır. İkizlerin kayıtlı durumunu etkilemez.
Rica etmek
- Başlıklar:
Authorization: Bearer <token>,Content-Type: application/json - Gövde:
{ "prompt": "string", "context": { ... } }
Cevap
- '200 OK' — örnek yanıt ve ikizin yapacağı herhangi bir araç çağrısı.
Kod Örneği
curl -X POST \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{ "prompt": "How would you phrase a reminder for this user?" }' \
https://api.chainabit.com/api/v1/workspaces/$WORKSPACE/ai/twins/$TWIN/testNotlar
- Hız sınırları ve sayfalandırma standart platform başlıklarına göre geçerlidir.
- Auth, çalışma alanı kapsamındaki yetkilere sahip JWT'dir; yönetici uç noktaları ayrıca kuruluşta bir yönetici rolü gerektirir.
- Aracı yürütme kayıtları (çalıştırma geçmişi, onaylar, otomasyon kuralları) için aracı eylemleri referansına bakın.
- Beyin Simülatörü (beyin grafiği, hafıza grafiği, canlı aktivite, anlatım) için bkz. İkiz Beyin.