İlk isteğinizi gönderin
Bir ağ geçidi API anahtarı oluşturun, sağlayıcı kimlik bilgisi ekleyin ve Server-Sent Events akışını doğru okuyan bir sohbet isteği yapın.
- Sürüm: 0.4
- Rol: admin_user
- Tür: görev
Bir istemi CID222 üzerinden bir sağlayıcıya ulaştırın ve geri alın. Bir ağ geçidi API anahtarı oluşturur, CID222'ye harcayacağı bir sağlayıcı kimlik bilgisi verir ve yanıtını Server-Sent Events (SSE) akışı olarak okuduğunuz tek bir istek yaparsınız.
Neye ihtiyacım var?
- Lisans
- Any
- Rol
admin_user
Ön koşullar
- Cihaz ilk açılış kurulum sihirbazını tamamlamıştır ve kontrol panelini sunmaktadır.
- Kontrol paneline admin_user rolüne sahip bir kiracıyla giriş yapabilirsiniz.
- En az bir LLM sağlayıcısı (OpenAI, Azure OpenAI, Anthropic veya Google) için bir API anahtarınız vardır.
- İstemciniz ağ geçidine TCP 443 üzerinden, konteynere doğrudan çağrı yapıyorsanız TCP 3000 üzerinden erişebilir.
- Test edeceğiniz makinede curl 7.72 veya üzeri, ya da requests paketiyle Python 3.9 veya üzeri kuruludur.
CID222, POST /chat/completions çağrılarının hepsinde text/event-stream döndürür. Akışsız bir
mod yoktur; bu nedenle aşağıdaki örnekler gövdeyi JSON olarak ayrıştırmak yerine satır satır okur.
İlk çağrıyı yapın
Bir ağ geçidi API anahtarı oluşturun
Yönetim → API Anahtarları yolunu seçin, ardından API Anahtarı Oluştur düğmesini seçin. Anahtara bir ad ve isteğe bağlı olarak bir son kullanma tarihi verin.
Anahtar yalnızca bir kez, cid_key_ ve ardından 64 onaltılık karakter biçiminde gösterilir.
CID222 yalnızca özetini saklar ve anahtarı bir daha gösteremez.
Anahtarı ortamınıza kaydedin
Anahtarı, çağrıyı yapacağınız makinede bir ortam değişkenine kopyalayın.
echo "$CID222_API_KEY" komutu cid_key_ ile başlayan bir değer yazdırır.
Bir sağlayıcı kimlik bilgisi ekleyin
Yönetim → Kimlik Bilgileri yolunu seçin, ardından Kimlik Bilgisi Ekle düğmesini seçin. Sağlayıcıyı seçin, sağlayıcının kendi API anahtarını yapıştırın ve kaydedin.
Kimlik bilgisi listede sağlayıcısı ve kapsamıyla görünür. CID222 değeri şifreler ve hiçbir zaman geri döndürmez.
Kiracınızın kullanabileceği modelleri listeleyin
Ağ geçidi API anahtarıyla GET /models çağrısı yapın.
Yanıt bir JSON dizisidir. Yalnızca kiracınızın etkin kimlik bilgisine sahip olduğu sağlayıcıların modelleri görünür; boş bir dizi, önceki adımın etkili olmadığı anlamına gelir.
KKV içeren bir istem gönderin
POST /chat/completions adresine tek bir mesaj gönderin ve akışı okuyun. Model adı birden çok
sağlayıcı tarafından sunuluyorsa model ile birlikte provider alanını da gönderin — gpt-4o
hem openai hem de azure_openai tarafından kayıtlıdır.
-N seçeneği curl'ün çıktı arabelleğini kapatır. Bu seçenek olmadan olaylar yalnızca akış
kapandığında görünür.
Akış, üretim süresi boyunca duraklar, ardından yanıtın tamamını tek bir olayda iletir:
Warning
Yanıt, token başına farklar hâlinde değil tek bir olay olarak gelir ve olay adları CID222'ye
özgüdür. OpenAI akış biçimine göre yazılmış bir istemci burada choices, delta veya artımlı
metin bulamaz. Mevcut bir SDK'yı bu uç noktaya bağlamadan önce
Sohbet API'si sayfasını okuyun.
Doğrulama
- Son adımdaki komut
data: [DONE]ile biter ve ondan önceki satır boş olmayan bircontentile birlikte"id":"filtered-response"taşır. - Tespit ve Filtreleme → Tüm Tespitler yolunu seçin. İsteğe ait bir satır bulunur; e-posta adresini ve telefon numarasını, varlık türleri, güven puanları ve uygulanan eylemle gösterir.
- İsteği açıkça toksik veya jailbreak niteliğinde bir istemle yineleyin. Akış,
erroralanı ve"type":"content_rejected"taşıyan tek bir olayın ardındandata: [DONE]gönderir ve sağlayıcı hiç çağrılmaz.
Başarısız olursa
GET /models[]döndürüyor → kiracının hiçbir sağlayıcı için etkin kimlik bilgisi yok. Kimlik bilgisi adımını yineleyin ve kimlik bilgisinin kiracınıza ya da kiracınızın üye olduğu bir gruba atanmış olduğunu doğrulayın.- İstek 401 döndürüyor → başlık hatalı biçimlendirilmiş. Başlık bir
X-API-Keybaşlığı değil,Authorization: Bearer cid_key_<64 hex>olmalıdır. - İstek
LICENSE_EXPIREDile 402 döndürüyor → kurulu lisans geçersiz veya süresi dolmuş. Bir yönetici, Ayarlar → Lisans altından yenileme kurar. - İstek
ROLE_NOT_FOR_CHATile 403 döndürüyor → çağıran kiracı, sohbeti kullanmayanauditorrolüne sahip. - Bir dakika boyunca hiçbir şey gelmiyor, sonra her şey birden geliyor → bu, arızalı bir davranış değil, arabelleğe alınmış akışın tasarlandığı gibi çalışmasıdır.
Sonraki adımlar
- Kimlik doğrulama — API anahtarı yerine ne zaman JWT kullanacağınız ve hangi yüzeylerin API anahtarını reddettiği.
- Sohbet API'si — her istek alanı ve akışın taşıyabileceği her olay.
- Oturumlar API'si — konuşma geçmişini yeniden göndermek yerine CID222'ye tutturun.
Son güncelleme