Haas-ja-v1.0-GGUF

sakasegawa/Haas-ja-v1.0-GGUF

作者
sakasegawa
任务
语音识别
下载量
2,922
点赞数
5
趋势分
5
许可证
apache-2.0
收录时间
2026/11/7

license: apache-2.0 base_model:

  • third-intelligence/Haas-ja-v1.0 base_model_relation: quantized pipeline_tag: automatic-speech-recognition language:
  • ja tags:
  • gguf
  • ggml
  • speech.cpp
  • fastconformer

Haas-ja-v1.0 GGUF for speech.cpp

These files run only in speech.cpp 0.9.4 or later. Their layout is speech.cpp's own, so llama.cpp, LM Studio, Ollama and other programs that read GGUF cannot run them. speech.cpp 0.9.3 fetches the files of revision 3168c92 of this repository, which hold the same weights without the settings of the custom vocabulary.

It holds Third Intelligence's Haas-ja-v1.0, a FastConformer recognizer of Japanese whose TDT decoder's prediction network is made of Kimi Delta Attention layers, in one file, and decodes greedily as NeMo does by default. It runs on macOS with Metal, on Windows and Linux with Vulkan, and on the CPU alone, where the official code needs an NVIDIA GPU.

Use

Install speech.cpp (install), then:

speech asr haas-ja-v1.0 utterance.wav
speech asr haas-ja-v1.0 --timestamps utterance.wav
speech asr haas-ja-v1.0 --vad silero-vad meeting.wav
speech asr haas-ja-v1.0 --keywords $'Haas=ハース\nAIモデル' utterance.wav
speech serve haas-ja-v1.0 --open

haas-ja-v1.0 is the name speech.cpp gives this model; speech fetches the Q8_0 file from this repository the first time, and haas-ja-v1.0:q4_k or another type of the table below fetches that type instead. A path to a downloaded file works as well. A recording longer than about 30 seconds is best recognized by the regions where someone speaks, with --vad silero-vad. The options, the worker and the HTTP API are in speech.cpp's documentation: FastConformer, command line and server.

A custom vocabulary

--keywords gives Haas-ASR's custom vocabulary, the words or phrases to recognize more often, one a line, each its written form followed by = and its readings separated by commas where it is read otherwise (Third Intelligence=サードインテリジェンス). As Haas-ASR does, speech.cpp boosts the keywords' readings while decoding, keeps a change only where it holds a whole keyword (--keywords-guard=false keeps every change) and writes each keyword found in its written form. --keywords-alpha sets how strongly the keywords are boosted, 2 by default. The worker takes them as keywords, keywords_alpha and keywords_guard, and the HTTP server takes OpenAI's keywords, a string a keyword, in a transcription and a Realtime session. A recognition with keywords decodes twice and gives the text alone, without times, so it takes no --timestamps. speech.cpp 0.9.4 names the three options words, words_alpha and words_guard; 0.10.0 and later name them as above.

Files

FileContentsSizespeech.cpp fromSHA-256
Haas-616M-ja-v1.0-F16.ggufthe frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers and the token embedding in F161.23 GB (1,233,128,832 bytes)0.9.4f752e02f68c1dfff795900e40aa82e5302976fb5360080fcbd330d8b3c992cd8
Haas-616M-ja-v1.0-Q8_0.gguf (the file the name fetches)the frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers and the token embedding in Q8_00.66 GB (656,381,472 bytes)0.9.4cd5f60b2f1c411404b83fca4a65e3ce30a26d9e951b6a346529e65f22758afeb
Haas-616M-ja-v1.0-Q6_K.ggufthe frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers and the token embedding in Q6_K0.51 GB (508,898,848 bytes)0.9.419b33195b691abda293648a02702086754e1392728871d0dafcd3d50682f5dc3
Haas-616M-ja-v1.0-Q5_K.ggufthe frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers and the token embedding in Q5_K0.43 GB (428,021,280 bytes)0.9.4880ee2d3068b98834d88cff5794442a7f36f1808a6b365a5f6188a060b689658
Haas-616M-ja-v1.0-Q4_K.ggufthe frontend, the encoder, the prediction network, the joint and the vocabulary; the matrices of the linear layers and the token embedding in Q4_K0.35 GB (351,901,216 bytes)0.9.4d24d53f29b75214a933ff482b0de1217e0a800f4118cca39ad6cf03609a89d6f
Haas-616M-ja-v1.0-F16.gguf.jsonthe output of speech info --json for the F16 file1061 bytes4234aee7ceac3d59c8dc7cc788ce537c52117d6ab291cac9020004e32c44b4b1
Haas-616M-ja-v1.0-Q8_0.gguf.jsonthe output of speech info --json for the Q8_0 file1059 bytes58813b7e4d7c3ad66287d3aaedf329181b630f8dd4f7706445d0f196eef6ed97
Haas-616M-ja-v1.0-Q6_K.gguf.jsonthe output of speech info --json for the Q6_K file1059 bytesd08c7edadeb8da68eacd06b58b2b9d6fb196f6c4ffbafed441a6fb7276183480
Haas-616M-ja-v1.0-Q5_K.gguf.jsonthe output of speech info --json for the Q5_K file1059 bytesc2bd879806e48d10592484d84f3d5beba1883f3bcb31878ca52d24c5a0e776ea
Haas-616M-ja-v1.0-Q4_K.gguf.jsonthe output of speech info --json for the Q4_K file1059 bytesc5a8c040b78d05b58b7bb835bb2ca19649c7a191da17fa8ffefe02fe6b492964
LICENSEthe Apache License 2.0, Haas-ja-v1.0's11,358 bytescfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30

In the Q6_K, Q5_K and Q4_K files the prediction network's and the joint's matrices, whose rows of 64 and 640 values are not whole blocks of 256, are Q8_0. A request needs the GGUF file alone; the JSON file lets a program show the model or choose a file without downloading it.

Language

The model recognizes Japanese (ja). A request's language is only checked against it. A rare character its vocabulary lacks is written from its UTF-8 bytes, as its tokenizer does.

Accuracy

Every stage is checked against the official code, NeMo 2.7.3 with Haas-ASR, whose prediction network runs flash-linear-attention's kernels on a CUDA GPU, on 5 utterances of FLEURS' ja_jp test split, 6 to 26 s, two of them with characters written from their bytes: the CPU in F32 and F16 and Metal on an Apple M5 give its text, the frames and durations of its tokens and its segments on all five. With a custom vocabulary, 11 utterances of the same split with each of 5 vocabularies give NeMo's tokens without and with the words and Haas-ASR's text, on the CPU in F32, Metal in F32 and F16 on the M5, and Vulkan in F16 on an RTX 2080.

Each type, measured by speech-bench on 2026-10-31 on an Apple M5 with Metal and an RTX 2080 with Vulkan, on the 650 utterances of FLEURS' Japanese test split, which the upstream card says the model was not trained on, trimmed to the voice. The CER is the M5's, and the RTX 2080's is within 0.05 points of it. The memory is the peak memory footprint of speech for one request on the M5, whose GPU shares it, and the VRAM the video memory in use on the RTX 2080.

TypeSizeMemory, M5VRAM, RTX 2080CERCER, other spellings accepted
F161.23 GB1.29 GiB1.32 GiB4.40%2.87%
Q8_00.66 GB0.74 GiB0.78 GiB4.39%2.86%
Q6_K0.51 GB0.61 GiB0.65 GiB4.35%2.83%
Q5_K0.43 GB0.53 GiB0.58 GiB4.47%2.87%
Q4_K0.35 GB0.46 GiB0.50 GiB4.42%2.84%

On the same utterances on 2026-10-30, in Q8_0, parakeet-tdt_ctc-0.6b-ja gives 5.00% (2.82%) and reazonspeech-nemo-v2 7.95% (5.70%).

Speed

speech-bench on 2026-10-31, the same 650 utterances, Q8_0, one request at a time.

DeviceMedianp90RTFx
Apple M5, Metal0.042 s0.063 s205
RTX 2080, Vulkan0.097 s0.130 s98

On the RTX 2080 the F16 file, which decodes on the GPU by default, took about as long as the Q8_0 file, which decodes on the CPU: a median of 0.090 s and RTFx 98. decode_on_cpu sets where a request decodes.

Source

Converted by speech.cpp's reference/fastconformer/convert.py Haas-ja-v1.0, whose environment reference/fastconformer/haas pins Haas-ASR at e72638b6e352010c800ffd550af3a51b29e3dbb1 with NeMo 2.7.3 and flash-linear-attention 0.5.2, from third-intelligence/Haas-ja-v1.0 at 660728d39019e5e065046154beca44ac9a66a540, to F32, from which speech quantize --type <type> wrote each file. Every constant the C++ reads is in the file, from the checkpoint or, where it has none, from the official code. speech.cpp also runs NVIDIA's parakeet-tdt_ctc-0.6b-ja and parakeet-tdt-0.6b-v3 and reazon-research's reazonspeech-nemo-v2 through the same port.

Thanks

Thanks to Third Intelligence for releasing Haas-ja-v1.0 openly, and to ほーりーふぉっくす (@Holy_fox_LLM), who first ran it on Mac and Windows in a fork of speech.cpp.

License

Haas-ja-v1.0 is released by Third Intelligence under the Apache License 2.0 (LICENSE).

内容来源:Hugging Face 模型卡

在 Hugging Face 查看