Kimi-Audio: обработка звука с открытым исходным кодом и базовая модель диалога
Общее введение
Kimi-Audio - это базовая модель аудио с открытым исходным кодом, разработанная Moonshot AI, которая ориентирована на понимание, генерацию и диалог аудио. Она поддерживает широкий спектр задач по обработке аудио, таких как распознавание речи, аудио вопросы и ответы и распознавание эмоций в речи. Модель была предварительно обучена на более чем 13 миллионах часов аудиоданных и, в сочетании с инновационной гибридной архитектурой, демонстрирует высокие результаты в различных аудиоэталонах. kimi-Audio предоставляет весовые коэффициенты модели, код вывода и набор инструментов для оценки, чтобы разработчики могли легко интегрировать ее в свои исследования и приложения. Он подходит для сценариев, требующих эффективной обработки аудио и диалоговых возможностей, имеет понятную документацию, поддержку развертывания Docker, активное сообщество и постоянные обновления.

Список функций
- Распознавание речи (ASR): преобразование аудио в текст и поддержка транскрипции речи на нескольких языках.
- Аудиовопросы и ответы (AQA): ответы на вопросы пользователей на основе аудиоконтента и понимания аудиоконтекста.
- Audio Captioning (AAC): генерирует точные титры или описания для аудио.
- Speech Emotion Recognition (SER): анализирует эмоциональные состояния в аудио, например, счастье или грусть.
- Классификация звуковых событий/сцен (SEC/ASC): определяет конкретные события или сцены в аудио, например звуки автомобиля или обстановки в помещении.
- Преобразование текста в речь (TTS): преобразование текста в естественную речь, поддержка нескольких тонов.
- Преобразование голоса (VC): изменение тембра или стиля голоса для создания индивидуального аудио.
- Сквозной голосовой диалог: поддерживает непрерывное голосовое взаимодействие, имитируя естественный диалог.
- Генерация потокового аудио: генерация аудио с низкой задержкой с помощью декодера потокового вещания.
- Набор инструментов для оценки: предоставляет стандартизированные инструменты оценки для облегчения сравнения производительности различных моделей.
Использование помощи
Процесс установки
Для развертывания Kimi-Audio рекомендуется использовать Docker, чтобы обеспечить согласованную среду и простоту установки. Ниже приведены подробные шаги по установке:
- склад клонов
Выполните следующую команду в терминале, чтобы получить код и подмодули Kimi-Audio:git clone https://github.com/MoonshotAI/Kimi-Audio.git cd Kimi-Audio git submodule update --init --recursive
- Установка зависимостей
Установите зависимости Python, рекомендуется среда Python 3.10:pip install -r requirements.txt
Обеспечьте установку
torch
ответить пениемsoundfile
Если у вас есть поддержка GPU, вам нужно установить CUDA-версию PyTorch. - Создание образа Docker
Соберите образ Docker в директории Kimi-Audio:docker build -t kimi-audio:v0.1 .
Или используйте официальный готовый образ:
docker pull moonshotai/kimi-audio:v0.1
- Запуск контейнеров
Запустите контейнер Docker и смонтируйте локальный рабочий каталог:docker run -it -v $(pwd):/app kimi-audio:v0.1 bash
- Скачать модельные веса
Kimi-Audio предлагает две основные модели:Kimi-Audio-7B
(базовая модель) иKimi-Audio-7B-Instruct
(Инструкции по тонкой настройке модели). Скачано с сайта "Обнимая лицо":moonshotai/Kimi-Audio-7B-Instruct
: Подходит для прямого использования.moonshotai/Kimi-Audio-7B
: Подходит для дальнейшей доработки.
Используйте Hugging Face CLI для входа в систему и загрузки:
huggingface-cli login
Модель автоматически загружается по указанному пути.
Использование
Основные функции Kimi-Audio реализованы через вызовы Python API. Ниже приводится подробная схема работы основных функций:
1. распознавание речи (ASR)
аудиофайл в текст. Пример кода:
import soundfile as sf
from kimia_infer.api.kimia import KimiAudio
# 加载模型
model_path = "moonshotai/Kimi-Audio-7B-Instruct"
model = KimiAudio(model_path=model_path, load_detokenizer=True)
# 设置采样参数
sampling_params = {
"audio_temperature": 0.8,
"audio_top_k": 10,
"text_temperature": 0.0,
"text_top_k": 5,
"audio_repetition_penalty": 1.0,
"audio_repetition_window_size": 64,
"text_repetition_penalty": 1.0,
"text_repetition_window_size": 16,
}
# 准备输入
asr_audio_path = "asr_example.wav" # 确保文件存在
messages_asr = [
{"role": "user", "message_type": "text", "content": "请转录以下音频:"},
{"role": "user", "message_type": "audio", "content": asr_audio_path}
]
# 生成文本输出
_, text_output = model.generate(messages_asr, **sampling_params, output_type="text")
print("转录结果:", text_output)
процедура::
- Подготовьте аудиофайл в формате WAV.
- устанавливать
messages_asr
Укажите задание как транскрипцию. - Запустите код и получите текстовый вывод.
2. Аудиовикторина (AQA)
Ответьте на вопросы, основываясь на аудиозаписи. Пример:
qa_audio_path = "qa_example.wav"
messages_qa = [
{"role": "user", "message_type": "text", "content": "音频中说了什么?"},
{"role": "user", "message_type": "audio", "content": qa_audio_path}
]
_, text_output = model.generate(messages_qa, **sampling_params, output_type="text")
print("回答:", text_output)
процедура::
- Загрузите аудиофайл с информацией.
- существовать
messages_qa
Задайте конкретные вопросы в - Получите текстовые ответы от модели.
3. преобразование текста в речь (TTS)
Преобразование текста в речь. Пример:
messages_tts = [
{"role": "user", "message_type": "text", "content": "请将以下文本转为语音:你好,欢迎使用 Kimi-Audio!"}
]
audio_output, _ = model.generate(messages_tts, **sampling_params, output_type="audio")
sf.write("output.wav", audio_output, samplerate=16000)
процедура::
- Введите текст для преобразования.
- устанавливать
output_type="audio"
Получение аудиоданных. - пользоваться
soundfile
Сохраните в формате WAV.
4. сквозной голосовой диалог
Поддерживает непрерывное голосовое взаимодействие. Пример:
messages_conversation = [
{"role": "user", "message_type": "audio", "content": "conversation_example.wav"},
{"role": "user", "message_type": "text", "content": "请回复一段语音,介绍你的功能。"}
]
audio_output, text_output = model.generate(messages_conversation, **sampling_params, output_type="both")
sf.write("response.wav", audio_output, samplerate=16000)
print("文本回复:", text_output)
процедура::
- Обеспечивает первоначальный голосовой ввод и текстовые команды.
- устанавливать
output_type="both"
Получайте голосовые и текстовые ответы. - Сохраните аудиовыход и просмотрите текст.
5. Использование набора инструментов для оценки
Любезно предоставлено Kimi-Audio Kimi-Audio-Evalkit
Для оценки производительности модели. Установка:
git clone https://github.com/MoonshotAI/Kimi-Audio-Evalkit.git
cd Kimi-Audio-Evalkit
pip install -r requirements.txt
Оперативная оценка:
bash run_audio.sh --model Kimi-Audio --dataset all
процедура::
- Загрузите набор данных в указанную директорию.
- настроить
config.yaml
Указывает путь к набору данных. - Запустите сценарий для создания отчета об оценке.
предостережение
- Убедитесь, что формат аудиофайла - WAV с частотой дискретизации 16 кГц.
- Среда GPU ускоряет вычисления, рекомендуется использовать CUDA 12.4.
- Загрузка моделей требует большого объема памяти, рекомендуется не менее 16 Гб графической памяти.
- Для развертывания не на платформе Docker требуется ручная установка системных зависимостей, см. документацию на GitHub.
сценарий применения
- Интеллектуальное обслуживание клиентов
Kimi-Audio можно использовать для создания систем обслуживания клиентов с голосовым взаимодействием. Она транскрибирует вопросы пользователей с помощью распознавания речи, комбинирует аудио вопросы и ответы и генерирует естественные голосовые ответы. Она подходит для платформ электронной коммерции или сценариев технической поддержки для повышения качества обслуживания пользователей. - Учебные пособия
При изучении языка Kimi-Audio транскрибирует произношение студентов, анализирует эмоции и интонацию, а также предоставляет обратную связь. Он также транскрибирует учебные тексты в речь для создания материалов для аудирования, что делает его подходящим для платформ онлайн-образования. - создание контента
Видеопродюсеры могут использовать Kimi-Audio для создания субтитров или дубляжа. Он может автоматически генерировать точные субтитры для видео или преобразовывать сценарии в речь с несколькими тонами для упрощения последующей обработки. - медицинская карта
Врачи могут вводить случаи голосом, Kimi-Audio транскрибирует их в текст и классифицирует эмоции, чтобы помочь диагностировать эмоциональное состояние пациента. Подходит для больничных информационных систем.
QA
- Какие языки поддерживает Kimi-Audio?
Kimi-Audio поддерживает распознавание и генерацию речи на нескольких языках, особенно на английском и китайском. Для поддержки других языков, пожалуйста, обратитесь к официальной документации. - Как оптимизировать скорость рассуждений?
Чтобы использовать ускорение GPU, установитеflash-attn
библиотека, наборtorch_dtype=torch.bfloat16
. Кроме того, корректировкиaudio_top_k
ответить пениемtext_top_k
Параметры обеспечивают баланс между скоростью и качеством. - Поддерживает ли модель диалог в режиме реального времени?
Да, потоковый декодер Kimi-Audio поддерживает генерацию звука с низкой задержкой для голосового взаимодействия в реальном времени. - Как добавить пользовательский набор данных для оценки?
существоватьKimi-Audio-Evalkit
Создайте JSONL-файл вindex
, иaudio_path
ответить пениемquestion
поле. Изменитьconfig.yaml
Просто укажите путь к набору данных и запустите сценарий оценки.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...