Introdução geral
O Audio-Reasoner é um projeto de código aberto desenvolvido por uma equipe da Universidade de Tsinghua e hospedado no GitHub, com foco na criação de modelos de linguagem em grande escala que oferecem suporte ao raciocínio profundo em áudio. O modelo é baseado no Qwen2-Audio-Instruct, que permite o raciocínio complexo e a compreensão multimodal do conteúdo de áudio, introduzindo a tecnologia estruturada Chain-of-Thought (CoT). O projeto inclui o modelo Audio-Reasoner-7B e o próximo conjunto de dados CoTA (com 1,2 milhão de amostras de alta qualidade), que obteve uma melhoria de desempenho de 25,42% e 14,57% nos benchmarks MMAU-mini e AIR-Bench-Chat, respectivamente.Audio-Reasoner O Audio-Reasoner é uma ferramenta ideal para pesquisadores e desenvolvedores, pois oferece suporte ao processamento de som, música, voz e outros tipos de áudio, e é adequado para cenários de análise de áudio e compreensão de conteúdo.
Lista de funções
- Raciocínio profundo de áudioAnálise de áudio e geração de processos de raciocínio detalhados e resultados usando o pensamento em cadeia estruturado.
- Suporte a tarefas multimodaisCombinação de entradas de áudio e texto para tarefas de compreensão e raciocínio multimodais.
- Processamento múltiplo de áudioReconhecimento e análise de vários tipos de áudio, como voz, música, fala etc.
- Modelos pré-treinados de alto desempenhoFornece o modelo Audio-Reasoner-7B, que se destaca em vários testes de benchmark.
- Conjunto de dados CoTAContém 1,2 milhão de amostras para apoiar o treinamento de inferência estruturada e o aprimoramento da capacidade dos modelos.
- Código de raciocínio e demonstraçãoCódigo de inferência completo e exemplos de demonstração para teste e desenvolvimento do usuário
- programa de código aberto:: No futuro, o processo de síntese de dados e o código de treinamento serão abertos para facilitar a colaboração da comunidade.
Usando a Ajuda
Processo de instalação
A instalação do Audio-Reasoner requer a configuração do ambiente Python e o download dos pesos do modelo. A seguir estão as etapas detalhadas para garantir que os usuários possam concluir a compilação com êxito:
1. clonagem de um repositório do GitHub
Comece clonando o projeto Audio-Reasoner localmente. Abra um terminal e execute o seguinte comando:
git clone https://github.com/xzf-thu/Audio-Reasoner.git
cd Audio-Reasoner
Isso fará o download dos arquivos do projeto localmente e no diretório do projeto.
2. crie e ative um ambiente virtual
Para evitar conflitos de dependência, recomendamos que você crie um ambiente Python separado usando o Conda:
conda create -n Audio-Reasoner python=3.10
conda activate Audio-Reasoner
Esse comando cria e ativa um ambiente baseado no Python 3.10 chamado "Audio-Reasoner".
3. instalação de pacotes de dependência
O projeto oferece requirements.txt
que contém as dependências necessárias. As etapas de instalação são as seguintes:
pip install -r requirements.txt
pip install transformers==4.48.0
Atenção:transformers
A versão 4.48.0 precisa ser instalada para garantir um desempenho estável do modelo. Instale as outras dependências primeiro e, em seguida, especifique a opção transformers
para evitar conflitos.
4. download dos pesos do modelo
O modelo Audio-Reasoner-7B foi lançado no HuggingFace e precisa ser baixado e o caminho configurado manualmente:
- entrevistas Sonda de áudio HuggingFace-7B, faça o download do arquivo do modelo.
- Preencha o caminho do ponto de verificação baixado no código do
last_model_checkpoint
variáveis, por exemplo:
last_model_checkpoint = "/path/to/Audio-Reasoner-7B"
Como usar
Após a instalação, os usuários podem executar o Audio-Reasoner por meio de código para lidar com tarefas de áudio. Veja a seguir o guia de operação detalhado:
Início rápido: Execute o código de amostra
O projeto fornece um exemplo de início rápido para ajudar os usuários a testar a funcionalidade do modelo:
- Preparação de arquivos de áudio
Por padrão, ele usa o próprioassets/test.wav
ou você pode substituí-lo por seu próprio áudio no formato WAV. Certifique-se de que o caminho esteja correto. - Caminhos de áudio e problemas na edição de código
show (um ingresso)inference.py
Ou simplesmente use o código a seguir para definir o caminho do áudio e fazer perguntas:audiopath = "assets/test.wav" prompt = "这段音频的节奏感和拍子是怎样的?" audioreasoner_gen(audiopath, prompt)
- programa de corrida
Execute-o no terminal:conda activate Audio-Reasoner cd Audio-Reasoner python inference.py
O modelo produzirá resultados de inferência estruturados, incluindo
<THINK>
(planejar, descrever, raciocinar, resumir) e<RESPONSE>
(Resposta final).
Funcionalidade principal: raciocínio profundo de áudio
No coração do Audio-Reasoner está o raciocínio de áudio baseado no pensamento em cadeia, e é assim que ele funciona:
- Áudio de entrada e problemas
- fazer uso de
audioreasoner_gen
passando o caminho do áudio e uma pergunta específica. Exemplo:audiopath = "your_audio.wav" prompt = "音频中是否有鸟叫声?" audioreasoner_gen(audiopath, prompt)
- fazer uso de
- Exibir o resultado da inferência
O modelo retorna processos de raciocínio detalhados, por exemplo:<THINK> <PLANNING>: 检查音频中的声音特征,识别是否有鸟叫声。 <CAPTION>: 音频包含自然环境音,可能有风声和动物叫声。 <REASONING>: 分析高频声音特征,与鸟类叫声模式匹配。 <SUMMARY>: 音频中可能存在鸟叫声。 </THINK> <RESPONSE>: 是的,音频中有鸟叫声。
- Ajuste dos parâmetros de saída (opcional)
Se for necessária uma resposta mais longa ou mais flexível, ela pode ser modificadaRequestConfig
Parâmetros:request_config = RequestConfig(max_tokens=4096, temperature=0.5, stream=True)
Teste local de amostras predefinidas
O projeto tem áudio de teste integrado e perguntas para verificação rápida:
conda activate Audio-Reasoner
cd Audio-Reasoner
python inference.py
Após a execução, o terminal exibe uma descrição do assets/test.wav
Os resultados das análises são adequados para a primeira experiência.
Recurso: Compreensão multimodal
O Audio-Reasoner oferece suporte à análise conjunta de áudio e texto. Exemplo:
prompt = "这段音乐的情绪是否与‘悲伤’描述相符?"
audioreasoner_gen("sad_music.wav", prompt)
O modelo combinará recursos de áudio e semântica de texto para gerar resultados de inferência.
Precauções e perguntas frequentes
- formato de áudioFormato WAV recomendado, taxa de amostragem de 16 kHz, mono.
- lentoSe estiver lento, verifique se a GPU está ativada (requer PyTorch para CUDA).
- O modelo não está respondendoVerifique se o caminho do modelo está correto e se as dependências estão totalmente instaladas.
- Conflito de dependênciaSe a instalação falhar, tente criar um novo ambiente e instalar as dependências em ordem estrita.
Uso avançado
- Lógica de raciocínio personalizada:: Modificações
system
Palavras-chave para ajustar o estilo de raciocínio do modelo. - arquivo de lote:: Will
max_batch_size
Defina como um valor mais alto (por exemplo, 128) para oferecer suporte à inferência simultânea de vários áudios. - Combinado com o conjunto de dados CoTAOs conjuntos de dados futuros do CoTA podem ser usados para treinamento adicional ou ajuste fino do modelo quando forem lançados.