Это руководство проведет вас от получения API-ключа до работающего аудио с помощью аудио API GLM — GLM TTS для синтеза речи из текста, GLM ASR для транскрипции и GLM Voice Clone для синтеза речи с уникальным голосом. Все три — синхронные REST-конечные точки без необходимости опроса или вебхуков. Если вы создаете голосовые функции, конвейеры транскрипции или аудиоприложения на китайском языке, это самый быстрый путь к работающей интеграции.
Когда использовать этот быстрый старт
Используйте это руководство, если вам нужно:
- Преобразовать текст в речь с голосами, оптимизированными для китайского языка, через
POST /v3/glm-tts - Транскрибировать аудиофайлы
.wavили.mp3черезPOST /v3/glm-asr - Клонировать голос из короткого аудиосэмпла и синтезировать новую речь через
POST /v3/glm-tts-voice-clone
Все конечные точки доступны через API Novita AI по адресу https://api.novita.ai.
Предварительные требования
- Учетная запись Novita AI. Получите свой API-ключ в консоли Novita AI.
curlдля примеров в командной строке.- Python 3.8+ с установленным
requestsдля примеров на Python.
Установите ключ как переменную окружения:
export NOVITA_API_KEY="ваш_ключ_api_здесь"
Быстрый старт с GLM TTS
Конечная точка: POST https://api.novita.ai/v3/glm-tts
Преобразует текст длиной до 1024 символов в речь. Ответ — бинарное аудио — записывайте его напрямую в файл.
Параметры
| Параметр | Тип | По умолчанию | Примечания |
|---|---|---|---|
input |
string | — | Обязательный. До 1024 символов. |
voice |
string | tongtong |
ID системного голоса или имя клонированного голоса. |
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, только если в вашей учетной записи включено удаление водяных знаков. |
Системные голоса
| ID голоса | Отображаемое имя |
|---|---|
tongtong |
Tongtong (по умолчанию) |
chuichui |
Chuichui |
xiaochen |
Xiaochen |
jam |
Dongdong Zoo – Jam |
kazi |
Dongdong Zoo – Kazi |
douji |
Dongdong Zoo – Douji |
luodo |
Dongdong Zoo – 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"Тембр голоса: {data['voice']}")
print(f"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 / 1M символов |
| GLM ASR | $0.021 / 1M символов |
| GLM Voice Clone | $0.83 / 1M символов |
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?
Только если вы завершили удаление водяных знаков в настройках своей учетной записи. В противном случае флаг игнорируется.
