Bu modül, henüz Crowdin tarafından desteklenmeyen yapay zeka sağlayıcılarını bağlamanıza yardımcı olur. Bu tür bir uygulama oluşturmanızdan sonra, içeriğinizi bağlı YZ sağlayıcıyla önceden çevirebilecek ve YZ sağlayıcısını Düzenleyicide bir yardımcı olarak kullanabileceksiniz.
Bu modüle aşağıdaki kullanıcı kategorilerinden biri için erişim verebilirsiniz:
Crowdin için:
Crowdin Enterprise için:
{
"ai-provider": [
{
"key": "custom-ai",
"name": "Özel Open AI",
"logo": "/logo.png",
"url": "/ai-settings",
"chatCompletionsUrl": "/chat/completions",
"modelsUrl": "/models"
}
]
}
key | Tür: Zorunlu: evet Açıklama: Crowdin uygulaması içindeki modül tanımlayıcısı. |
name | Tür: Zorunlu: evet Açıklama: Modülün insan tarafından okunabilir adı. |
logo | Tür: Zorunlu: evet Açıklama: Crowdin kullanıcı arayüzünde görüntülenecek olan özel YZ’nin logosu için göreceli URL. |
url | Tür: Zorunlu: hayır Açıklama: Modül ayarları sayfasının göreceli URL (örn. YZ sağlayıcı kimlik bilgileri ayarları vb.). |
chatCompletionsUrl | Tür: Zorunlu: evet Açıklama: Sohbet tamamlamalarını getirmek için kullanılan göreceli URL. |
modelsUrl | Tür: Zorunlu: evet Açıklama: YZ sağlayıcısı tarafından desteklenen modellerin listesini almak için kullanılan göreceli URL. |
environments | Tür: İzin verilen değerler: Açıklama: Bir modülün yüklenebildiği ortamlar kümesi. |
Sistem, chatCompletionsUrl
kullanarak uygulamaya istemler gönderir, uygulama daha sonra istemleri işler ve sisteme bir yanıtla yanıt verir. YZ > Sağlayıcılar sayfasında bir Özel YZ sağlayıcısı yapılandırılırken Crowdin, modelsUrl
kullanarak uygulamaya bir istek gönderir. Özellikle Özel YZ sağlayıcı ayarları sayfasındaki ilgili giriş alanında mevcut modelleri görüntülemek için. Kullanıcı gerekli modelleri seçip kaydedebilir, bu da daha sonra içeriğin ön çevirisi ve chatCompletionsUrl
kullanılarak yardımcı ile iletişim için kullanılacaktır.
HTTP isteği:
İstek Başlıkları
chatCompletionsUrl
isteği yetkilendirme başlıklarını içerecektir (örn. Authorization: Bearer <App JWT token>
).
İstek yükü örneği:
{
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "İstem"
},
{
"type": "image",
"mimeType": "image/png",
"url": "https://picsum.photos/200/300"
}
]
},
{
"role": "assistant",
"content": "Yanıtla"
},
{
"role": "user",
"content": "Yeni istem"
}
]
}
Yanıt yükü örneği:
{
"choices": [
{
"message": {
"role": "assistant",
"content": "Yeni yanıt"
}
}
]
}
Yanıt yükü örneği:
{
"data": [
{
"id": "gpt-3.5-turbo",
"supportsJsonMode": true,
"supportsFunctionCalling": true,
"supportsVision": false,
"contextWindowLimit": 16385,
"outputLimit": 4096
},
{
"id": "gpt-4-turbo",
"supportsJsonMode": true,
"supportsFunctionCalling": true,
"supportsVision": true,
"contextWindowLimit": 128000,
"outputLimit": 4096
},
{
"id": "gpt-5-power",
"supportsJsonMode": true,
"supportsFunctionCalling": true,
"supportsVision": true,
"contextWindowLimit": 1000000,
"outputLimit": 8192
},
{
"id": "gpt-6-devil",
"supportsJsonMode": true,
"supportsFunctionCalling": true,
"supportsVision": true,
"contextWindowLimit": 1000000,
"outputLimit": 8192
},
{
"id": "gpt-7-magic",
"supportsJsonMode": true,
"supportsFunctionCalling": true,
"supportsVision": true,
"contextWindowLimit": 1000000,
"outputLimit": 8192
}
]
}
Varsayılan değerler:
false
false
false
4096
4096
Uygulamadan gelen yanıtların yapısı sunulan örneklere uygun olmalıdır, aksi takdirde Crowdin bunları geçersiz sayacaktır.