Model reference · open weights
LFM2.5-Audio-ONNX is an open-weight audio or speech model from LiquidAI. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.
Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.
What it is
| Released by | LiquidAI |
|---|---|
| Type | Audio & music |
| Task | Music / audio |
| Based on | LiquidAI/LFM2.5-Audio-1.5B |
| Released | 2026-01-26 |
| Popularity | 616 downloads / month |
| Licence | Commercial licence needed |
About
src="https://cdn-uploads.huggingface.co/production/uploads/61b8e2ba285851687028d395/2b08LKpev0DNEk6DlnWkY.png" alt="Liquid AI" style="width: 100%; max-width: 100%; height: auto; display: inline-block; margin-bottom: 0.5em; margin-top: 0.5em;" />
ONNX export of LFM2.5-Audio-1.5B for cross-platform inference.
LFM2.5-Audio is a multimodal model supporting three modes:
| Decoder | Vocoder | Size | Platform | Use Case |
|---|---|---|---|---|
| Q4 | Q4 | ~1.5GB | WebGPU, Server | Recommended for most uses |
| FP16 | FP16 | ~3.2GB | Server | Higher quality |
onnx/
├── decoder.onnx # LFM2 backbone (FP32)
├── decoder.onnx_data*
├── decoder_fp16.onnx # LFM2 backbone (FP16)
├── decoder_fp16.onnx_data*
├── decoder_q4.onnx # LFM2 backbone (Q4, recommended)
├── decoder_q4.onnx_data
├── audio_encoder.onnx # Conformer encoder for ASR (FP32)
├── audio_encoder.onnx_data
├── audio_encoder_fp16.onnx # Conformer encoder (FP16)
├── audio_encoder_fp16.onnx_data
├── audio_encoder_q4.onnx # Conformer encoder (Q4)
├── audio_encoder_q4.onnx_data
├── audio_embedding.onnx # Audio code embeddings (FP32)
├── audio_embedding_fp16.onnx # Audio code embeddings (FP16)
├── audio_embedding_q4.onnx # Audio code embeddings (Q4)
├── audio_detokenizer.onnx # Neural vocoder STFT (FP32)
├── audio_detokenizer.onnx_data
├── audio_detokenizer_fp16.onnx # Neural vocoder (FP16)
├── audio_detokenizer_fp16.onnx_data
├── audio_detokenizer_q4.onnx # Neural vocoder (Q4)
├── audio_detokenizer_q4.onnx_data
├── vocoder_depthformer.onnx # Audio codebook prediction (FP32)
├── vocoder_depthformer.onnx_data
├── vocoder_depthformer_fp16.onnx # Audio codebook prediction (FP16)
├── vocoder_depthformer_fp16.onnx_data
├── vocoder_depthformer_q4.onnx # Audio codebook prediction (Q4)
├── vocoder_depthformer_q4.onnx_data
├── embed_tokens.bin # Text embeddings (binary)
├── embed_tokens.json # Text embeddings metadata
├── audio_embedding.bin # Audio embeddings (binary, for direct lookup)
├── audio_embedding.json # Audio embeddings metadata
└── mel_config.json # Mel spectrogram configuration
* Large models (>2GB) split weights across multiple files:
decoder.onnx_data, decoder.onnx_data_1, decoder.onnx_data_2, etc.
All data files must be in the same directory as the .onnx file.
Use the onnx-export repository for inference.
git clone https://github.com/Liquid4All/onnx-export.git
cd onnx-export
uv sync
Transcribe audio to text:
uv run lfm2-audio-infer /path/to/LFM2.5-Audio-1.5B-ONNX \
--mode asr \
--audio input.wav \
--precision q4
Generate audio from text:
uv run lfm2-audio-infer /path/to/LFM2.5-Audio-1.5B-ONNX \
--mode tts \
--prompt "Hello, this is a test of text to speech synthesis." \
--output output.wav \
--precision q4
Options:
--system "Perform TTS. Use the UK female voice." - Custom system prompt--audio-temperature 0.8 - Audio sampling temperature--audio-top-k 64 - Top-k sampling for audioGenerate interleaved text and audio response from audio input:
uv run lfm2-audio-infer /path/to/LFM2.5-Audio-1.5B-ONNX \
--mode interleaved \
--audio input.wav \
--output output.wav \
--precision q4
Or from text prompt:
uv run lfm2-audio-infer /path/to/LFM2.5-Audio-1.5B-ONNX \
--mode interleaved \
--prompt "Respond with audio" \
--output output.wav \
--precision q4
uv run lfm2-audio-infer --help
| Option | Description |
|---|---|
--mode | asr, tts, or interleaved |
--precision | fp16, q4, or q8 (default: fp32) |
--audio | Input audio file (WAV) |
--output | Output audio file (WAV) |
--prompt | Text prompt |
--system | System prompt |
--max-tokens | Maximum tokens to generate |
--temperature | Text sampling temperature |
--audio-temperature | Audio sampling temperature |
--audio-top-k | Top-k sampling for audio |
--seed | Random seed for reproducibility |
npm install onnxruntime-web @huggingface/transformers
WebGPU is required for browser inference. To enable:
chrome://flags/#enable-unsafe-webgpu, enable, and restartchrome://gpu for "WebGPU" statusnavigator.gpu.requestAdapter() in DevTools consoleimport * as ort from "onnxruntime-web/webgpu";
import { AutoTokenizer } from "@huggingface/transformers";
// Check WebGPU availability
if (!navigator.gpu) {
throw new Error("WebGPU not available. Enable at chrome://flags/#enable-unsafe-webgpu");
}
ort.env.wasm.numThreads = 1;
const modelId = "LiquidAI/LFM2.5-Audio-1.5B-ONNX";
const modelBase = `https://huggingface.co/${modelId}/resolve/main`;
// Load tokenizer
const tokenizer = await AutoTokenizer.from_pretrained(modelId);
// Load ONNX sessions
async function loadSession(name, dataFiles = 1) {
const onnxPath = `${modelBase}/onnx/${name}.onnx`;
const externalData = [];
for (let i = 0; i < dataFiles; i++) {
const suffix = i === 0 ? "" : `_${i}`;
const fileName = `${name}.onnx_data${suffix}`;
From the published model card. Full card on the HuggingFace links in the sidebar.
Using it via the API
Once AxForge deploys lfm2-5-audio-onnx for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (lfm2-5-audio-onnx below is illustrative; you get the exact model name on deployment.)
$ curl -sS https://api.axforge.ai/v1/audio/transcriptions \ -H "Authorization: Bearer $AXFORGE_API_KEY" \ -F model="lfm2-5-audio-onnx" -F file=@audio.mp3
Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.