Introdução geral
O FireRedASR é um modelo de reconhecimento de fala desenvolvido e de código aberto pela equipe do Little Red Book FireRed, com foco no fornecimento de suporte multilíngue de alta precisão para soluções de reconhecimento automático de fala (ASR). Hospedado no GitHub, o projeto é voltado para desenvolvedores e pesquisadores, fornecendo design de nível industrial e oferecendo suporte a cenários como mandarim, dialetos chineses, inglês e reconhecimento de letras. O FireRedASR é dividido em duas versões principais: o FireRedASR-LLM busca extrema precisão e é adequado para necessidades profissionais; o FireRedASR-AED equilibra eficiência e desempenho e é adequado para aplicativos em tempo real. A partir de 2025, o modelo estabeleceu o recorde ideal no teste de mandarim chinês (CER 3.05%) e teve um bom desempenho em testes de vários cenários, o que é amplamente aplicável a assistentes inteligentes, geração de legendas de vídeo e outros campos.
FireRedASR: Instalador de um clique da WebUI: https://github.com/jianchang512/fireredasr-ui
Lista de funções
- Oferece suporte à conversão de voz em texto em mandarim, dialetos chineses e inglês, com precisão de reconhecimento líder do setor.
- Oferece a função de reconhecimento de letras de música, especialmente adequada para o processamento de conteúdo multimídia.
- Duas versões, FireRedASR-LLM e FireRedASR-AED, estão incluídas para atender às necessidades de inferência de alta precisão e alta eficiência, respectivamente.
- Modelos de código aberto e código de raciocínio para apoiar o desenvolvimento secundário da comunidade e aplicativos personalizados.
- Ele pode lidar com uma variedade de cenários de entrada de áudio, como vídeos curtos, transmissão ao vivo, entrada de voz, etc.
- Oferece suporte ao processamento de áudio em lote, adequado para tarefas de transcrição de dados em grande escala.
Usando a Ajuda
Processo de instalação
O FireRedASR requer determinadas configurações do ambiente de desenvolvimento para ser executado. A seguir estão as etapas detalhadas de instalação:
1.Clonagem do depósito do projeto
Abra um terminal e digite o seguinte comando para clonar o projeto FireRedASR localmente:
git clone https://github.com/FireRedTeam/FireRedASR.git
Quando terminar, vá para o catálogo de projetos:
cd FireRedASR
- Criando um ambiente Python
Recomenda-se criar um ambiente Python separado usando o Conda para garantir o isolamento da dependência. Execute o seguinte comando:
conda create --name fireredasr python=3.10
Ativar o ambiente:
conda activate fireredasr
- Instalação de dependências
O projeto oferece umrequisitos.txt
que contém todas as dependências necessárias. O comando de instalação é o seguinte:
pip install -r requirements.txt
Aguarde a conclusão da instalação e certifique-se de que a rede esteja funcionando bem. Talvez você precise de uma ferramenta científica da Internet para acelerar o download.
- Download do modelo pré-treinado
- FireRedASR-AED-LFaça o download do modelo pré-treinado diretamente do GitHub ou do Hugging Face e coloque-o no arquivo
pretrained_models/FireRedASR-AED-L
Pasta. - FireRedASR-LLM-LAlém de fazer o download do modelo, também é necessário fazer o download do modelo Qwen2-7B-Instruct no arquivo
modelos pré-treinados
e na pastaFireRedASR-LLM-L
para criar links flexíveis:
ln-s ... /Qwen2-7B-Instrução
- Verificar a instalação
Execute o seguinte comando para verificar se a instalação foi bem-sucedida:
python speech2text.py --help
Se uma mensagem de ajuda for exibida, o ambiente está configurado corretamente.
Como usar
O FireRedASR oferece duas maneiras de usar a linha de comando e a API Python. A seguir, uma descrição detalhada das principais funções do processo de operação.
operação de linha de comando
- Transcrição de arquivo único (modelo AED)
Use o FireRedASR-AED-L para processar arquivos de áudio (até 60 segundos):
python speech2text.py --wav_path examples/wav/BAC009S0764W0121.wav --asr_type "aed" --model_dir pretrained_models/FireRedASR-AED-L
--wav_path
Especifica o caminho do arquivo de áudio.--asr_type
Selecione o tipo de modelo, neste caso "aed".--model_dir
Especifica a pasta do modelo.
A saída é exibida no terminal, por exemplo, conteúdo de texto transcrito.
- Transcrição de arquivo único (modelo LLM)
Use o FireRedASR-LLM-L para processar áudio (até 30 segundos):
python speech2text.py --wav_path examples/wav/BAC009S0764W0121.wav --asr_type "llm" --model_dir pretrained_models/FireRedASR-LLM-L
O significado do parâmetro é o mesmo que acima, e o resultado é um texto transcrito.
Operações da API do Python
- Carregar modelo e transcrever
Chame o modelo FireRedASR em um script Python:
from fireredasr.models.fireredasr import FireRedAsr
# Inicializar o modelo AED
model = FireRedAsr.from_pretrained("aed", "pretrained_models/FireRedASR-AED-L")
batch_uttid = ["BAC009S0764W0121"]
batch_wav_path = ["examples/wav/BAC009S0764W0121.wav"]
resultados = model.transcribe(
batch_uttid, batch_wav_path, {"use_gpu".
{"use_gpu": 1, "beam_size": 3, "nbest": 1, "decode_max_len": 0}
)
print(results)
- from_pretrainedCarregar o modelo especificado.
- transcreverTranscrição: executa uma tarefa de transcrição e retorna o resultado como uma lista de textos.
- Ajuste de parâmetros para otimizar os resultados
- use_gpuAceleração da GPU: Defina como 1 para usar a aceleração da GPU e 0 para usar a CPU.
- tamanho do feixeLargura do feixe de pesquisa: quanto maior, maior a precisão, mas mais demorada, padrão 3.
- melhorNúmero de resultados: Retorna o número ideal de resultados, padrão 1.
Operação da função em destaque
- reconhecimento de letras
O FireRedASR-LLM é excelente no reconhecimento de letras de música. Insira o áudio da música (certifique-se de que não leve mais de 30 segundos) e execute:python speech2text.py --wav_path your_song.wav --asr_type "llm" --model_dir pretrained_models/FireRedASR-LLM-L
**Saída como texto da música com taxas de reconhecimento líderes do setor. **
- Suporte a vários idiomas
Para áudio de dialeto ou inglês, use os comandos ou APIs acima diretamente e o modelo será adaptado automaticamente. Por exemplo, processamento de áudio em inglês:model = FireRedAsr.from_pretrained("llm", "pretrained_models/FireRedASR-LLM-L") results = model.transcribe(["english_audio"],["path/to/english.wav"],{"use_gpu":1}) print(results)
advertência
- Limite de comprimento do áudioAED suportado por até 60 segundos, além do qual podem ocorrer problemas alucinatórios; LLM suportado por 30 segundos, com comportamento extralongo indefinido.
- arquivo de loteVerifique se os comprimentos de áudio de entrada são semelhantes para evitar a degradação do desempenho.
- Requisitos de hardwareRecomenda-se usar a GPU para executar modelos grandes, pois a CPU pode ser mais lenta.
Por meio das etapas acima, os usuários podem começar a usar o FireRedASR com facilidade e concluir todo o processo, desde a instalação até o uso, o que é aplicável a uma variedade de cenários de reconhecimento de fala.