Hop til hovedindhold

LongCat AudioDiT-integration

Libre WebUI indeholder et JSON-plugin og en lokal HTTP-adapter til de officielle kontrolpunkter meituan-longcat/LongCat-AudioDiT-1B og meituan-longcat/LongCat-AudioDiT-3.5B. Upstream-projektet leverer et Python-API i stedet for en HTTP-server, så adapteren i examples/longcat-audiodit-server leverer modelregistrering, JSON-tale og multipart-endpoints til stemmekloning.

AudioDiT returnerer komplette mono-WAV-filer på 24 kHz i stedet for et streamet lydsvar. Libre WebUI deler derfor længere svar ved sætnings- og frasegrænser, genererer et afgrænset antal batches på forhånd og planlægger dekodet lyd i rækkefølge til kontinuerlig afspilning.

Krav

En NVIDIA CUDA-GPU er det praktiske mål. Start med kontrolpunktet 1B; 3.5B kræver væsentligt mere VRAM og tager længere tid at indlæse. CPU kan bruges til forsøg, men giver sandsynligvis ikke interaktiv ydeevne.

Start adapteren

Klon den officielle implementering, og opret et isoleret miljø:

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"

Start derefter ét kontrolpunkt:

python examples/longcat-audiodit-server/server.py \
--model meituan-longcat/LongCat-AudioDiT-1B \
--device cuda:0

Serveren binder som standard til 127.0.0.1:8300. Den mangler bevidst godkendelse til lokal brug og må derfor ikke eksponeres direkte mod et upålideligt netværk. Brug en godkendt HTTPS-gateway, når Libre WebUI og adapteren findes på forskellige værter: genanvendelige stemmer sender den dekrypterede referenceoptagelse til endpointet for hver talebatch. Et CUDA Docker-eksempel og en helbredskontrol er dokumenteret i examples/longcat-audiodit-server/README.md.

Aktivér pluginet

Åbn Indstillinger → Plugins → LongCat AudioDiT, aktivér det, og behold de lokale standardendpoints, medmindre adapteren kører et andet sted. Modelregistreringen annoncerer kun kontrolpunktet i den serverproces. Genstart adapteren for at skifte mellem modellerne 1B og 3.5B.

Når en gateway som llama-swap ligger foran adapteren, konfigureres model-API-endpointet som adapterens rute GET /v1/models gennem gatewayen. Ret ikke modelregistreringen mod POST /v1/audio/speech: mislykket registrering falder tilbage til begge manifestkontrolpunkter og kan lade UI'et vælge et kontrolpunkt, som adapteren ikke har indlæst.

Vælg LongCat til chatafspilning under Indstillinger → Tekst-til-tale. Naturlig batchafspilning er aktiveret som standard. Udbyderens fælles grænse på 140 tegn holder tæt kinesisk tekst inden for 1B-kontrolpunktets kortere varighedsvindue; Libre WebUI opretter automatisk flere batches til længere svar.

Stemmekloning

Åbn Opret → Lyd, vælg en LongCat-talemodel, og aktivér Klon en referencestemme. Upload en ren optagelse, og angiv de nøjagtige ord. Et klip på 3–10 sekunder med én taler og lidt baggrundsstøj virker bedst; adapteren afviser klip over 15 sekunder eller 10 MiB.

Kloningen kan være en engangsgenerering, eller du kan vælge Gem som genanvendelig stemme, give stemmen et privat navn og udtrykkeligt bekræfte talerens samtykke til lagring. Gemte stemmer kan vælges for samme LongCat-model under Indstillinger → Tekst-til-tale. Oplæsning og automatisk afspilning genbruger derefter stemmen i Libre WebUI's sætningsbevidste batches.

Referencen bruger en del af AudioDiT's varighedsvindue. Hvis talen ikke passer i den resterende tid, returnerer adapteren en tydelig klientfejl i stedet for lydløst at klippe lyden. Forkort referencen eller teksten, og prøv igen.

Klon kun en stemme med talerens udtrykkelige tilladelse. Ved engangsgenerering beholder Libre WebUI referencen i hukommelsen, og adapteren fjerner sin midlertidige afkodningsfil efter anmodningen. Når en genanvendelig stemme gemmes, lagrer Libre WebUI originallyden og den nøjagtige transskription i en brugerafgrænset, AES-GCM-krypteret profil. Den genererede efterligning erstatter aldrig den kanoniske reference. AudioDiT eksponerer ingen bærbar talerindlejring, så originalparret dekrypteres og sendes til den konfigurerede udbyder for hver batch. Profilen kan slettes permanent. En gemt profil afvises sikkert, hvis godkendt routing eller endpoint ændres; opret den igen efter kontrol af destinationen.

Genereret tale gemmes separat i brugerens krypterede mediegalleri. Sletning af et galleriresultat sletter ikke den gemte stemmeprofil, og sletning af en profil fjerner ikke tidligere genereret lyd.

Udbyderen understøtter WAV-, FLAC-, MP3- og Ogg-referencer. Engelsk og mandarin er de bedst dokumenterede sprogmål. LongCat udgiver ingen navngivne standardstemmer, så almindelig syntese bruger modellens standard.

Inferenskontroller

Pluginet eksponerer afgrænsede avancerede variabler for ODE-trin, vejledningsstyrke, CFG/APG-metode og seed. Libre WebUI videresender kun de kontroller, der er angivet i manifestet, til tale- og kloningsendpoints. Standardværdierne matcher upstream-eksemplet og er et godt udgangspunkt.

AudioDiT eksponerer ingen kontrol af afspilningshastighed. For kompatibilitet med OpenAI's taleanmodning accepterer adapteren speed fra 0.25 til 4.0, men ignorerer dem bevidst. Modellen bestemmer den faktiske timing; en anden hastighed tidsstrækker ikke den genererede WAV-fil.

Se eksemplets README for direkte curl-anmodninger, Docker-kommandoer, præcise grænser og offlinevalidering.