بداية سريعة لواجهة برمجة تطبيقات GLM TTS و ASR

بداية سريعة لواجهة برمجة تطبيقات GLM TTS و ASR

يأخذك هذا الدليل من مفتاح API إلى الصوت العامل مع واجهات GLM الصوتية — GLM TTS لتحويل النص إلى كلام، و GLM ASR للنسخ، و GLM Voice Clone لتوليد الصوت المخصص. جميعها نقاط نهاية REST متزامنة بدون خطوة استقصاء أو webhook. إذا كنت تبني ميزات صوتية أو مسارات نسخ أو تطبيقات صوتية باللغة الصينية، فهذا هو أسرع طريق لتكامل عملي.

متى تستخدم هذا الدليل السريع

استخدم هذا الدليل إذا كنت بحاجة إلى:

  • تحويل النص إلى كلام بأصوات محسنة للصينية عبر POST /v3/glm-tts
  • نسخ ملفات الصوت .wav أو .mp3 عبر POST /v3/glm-asr
  • استنساخ صوت من عينة صوتية قصيرة وتوليد كلام جديد عبر POST /v3/glm-tts-voice-clone

جميع نقاط النهاية متاحة عبر واجهة Novita AI API على https://api.novita.ai.

المتطلبات الأساسية

  1. حساب Novita AI. احصل على مفتاح API من لوحة تحكم Novita AI.
  2. curl لأمثلة الصدفة.
  3. Python 3.8+ مع تثبيت requests لأمثلة Python.

عيّن مفتاحك كمتغير بيئة:

export NOVITA_API_KEY="your_api_key_here"

بداية سريعة لـ GLM TTS

نقطة النهاية: POST https://api.novita.ai/v3/glm-tts

يحول النص حتى 1024 حرفًا إلى كلام. الاستجابة عبارة عن صوت ثنائي — اكتبه مباشرة إلى ملف.

المعلمات

المعامل النوع الافتراضي ملاحظات
input string مطلوب. حتى 1024 حرفًا.
voice string tongtong معرف الصوت النظامي أو اسم الصوت المستنسخ.
speed number 1.0 النطاق: 0.5–2.0
volume number 1.0 النطاق: 0–10
response_format string pcm wav أو pcm. WAV يتضمن رأس صوتي قياسي؛ PCM هو بايت خام بتردد 24000 هرتز.
watermark_enabled boolean true عيّن false فقط إذا كان حسابك يمتلك إزالة العلامة المائية مفعلة.

الأصوات النظامية

معرف الصوت الاسم المعروض
tongtong تونغتونغ (افتراضي)
chuichui تشويشوي
xiaochen شياوتشن
jam دونغدونغ زو – جام
kazi دونغدونغ زو – كازي
douji دونغدونغ زو – دوجي
luodo دونغدونغ زو – لودو

curl

curl -s -X POST https://api.novita.ai/v3/glm-tts \
  -H "Authorization: Bearer $NOVITA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": "你好,欢迎使用 Novita AI 语音合成接口。",
    "voice": "tongtong",
    "speed": 1.0,
    "volume": 5,
    "response_format": "wav"
  }' \
  --output output.wav

Python

import requests, os

response = requests.post(
    "https://api.novita.ai/v3/glm-tts",
    headers={
        "Authorization": f"Bearer {os.environ['NOVITA_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "input": "你好,欢迎使用 Novita AI 语音合成接口。",
        "voice": "tongtong",
        "speed": 1.0,
        "volume": 5,
        "response_format": "wav",
    },
)
response.raise_for_status()
with open("output.wav", "wb") as f:
    f.write(response.content)

الحدود: 1024 حرفًا لكل طلب. للنصوص الأطول، قسّم عند حدود الجمل وأدمج الصوت. معدل عينة التشغيل الموصى به: 24000 هرتز. أسماء الأصوات حساسة لحالة الأحرف.

بداية سريعة لـ GLM ASR

نقطة النهاية: POST https://api.novita.ai/v3/glm-asr

ينسخ الصوت .wav أو .mp3 باستخدام نموذج GLM-ASR-2512. يمكن تمرير الصوت كرابط URL أو سلسلة base64. القيود: ملف ≤ 25 ميجابايت، مدة ≤ 30 ثانية.

المعلمات

المعامل النوع ملاحظات
file string مطلوب. رابط URL أو صوت مشفر بـ base64. فقط .wav أو .mp3.
prompt string اختياري. سياق النص السابق، حتى 8000 حرف. استخدمه لاستمرارية النسخ المجزأ.
hotwords array اختياري. حتى 100 مصطلح خاص بالمجال لتحسين دقة التعرف.

curl (إدخال URL)

curl -s -X POST https://api.novita.ai/v3/glm-asr \
  -H "Authorization: Bearer $NOVITA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "file": "https://example.com/sample.wav",
    "hotwords": ["Novita", "GLM"]
  }'

Python (إدخال base64)

import requests, base64, os

with open("sample.wav", "rb") as f:
    audio_b64 = base64.b64encode(f.read()).decode()

response = requests.post(
    "https://api.novita.ai/v3/glm-asr",
    headers={
        "Authorization": f"Bearer {os.environ['NOVITA_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={"file": audio_b64, "hotwords": ["Novita", "GLM"]},
)
response.raise_for_status()
print(response.json()["text"])

الاستجابة

{ "text": "你好,欢迎使用 Novita AI 语音合成接口。" }

معالجة الصوت الأطول من 30 ثانية: قسّم إلى أجزاء ≤30 ثانية واربط الطلبات باستخدام حقل prompt لحمل سياق النص بين الأجزاء:

payload = {
    "file": next_chunk_b64,
    "prompt": previous_transcript,
}

بداية سريعة لـ GLM Voice Clone

نقطة النهاية: POST https://api.novita.ai/v3/glm-tts-voice-clone

يأخذ مقطع صوتي عينة ويولد كلامًا جديدًا بهذا الصوت. عيّن اسمًا للصوت المستنسخ؛ أعد استخدامه كمعامل voice في GLM TTS دون إعادة رفع العينة.

المعلمات

المعامل النوع ملاحظات
audio_url string مطلوب. رابط URL لصوت العينة. ≤ 10 ميجابايت، 3–30 ثانية موصى بها.
input string مطلوب. النص المراد توليده بالصوت المستنسخ.
voice_name string مطلوب. اسم فريد تعينه لهذا الصوت.
text string اختياري. نص الصوت العينة — يحسن جودة الاستنساخ.

curl

curl -s -X POST https://api.novita.ai/v3/glm-tts-voice-clone \
  -H "Authorization: Bearer $NOVITA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "audio_url": "https://example.com/voice-sample.wav",
    "input": "这是用克隆声音合成的语音示例。",
    "voice_name": "my-custom-voice",
    "text": "示例音频的文字内容"
  }'

Python

import requests, os

response = requests.post(
    "https://api.novita.ai/v3/glm-tts-voice-clone",
    headers={
        "Authorization": f"Bearer {os.environ['NOVITA_API_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "audio_url": "https://example.com/voice-sample.wav",
        "input": "这是用克隆声音合成的语音示例。",
        "voice_name": "my-custom-voice",
        "text": "示例音频的文字内容",
    },
)
response.raise_for_status()
data = response.json()
print(f"Voice timbre: {data['voice']}")
print(f"Audio URL: {data['audio_url']}")

الاستجابة

{
  "voice": "my-custom-voice-timbre-id",
  "audio_url": "https://..."
}

يمكن تمرير قيمة voice المعادة هنا مباشرة إلى معامل voice في GLM TTS لاستدعاءات التوليد المستقبلية.

نصائح: استخدم عينة نظيفة من 5–15 ثانية بدون ضوضاء خلفية. قدم نص text للعينة لتحسين محاذاة الصوتيات.

الأسعار وملاحظات الاستخدام

الأسعار اعتبارًا من يونيو 2026، من novita.ai/pricing:

API السعر
GLM TTS $0.28 / مليون حرف
GLM ASR $0.021 / مليون حرف
GLM Voice Clone $0.83 / مليون حرف

GLM TTS مناسب للتوليف الصوتي باللغة الصينية عالي الحجم حيث تكون التكلفة مهمة. إذا كنت بحاجة إلى TTS متعدد اللغات أوسع عبر أكثر من 30 لغة أو معالجة غير متزامنة للمحتوى الطويل، فإن MiniMax Speech هو البديل الذي يجب تقييمه.

الأسئلة الشائعة

ما اللغات التي يدعمها GLM TTS؟ محسن للصينية (الماندرين). يعالج الإدخال المختلط بين الصينية والإنجليزية. للتغطية متعددة اللغات الواسعة، استخدم MiniMax Speech بدلاً من ذلك.

هل يمكنني إعادة استخدام صوت مستنسخ مع GLM TTS؟ نعم. مرر voice_name الذي عينته في طلب Voice Clone كمعامل voice في GLM TTS. لا حاجة لإعادة رفع العينة.

لماذا يوجد حد 30 ثانية على GLM ASR؟ يعالج النموذج الصوت بشكل متزامن. قسّم التسجيلات الأطول عند حدود الجمل واربط الطلبات باستخدام حقل prompt لحمل السياق.

ما الفرق بين مخرجات pcm و wav؟ PCM هو بايت صوت خام بتردد 24000 هرتز بدون رأس. WAV يلف نفس الصوت في حاوية قياسية يمكن لمعظم المكتبات قراءتها مباشرة. استخدم WAV ما لم يكن مسار عملك يتطلب PCM خام.

هل يعمل تعيين watermark_enabled: false دائمًا؟ فقط إذا كنت قد أكملت إزالة العلامة المائية في إعدادات حسابك. وإلا يتم تجاهل العلامة.

مقالات موصى بها