Chao Araç Kullanımı
Chao bir mesaja yanıt verirken yetkili Chainabit ve bağlayıcı yeteneklerini kullanabilir. İstemciler gözlemlenebilir sözleşmeyle bütünleşir: ilerleme oturum SSE akışından gelir, yazma işlemleri oturumun onay modunu izler ve her eylem kimliği doğrulanmış hesap ile çalışma alanı kapsamında kalır.
Gözlemlenebilir yaşam döngüsü
Araç kullanan bir tur şu herkese açık olayları üretebilir:
| Olay | Anlamı |
|---|---|
tool.started | Bir araç çağrısı başladı. |
tool.progress | Geçici durum iletisi için isteğe bağlı ilerleme. |
tool.approval_required | Çalıştırma kullanıcı kararını bekliyor. |
tool.approval_response | Onay kararı kaydedildi. |
tool.completed | Araç çağrısı başarıyla tamamlandı. |
tool.failed | Araç çağrısı başarısız oldu. Yük, dahili istisna yerine herkese açık hata içerir. |
tool.degraded | Yetenek belgelenmiş bir sınırlamayla tamamlandı. |
message.delta | Artımlı asistan metni. |
message.completed | Asistan iletisi tamamlandı. |
run.settlement.completed | Çalıştırmanın kullanım hesaplaşması tamamlandı. |
Olayları açık bir küme olarak değerlendirin. Bilinmeyen olay türlerini yok sayın, olay kimliğine göre yinelenenleri kaldırın ve Last-Event-ID ile yeniden bağlanın. Tam aktarım sözleşmesi için SSE Akışı sayfasına bakın.
tool.started
tool.completed
message.delta
message.completed
run.settlement.completedOturum modları ve yazma işlemleri
Oturum mode değeri önerilen yazma işlemlerinin nasıl ele alınacağını belirler:
| Mod | Yazma davranışı |
|---|---|
auto | İzin verilen yazmalar onay duraklaması olmadan çalışabilir. Politika yine onay isteyebilir veya aracı engelleyebilir. |
approval | Onaya bağlı yazmalar duraklar ve tool.approval_required üretir. |
plan | Önerilen yazmalar çalıştırılmak yerine plan adımları olarak toplanır. |
Modu PATCH /ai/sessions/:sessionId üzerinden güncelleyin. Mod bir yetenek vermez: kimlik doğrulama, yetki, çalışma alanı üyeliği ve araç politikası uygulanmaya devam eder.
Bağlayıcı kurtarma
Bir bağlayıcı çağrısı yapılandırılmış bir gereksinimle duraklayabilir:
| Gereksinim | İstemci eylemi |
|---|---|
needs_connection | Kullanıcıdan istenen hizmeti bağlamasını isteyin. |
needs_reconnect | Kullanıcıdan seçilen bağlantıyı onarmasını isteyin. |
needs_connector_selection | Kullanıcıdan yetkili bir bağlantı seçmesini isteyin. |
needs_agent_attachment | Yetkili kullanıcıdan bağlantıyı ajana eklemesini isteyin. |
API'nin döndürdüğü kimlikleri ve eylemleri kullanın. Dahili araç adları üretmeyin, sessizce başka bağlantı seçmeyin veya bir yazmanın başarılı olduğunu varsaymayın. Gereksinim çözüldükten sonra çalıştırmayla dönen devam sözleşmesini kullanın; yinelenen devam istekleri idempotenttir.
Onay kararları
Olay akışındaki çalıştırma ve araç çağrısı kimlikleriyle bekleyen çağrıyı onaylayın veya reddedin:
POST /api/v1/ai/runs/{runId}/tools/{toolCallId}/approve
POST /api/v1/ai/runs/{runId}/tools/{toolCallId}/reject
Authorization: Bearer YOUR_ACCESS_TOKEN
Content-Type: application/jsonOnay yalnızca bekleyen çağrı için geçerlidir. Başarılı onay yanıtı kararın kaydedildiği anlamına gelir; çalıştırma sonucu için akışı okumayı sürdürün.
Hata yönetimi
- Engellenmiş araç bir politika sonucudur; başka uç noktayla politikayı aşma işareti değildir.
- Başarısız araç tüm asistan çalıştırmasını zorunlu olarak başarısız yapmaz. Son çalıştırma veya ileti olayını bekleyin.
- Bağlantısı kesilen SSE istemcisi sunucu tarafındaki çalıştırmayı iptal etmez. Gözlemlemek için yeniden bağlanın veya açık iptal uç noktasını çağırın.
- Olay sözleşmesi herkese açık görüntü verisi olarak işaretlemedikçe ham araç girdisi veya çıktısı göstermeyin.