مزامنة HTTP
قم بإنشاء الكلام بشكل متزامن مع Open API v1.
مزامنة HTTP
استخدم نقطة نهاية المزامنة TTS عندما يكون النص قصيرًا بدرجة كافية لتدفق الطلب والاستجابة ويمكن لمنتجك انتظار الصوت قبل المتابعة. بالنسبة للنصوص الطويلة أو العمل المجمع أو قوائم الانتظار المرئية للمستخدم، استخدم Async Jobs.
إذا كان العميل الخاص بك يتوقع شكل الطلب OpenAI /v1/audio/speech، فاستخدم نقطة النهاية OpenAI-Compatible TTS بدلاً من ذلك.
POST /api/open/v1/speech/tts
Authorization: Bearer FISHAUDIO_API_KEY
Content-Type: application/jsonطلب
{
"text": "Hello from Fish Audio.",
"voiceId": "00a1b221-6137-4b73-ad62-b0cbce134167",
"modelId": "fishaudio-s21pro-flash",
"format": "mp3"
}الحقول المشتركة:
| المجال | اكتب | ملاحظات |
|---|---|---|
text | سلسلة | النص للتجميع. قم بتطبيع المسافة البيضاء قبل إرسال نص كبير تم إنشاؤه. |
voiceId | سلسلة | المعرف الصوتي المفضل لعمليات التكامل الجديدة. |
modelId | سلسلة | معرّف نموذج محرك TTS، مثل fishaudio-s21pro-flash. |
format | سلسلة | حاوية الإخراج مثل mp3، اعتمادًا على الطرز الممكّنة. |
cache | منطقية | عندما يكون هذا صحيحًا، يمكن أن تعرض الاستجابة بيانات التعريف JSON وعنوان URL الصوتي. |
يجب أن تستخدم عمليات التكامل الجديدة voiceId من GET /api/open/v1/voices. لإجراء اختبار اتصال سريع، استخدم صوت النظام العام 00a1b221-6137-4b73-ad62-b0cbce134167.
لا تخلط الحقول من حزم SDK الأقدم أو متغيرات الموقع الأخرى في عقد API الحالي في الخارج.
curl https://fishaudio.org/api/open/v1/speech/tts \
-H "Authorization: Bearer FISHAUDIO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello from Fish Audio.","voiceId":"00a1b221-6137-4b73-ad62-b0cbce134167","modelId":"fishaudio-s21pro-flash","format":"mp3"}' \
--output speech.mp3إجابة
عندما تكون cache هي false أو تم حذفها، فإن الاستجابات الناجحة ترجع الصوت الثنائي. عندما تكون قيمة cache هي true، تُرجع الاستجابات الناجحة بيانات تعريف JSON:
{
"audio_url": "https://example.com/generated.mp3",
"credits_used": 12,
"quota_remaining": 987988
}يجب أن يتفرع عميلك على رأس Content-Type بدلاً من افتراض شكل استجابة واحد. قم بتخزين الصوت الذي تم إنشاؤه في وحدة التخزين الدائمة الخاصة بك إذا كان عنوان URL قصير الأجل.
الفواتير والائتمانات
تستهلك مزامنة TTS الاعتمادات بناءً على المحتوى الذي تم إنشاؤه وتكوين النموذج. نظرًا لأن نقطة النهاية تقوم بالإنشاء داخل طلب HTTP، فإن انتهاء مهلة العميل لا يعني دائمًا أن الخادم قد ألغى العمل. استخدم العجز في طبقة التطبيق الخاصة بك عند إعادة محاولة إجراءات المستخدم.
إذا كنت بحاجة إلى رصيد دقيق بعد الإنشاء، فاتصل بـ الملف الشخصي بعد اكتمال الطلب. بالنسبة للدفعات الكبيرة، فضل المهام غير المتزامنة بحيث يكون لكل مهمة معرف وحالة دائمة.
أخطاء
| الحالة | معنى | العمل |
|---|---|---|
400 | النص أو المعرف الصوتي أو التنسيق أو شكل الحمولة غير صالح | قم بإصلاح الطلب قبل إعادة المحاولة |
401 | مفتاح API مفقود أو غير صالح | تحديث بيانات الاعتماد من جانب الخادم |
402 | الاعتمادات أو الحصص غير كافية | أوقف الدفعة وأظهر حالة الفوترة |
429 | معدل محدود | أعد المحاولة مع التراجع |
500 | فشل الإنشاء بعد التحقق من الصحة | أعد المحاولة فقط إذا كان منتجك يمكنه تحمل الصوت المكرر |