Fish Audio: S2 Pro
Fish Audio S2 Pro создаёт выразительную многоязычную речь с указаниями на уровне слов и встроенными диалогами нескольких говорящих. Инструкции в квадратных скобках управляют подачей внутри сценария, образцы голосов определяют говорящих, а настройки вывода — характеристики аудиоматериала.
О модели
Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.
S2 Pro — модель преобразования текста в речь второго поколения Fish Audio для выразительного озвучивания, диалогов персонажей и разговорного голосового вывода. Она превращает письменный сценарий в аудио и поддерживает указания на естественном языке на уровне слова или фразы. Предыдущее поколение S1 использует подсказки в круглых скобках, а S2 Pro изначально использует квадратные и поддерживает нескольких говорящих в одном запросе синтеза. Производитель публикует веса S2 Pro и код дообучения для отдельных задач настройки; обычный речевой запрос использует выбранную модель, а не обучает новую.
Сначала напишите произносимый текст, затем разместите указание подачи непосредственно перед словом или фразой, на которые оно должно повлиять. Указания могут описывать шёпот, реакцию, паузу, эмоциональный переход или произвольно заданный стиль речи. Для короткого объяснения продукта сохраняйте понятную фактическую формулировку и расставляйте акценты только там, где слушатель должен заметить различие. Для реплики персонажа описывайте эмоциональный переход в момент его возникновения, а не задавайте всему отрывку одно неизменное настроение.
Теги в квадратных скобках — свободные описания, а не закрытый список. Примеры: [whispering], [sigh], [long pause] и фраза [speaking slowly, almost hesitant]. Теги могут стоять посреди предложения и влияют на последующую речь. После описательного тега нужен произносимый текст; отдельная инструкция может дать непредсказуемый вывод. Начинайте с одного-двух полезных указаний, прежде чем усложнять их: конкурирующие теги могут размыть задуманное исполнение. Разные образцы голосов могут реагировать на одинаковое указание с разной интенсивностью.
В описании выпуска S2 говорится примерно о 80 языках и приводятся примеры указаний подачи на том же языке, что и сценарий. Готовьте текст на языке, который должен прозвучать, и сохраняйте имена, единицы измерения и сокращения, требующие определённого произношения. Многоязычное озвучивание может сохранять нужный голос при смене языка сценария, но итоговое аудио всё равно нужно прослушивать, проверяя произношение и непрерывность. Синтез превращает предоставленное содержание в речь, а не решает, какую информацию должно сообщить приложение.
Для одного говорящего выберите сохранённый идентификатор голоса либо предоставьте эталонное аудио и соответствующую расшифровку. Производитель рекомендует чистый образец длиной 10–30 секунд для мгновенной настройки по голосу. Для диалога используйте метки говорящих, например <|speaker:0|> и <|speaker:1|>, с упорядоченным списком идентификаторов голосов или отдельными группами образцов. Числовая метка выбирает соответствующий голос; сохраняйте порядок по ходу разговора. Указания исполнения на естественном языке и выбор говорящего выполняют разные функции в сценарии.
Аудиовывод может быть MP3, WAV, необработанным PCM или Opus. MP3 по умолчанию использует 128 kbps, также доступны 64 и 192 kbps; Opus использует 48 kHz, а WAV и PCM поддерживают документированные варианты частоты дискретизации в виде 16-битного моно. Выбирайте формат для фактического назначения: сохранённый файл для озвучивания либо подходящие аудиофрагменты для воспроизведения. Производитель также описывает живую потоковую передачу текста, когда сценарий поступает постепенно. Связывайте сгенерированный результат с полным сценарием и выбранными голосами.
Скорость регулируется от 0,5 до 2,0; также есть настройки громкости и нормализации громкости вывода. Нормализация текста улучшает произношение английских и китайских чисел. Обработка использует части в диапазоне 100–300 и бюджет аудиотокенов на часть, поэтому эти настройки не следует считать фиксированным ограничением длины всего озвучивания. Настройка по предыдущей части может переносить голосовой контекст в следующий сегмент. Параметры сэмплирования, например temperature и top-p, влияют на вариативность; даже для реплики с заданной подачей нужно достаточно текста и контекста, чтобы передать желаемое звучание.
Полезное производственное задание разделяет озвучивание, диалог и указания подачи, а затем задаёт голос и формат итогового материала. При прослушивании проверяйте, нет ли пропущенных слов и повторов аудио, и оценивайте произношение чисел, смены говорящих и момент реакции. Дорабатывайте строку или образец голоса, вызвавшие несоответствие, вместо предположения, что дополнительные теги улучшат любой отрывок. S2 Pro остаётся отдельной моделью предыдущего поколения S2; S2.1 Pro — более поздняя редакция со своими улучшениями и особенностями действия настроек.
Ailoot Ultra · Речь POST /v1/audio/speech fish-audio/s2-pro
fish-audio/s2-proНачало
Fish Audio S2 Pro создаёт выразительную многоязычную речь с указаниями на уровне слов и встроенными диалогами нескольких говорящих. Инструкции в квадратных скобках управляют подачей внутри сценария, образцы голосов определяют говорящих, а настройки вывода — характеристики аудиоматериала.
- Допустимые входные данные
- Текст
- Результаты
- Аудио
Доступно в Ailoot · входные данные и методы
Ailoot Ultra · Речь POST /v1/audio/speech
- Входные данные
text- Результат
audio
| Поле | Тип | Требование | Значения и ограничения | По умолчанию |
|---|---|---|---|---|
Полеmodel | Типstring | ТребованиеОбязательно | Значения и ограничения fish-audio/s2-pro | По умолчанию— |
Полеinput | Типstring | ТребованиеОбязательно | Значения и ограничения Минимальная длина: 1 | По умолчанию— |
Полеvoice | Типstring | ТребованиеОбязательно | Значения и ограничения b347db033a6549378b48d00acb0d06cd Минимальная длина: 1 | По умолчанию— |
Полеresponse_format | Типstring | ТребованиеНеобязательно | Значения и ограничения mp3, pcm | По умолчаниюpcm |
Полеprovider | Типobject | ТребованиеНеобязательно | Значения и ограничения | По умолчанию— |
Параметры и жизненный цикл метода
| Параметр | Контракт |
|---|---|
Параметрcontent_type | Контрактapplication/json |
Параметрrequired | Контрактmodel, input, voice |
Параметрmaterial_types | Контрактtext |
Жизненный цикл: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Фактически возвращённый task_id или запись в медиатеке
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Тарифы
Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.
- Быстрый режим
- Не указано При выборе быстрого режима
- Режим flex
- Не указано При выборе режима flex
- Максимальная интенсивность рассуждений
- Не указано При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)
Ставки Ailoot
Цены по конфигурациям
Сопоставьте каждую плату с указанными условиями. Для каждого набора альтернативных конфигураций используйте одну ставку.
| Конфигурация | Шкала ставок | Расчётная единица | Плата |
|---|---|---|---|
| КонфигурацияБазовые тарифы на токены | Шкала ставокБазовая ставка | Расчётная единица— | Плата Вход · Входные токены — / 1K токенов Выход · Выходные токены — / 1K токенов Вход · Чтение кэша — / 1K токенов Вход · Запись в кэш — / 1K токенов Вход · Запись в кэш, 1 час — / 1K токенов |
| Конфигурациявходной байт UTF-8 | Шкала ставок— | Расчётная единицаза входной байт UTF-8 | Плата Вход · входной байт UTF-8 $0.00003 за входной байт UTF-8 |
Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →
Примеры запросов
Ailoot Ultra · Речь
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_INPUT_TEXT:?Set the actual documented input value}"
export AILOOT_INPUT_TEXT
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
request={'model': 'fish-audio/s2-pro', 'input': '${ACTUAL_INPUT_TEXT}', 'voice': 'b347db033a6549378b48d00acb0d06cd', 'response_format': 'mp3'}
request['input']=os.environ['AILOOT_INPUT_TEXT']
Path('request.json').write_text(json.dumps(request,ensure_ascii=False),encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/speech \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o response.bin
# Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.
Получить и сохранить результаты
Ailoot Ultra · Речь
Полные двоичные аудиоданные или исходный ответ audio_url, заголовки и каждый ресурс, принадлежащий Ailoot.
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Чтение другого содержимого
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \
-H "Authorization: Bearer $AILOOT_API_KEY" -o owned-assets.json
# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.
Сохраняйте все готовые результаты
Сохраняйте каждый полностью полученный ответ, файл и элемент содержимого.
Сохраняйте полный ответ и заголовки, все фактические результаты, исходные возвращённые идентификаторы и все поля использования. Восстанавливайте исходную операцию без повторной отправки запроса создания.
Если нужно проверить исходный ответ
Сохраните возвращённый X-Client-Request-ID для сверки. Читайте только фактически возвращённые значения task_id/asset_id или собственную медиатеку; никогда не составляйте URL задачи из ID операции и никогда не отправляйте запрос создания повторно.
Псевдонимы
Псевдонимы моделей
Ailoot Ultra fish-audio/s2-pro
Псевдонимы путей метода
Используйте пути методов, указанные выше.
Связанные ID для вызова
FAQ · Fish Audio: S2 Pro
- Какие входные данные и результаты доступны?
POST /v1/audio/speech·fish-audio/s2-pro:text→audio- Какие поля использует запрос?
POST /v1/audio/speech·fish-audio/s2-pro:model,input,voice,response_format,provider