Integração com LongCat AudioDiT
O Libre WebUI inclui um plugin JSON e um adaptador HTTP local para os checkpoints oficiais meituan-longcat/LongCat-AudioDiT-1B e meituan-longcat/LongCat-AudioDiT-3.5B. Como o projeto original fornece uma API Python e não um servidor HTTP, o adaptador em examples/longcat-audiodit-server oferece descoberta de modelos, fala via JSON e endpoints multipart de clonagem.
O AudioDiT retorna arquivos WAV mono completos de 24 kHz, não uma resposta por streaming. Por isso, o Libre WebUI divide respostas longas em limites de frases e orações, gera antecipadamente um conjunto limitado de lotes e agenda o áudio decodificado na ordem para reprodução contínua.
Requisitos
Uma GPU NVIDIA CUDA é o alvo prático. Comece pelo checkpoint 1B; o 3.5B precisa de muito mais VRAM e demora mais para carregar. CPU serve para experimentos, mas dificilmente será interativa.
Iniciar o adaptador
Clone a implementação oficial e crie um ambiente isolado:
git clone https://github.com/meituan-longcat/LongCat-AudioDiT.git
python3 -m venv .venv
source .venv/bin/activate
pip install -r examples/longcat-audiodit-server/requirements.txt
export PYTHONPATH="$PWD/LongCat-AudioDiT"
Inicie um checkpoint:
python examples/longcat-audiodit-server/server.py \
--model meituan-longcat/LongCat-AudioDiT-1B \
--device cuda:0
O servidor escuta em 127.0.0.1:8300 por padrão. Ele é intencionalmente sem autenticação para uso local; não o exponha diretamente a redes não confiáveis. Use um gateway HTTPS autenticado se Libre WebUI e adaptador estiverem em hosts diferentes: vozes reutilizáveis enviam a gravação de referência descriptografada a esse endpoint em cada lote de fala. Um exemplo CUDA Docker e a verificação de saúde estão em examples/longcat-audiodit-server/README.md.
Ativar o plugin
Abra Configurações → Plugins → LongCat AudioDiT, ative-o e mantenha os endpoints locais padrão, salvo se o adaptador estiver em outro lugar. A descoberta anuncia somente o checkpoint residente no processo. Reinicie o adaptador para trocar entre 1B e 3.5B.
Quando um gateway como llama-swap estiver à frente, configure Models API Endpoint como a rota GET /v1/models do adaptador pelo gateway. Não aponte a descoberta para POST /v1/audio/speech: uma falha recorre aos dois checkpoints do manifesto e pode deixar a interface selecionar um modelo que não foi carregado.
Use Configurações → Conversão de texto em fala para selecionar LongCat na reprodução. A reprodução natural em lotes vem ativa. O limite compartilhado de 140 caracteres mantém texto chinês denso dentro da janela curta do 1B; respostas maiores são divididas automaticamente.
Clonagem de voz
Abra Imagine → Áudio, selecione um modelo LongCat e ative Clonar uma voz de referência. Envie uma gravação limpa e informe exatamente as palavras faladas. Um clipe de 3 a 10 segundos, com uma pessoa e pouco ruído, funciona melhor. O adaptador rejeita mais de 15 segundos ou 10 MiB.
A clonagem pode ser usada uma vez ou salva com Salvar como voz reutilizável, um nome privado e confirmação explícita de consentimento do falante. Vozes salvas ficam disponíveis para o mesmo modelo em Configurações → Conversão de texto em fala. Leitura e reprodução automática reutilizam a voz nos lotes conscientes de frases.
A referência ocupa parte da janela de duração do AudioDiT. Se a fala solicitada não couber no tempo restante, o adaptador retorna um erro claro em vez de cortar o áudio. Reduza a referência ou a passagem.
Clone somente com permissão explícita. Em uma geração única, o Libre WebUI mantém a referência na memória e o adaptador remove o arquivo temporário após a solicitação. Ao salvar, o áudio original e sua transcrição exata ficam em um perfil AES-GCM criptografado e limitado ao usuário. A imitação gerada nunca substitui a referência original. O AudioDiT não fornece embedding portátil do falante; o par original é descriptografado e enviado ao provedor em cada lote. É possível excluir o perfil permanentemente. Um perfil falha de forma segura se o roteamento aprovado ou endpoint mudar; recrie após verificar o novo destino.
A fala gerada é armazenada separadamente na galeria criptografada. Excluir um resultado não exclui o perfil, e excluir o perfil não remove áudios já gerados.
O provedor aceita referências WAV, FLAC, MP3 e Ogg. Inglês e mandarim são os idiomas mais fortes documentados. O LongCat não publica vozes predefinidas nomeadas, então a síntese comum usa o padrão do modelo.
Controles de inferência
O plugin oferece variáveis avançadas limitadas para etapas ODE, intensidade de orientação, método CFG/APG e seed. O Libre WebUI envia somente os controles declarados no manifesto aos endpoints de fala e clonagem. Os padrões correspondem ao exemplo original.
O AudioDiT não oferece controle de velocidade. Para compatibilidade com o formato OpenAI, o adaptador aceita speed de 0.25 a 4.0 e ignora intencionalmente. O modelo determina o ritmo real; escolher outra velocidade não altera a duração do WAV.
Consulte o README do exemplo para solicitações curl, comandos Docker, limites exatos e validação offline.