Речь в текст
Конвертируйте аудиозаписи в точные текстовые транскрипции с использованием технологий распознавания речи
ForgetAPI предоставляет услуги преобразования речи в текст с использованием нескольких провайдеров, в основном OpenAI. Конкретный провайдер зависит от модели, которую вы выберете в своем API-запросе.
Конвертируйте аудиозаписи в точные текстовые транскрипции с помощью API Speech-to-Text от ForgetAPI, который использует мощные технологии от наших партнеров-провайдеров.
Обзор
Audio API от ForgetAPI предоставляет два основных эндпоинта распознавания речи на основе передовых технологий:
- Транскрипции: Преобразование речи в текст на языке оригинала
- Переводы: Преобразование речи в текст на английском языке, независимо от исходного языка
Доступные модели
Мы предлагаем ряд моделей с различными возможностями:
Модель | Описание | Применение |
---|---|---|
whisper-1 | Универсальная базовая модель | Общая транскрипция и перевод с полной поддержкой параметров |
gpt-4o-mini-transcribe | Модель с улучшенной точностью | Транскрипции более высокого качества с более быстрой обработкой |
gpt-4o-transcribe | Модель с премиальной точностью | Транскрипции наивысшего качества для профессионального использования |
Все модели поддерживают файлы размером до 25 МБ в следующих форматах: mp3, mp4, mpeg, mpga, m4a, wav и webm.
Начало работы
Базовая транскрипция
Для транскрибирования аудио на его оригинальном языке:
from openai import OpenAI
# Инициализация клиента
client = OpenAI(
api_key="your_api_key",
base_url="https://forgetapi.ru/v1/"
)
# Открытие аудио файла
audio_file = open("recording.mp3", "rb")
# Создание транскрипции
transcription = client.audio.transcriptions.create(
model="gpt-4o-transcribe",
file=audio_file
)
# Вывод результата
print(transcription.text)
Форматы ответов
По умолчанию API возвращает ответы в формате JSON. Для модели whisper-1 вы можете запросить различные форматы:
- json: Простой JSON с текстом (формат по умолчанию для всех моделей)
- text: Простой текстовый ответ (для простых сценариев интеграции)
- srt: Формат субтитров SubRip (для создания субтитров к видео)
- vtt: Формат субтитров WebVTT (для веб-видео с субтитрами)
- verbose_json: Подробный JSON с метаданными (для продвинутых приложений, требующих метаданных)
Для моделей gpt-4o в настоящее время поддерживаются только форматы json и text.
Пример с пользовательским форматом:
from openai import OpenAI
client = OpenAI(
api_key="your_api_key",
base_url="https://forgetapi.ru/v1/"
)
audio_file = open("podcast.mp3", "rb")
# Запрос формата SRT для субтитров к видео
transcription = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file,
response_format="srt"
)
# Сохранение результата в файл субтитров
with open("subtitles.srt", "w", encoding="utf-8") as f:
f.write(transcription.text)
Перевод на английский язык
Для прямого перевода аудио на иностранном языке в текст на английском языке:
from openai import OpenAI
client = OpenAI(
api_key="your_api_key",
base_url="https://forgetapi.ru/v1/"
)
audio_file = open("spanish_interview.mp3", "rb")
# Перевод на английский
translation = client.audio.translations.create(
model="whisper-1",
file=audio_file
)
print(translation.text)
Расширенные функции
Метки времени для слов
Для точной синхронизации с видео или аудио вы можете получить метки времени для каждого слова:
from openai import OpenAI
client = OpenAI(
api_key="your_api_key",
base_url="https://forgetapi.ru/v1/"
)
audio_file = open("interview.mp3", "rb")
transcript = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file,
response_format="verbose_json",
timestamp_granularities=["word"]
)
# Пример доступа к меткам времени слов
for word in transcript.words:
print(f"{word['word']}: {word['start']} до {word['end']}")
# Создание простой интерактивной транскрипции
html_transcript = ""
for word in transcript.words:
html_transcript += f"{word['word']} "
html_transcript += ""
with open("interactive_transcript.html", "w") as f:
f.write(html_transcript)
Практическое применение
Улучшение точности с помощью предметно-ориентированных подсказок
Для специализированного контента с техническими терминами или профессиональным жаргоном:
from openai import OpenAI
client = OpenAI(
api_key="your_api_key",
base_url="https://forgetapi.ru/v1/"
)
audio_file = open("medical_lecture.mp3", "rb")
# Подсказка с медицинской терминологией
medical_terms = """
Следующее аудио содержит медицинскую терминологию, включая:
инфаркт миокарда, атеросклероз, тромбоз, ишемия,
гипертония, гиперлипидемия, сахарный диабет, эндокринология,
электрокардиограмма (ЭКГ), эхокардиограмма, ангиография, стетоскоп,
сфигмоманометр, отоскоп, офтальмоскоп, лапароскоп.
"""
transcription = client.audio.transcriptions.create(
model="gpt-4o-transcribe",
file=audio_file,
response_format="text",
prompt=medical_terms
)
print(transcription.text)
Лучшие практики
Советы по качеству аудио
Для наилучших результатов:
- По возможности используйте микрофон высокого качества
- Уменьшите фоновый шум во время записи
- Расположите говорящих ближе к микрофону
- Используйте частоту дискретизации не менее 16 кГц
- Выбирайте несжатые форматы, такие как WAV, для исходных записей
Рекомендации по выбору модели
Сценарий использования | Рекомендуемая модель |
---|---|
Общая транскрипция | whisper-1 |
Создание субтитров | whisper-1 (с форматами srt или vtt) |
Контент с несколькими спикерами | gpt-4o-transcribe |
Технический/специализированный контент | gpt-4o-transcribe с предметной подсказкой |
Приложения реального времени | gpt-4o-mini-transcribe |
Потребности в низкой задержке | gpt-4o-mini-transcribe |
Потребности в наивысшей точности | gpt-4o-transcribe с постобработкой |