Qwen3.5-0.8B-TW-IME

Qwen/Qwen3.5-0.8B ไปฅๅฐ็ฃๆญฃ้ซ”ไธญๆ–‡่ชžๆ–™ๅš LoRA ๆŒ็บŒ้ ่จ“็ทดๅพŒๅˆไฝต็š„็‰ˆๆœฌ๏ผŒ็”จ้€”ๆ˜ฏๆ›ฟๆณจ้Ÿณ่ผธๅ…ฅๆณ•็š„ๅ€™้ธๅฅๆ‰“ๅˆ†ๆ•ธ๏ผˆ่จˆ็ฎ— log P(ๅ€™้ธ๏ฝœไธŠๆ–‡)๏ผ‰๏ผŒไธๆ˜ฏ่Šๅคฉๆจกๅž‹ใ€‚

ๅ…ˆ่ฎ€้€™ๅนพ้ปž

  • ๅชๅœจใ€Œๆณจ้Ÿณ้ธๅญ—ใ€้€™ไธ€ๅ€‹ไปปๅ‹™ไธŠ่ฉ•ๆธฌ้Ž๏ผˆ่ฆ‹ใ€ˆ่ฉ•ๆธฌใ€‰๏ผ‰ใ€‚ๆฒ’ๆœ‰่ฉ•ๆธฌๅฐ่ฉฑใ€ๆŒ‡ไปค้ตๅพชใ€ๆŽจ็†ใ€็จ‹ๅผๆˆ–่ฆ–่ฆบ่ƒฝๅŠ›๏ผ›่จ“็ทดๅช็”จ็ด”ๆ–‡ๅญ—๏ผŒ้€™ไบ›่ƒฝๅŠ›ๅฏ่ƒฝๆฏ”ๅŽŸ็‰ˆๅทฎใ€‚
  • ่จ“็ทด่ณ‡ๆ–™ๅ…จ้ƒจๅฏไปฅ่‡ช็”ฑๅ†ๅˆฉ็”จ๏ผšCC0ใ€ๆ”ฟๅบœ่ณ‡ๆ–™้–‹ๆ”พๆŽˆๆฌŠๆขๆฌพ๏ผˆ่ˆ‡ CC BY 4.0 ็›ธๅฎน๏ผ‰ใ€ไธๅ—่‘—ไฝœๆฌŠไฟ่ญท็š„ๆณ•่ฆ๏ผŒไปฅๅŠ็”ฑ Apache-2.0 ๆจกๅž‹ๅœจๆœฌๆฉŸ็”Ÿๆˆ็š„ๅฅๅญใ€‚ๆฒ’ๆœ‰ไฝฟ็”จ็ถญๅŸบ็™พ็ง‘่ˆ‡ๆ•™่‚ฒ้ƒจ่พญๅ…ธใ€‚ไพ†ๆบใ€ๆŽˆๆฌŠ่ˆ‡้›œๆนŠๅ€ผ่ฆ‹ DATA.md ่ˆ‡ sources.jsonใ€‚
  • ็›ธๅฐๅŽŸ็‰ˆ๏ผšCommon Voice +1.8๏ฝž1.9ใ€็ซ‹ๆณ•้™ข +2.5ใ€ๆ–ฐ่ž็จฟ +1.2ใ€ๅฐ็ฃ็”จๅญ— +4.2 ๅ€‹็™พๅˆ†้ปž๏ผŒ็ถญๅŸบ โˆ’0.3๏ผˆๅ–ฎๆฌก่จ“็ทดใ€็„กไฟก่ณดๅ€้–“๏ผ‰ใ€‚ๆ•ด้ซ”็ด„็ญ‰ๆ–ผๆœชๅพฎ่ชฟ็š„ 2B ๅŽŸ็‰ˆใ€‚
  • ๆฏ”ๅŒไธ€ๅฐˆๆกˆ็š„ Qwen3.5-2B-TW-IME ไฝŽ็ด„ 1 ๅ€‹็™พๅˆ†้ปž๏ผ›ๅœจ้กฏ็คบๅกไธŠๅปถ้ฒๅทฎไธๅคš๏ผŒๅœจ CPU ไธŠ็ด„ๅฟซไธ€ๅ€๏ผˆๆฏๆฌก้ธๅญ—็ด„ 0.5 ็ง’ๅฐ 0.95 ็ง’๏ผ‰ใ€‚
  • ๆฒ’ๆœ‰้™„ mtp.*๏ผˆๅคš token ้ ๆธฌ๏ผ‰ๅผต้‡ใ€‚

็”จ้€”

LLaIME๏ผˆWindows 11 ๆณจ้Ÿณ่ผธๅ…ฅๆณ•๏ผ‰ๆŠŠๆ‰“ๅ‡บ็š„ๆณจ้Ÿณ็ถ“่ฉžๅบซ่ฝ‰ๆˆๅ‰ 16 ๅๅ€™้ธๅฅ๏ผŒๅ†็”ฑๆœฌๆฉŸ่ชž่จ€ๆจกๅž‹็ฎ—ๆฏไธ€ๅฅ็š„ log P๏ผŒๆŒ‘ๆœ€้€š้ †็š„ใ€‚ๅ€™้ธไธ€ๅฎš็ฌฆๅˆๆ‰€ๆ‰“็š„่ฎ€้Ÿณ๏ผŒๆจกๅž‹ๅช่ฒ ่ฒฌๆŽ’ๅบ๏ผŒไธๆœƒ่‡ช็”ฑ็”Ÿๆˆใ€‚่จ“็ทดๆ ผๅผ่ˆ‡่ผธๅ…ฅๆณ•้€็ตฆๆจกๅž‹็š„ๅฎŒๅ…จ็›ธๅŒ๏ผš

ไปฅไธ‹ๆ˜ฏไธ€ๆฎตๅฐ็ฃ็น้ซ”ไธญๆ–‡็š„ๆ–‡ๅญ—๏ผš\n{ไธŠๆ–‡}{ๅ€™้ธๅฅ}

่จ“็ทดๆ™‚ๆๅคฑๅช็ฎ—ๆญฃๆ–‡๏ผˆๆ็คบๅฅไธ็ฎ—๏ผ‰๏ผŒๆ‰€ไปฅๆจกๅž‹ๅญธๅˆฐ็š„ๆญฃๆ˜ฏ่ผธๅ…ฅๆณ•่ฆ็”จ็š„้‡ใ€‚

ไฝฟ็”จๆ–นๅผ

่จˆ็ฎ— log P(ๆ–‡ๅญ—๏ฝœๆ็คบ๏ผ‹ไธŠๆ–‡)๏ผˆๅ–ฎไฝ nat๏ผŒ่ถŠๅคง่ถŠ้€š้ †๏ผ‰๏ผš

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

path = "alpha34727/Qwen3.5-0.8B-TW-IME"
PROMPT = "ไปฅไธ‹ๆ˜ฏไธ€ๆฎตๅฐ็ฃ็น้ซ”ไธญๆ–‡็š„ๆ–‡ๅญ—๏ผš\n"
tok = AutoTokenizer.from_pretrained(path)
model = AutoModelForCausalLM.from_pretrained(path, dtype=torch.bfloat16).cuda().eval()

@torch.no_grad()
def log_prob(context: str, text: str) -> float:
    prefix = tok(PROMPT + context, add_special_tokens=False)["input_ids"]
    target = tok(text, add_special_tokens=False)["input_ids"]
    ids = torch.tensor([prefix + target]).cuda()
    logits = model(input_ids=ids).logits[0, len(prefix) - 1 : -1].float()
    logp = torch.log_softmax(logits, dim=-1)
    return logp[torch.arange(len(target)), torch.tensor(target)].sum().item()

print(log_prob("่ซ‹ๅ‡บ็คบๆ‚จ็š„", "่บซๅˆ†่ญ‰"), log_prob("่ซ‹ๅ‡บ็คบๆ‚จ็š„", "่บซไปฝ่ญ‰"))

ๆช”ๆกˆ

ๆช”ๆกˆ ่ชชๆ˜Ž
model.safetensors ่ˆ‡่จญๅฎšๆช” ๅˆไฝตๅพŒ็š„ bf16 ๆฌŠ้‡๏ผŒๆžถๆง‹ Qwen3_5ForConditionalGeneration๏ผŒ่ฆ–่ฆบ้ƒจๅˆ†่ˆ‡ๅŽŸ็‰ˆ็›ธๅŒ
Qwen3.5-0.8B-TW-IME-Q4_K_M.gguf llama.cpp ็”จ็š„ Q4_K_M ้‡ๅŒ–๏ผŒ่ผธๅ…ฅๆณ•ๅฏฆ้š›ไฝฟ็”จ็š„็‰ˆๆœฌ
DATA.mdใ€sources.json ๆฏๅ€‹่จ“็ทดไพ†ๆบ็š„ๅ‡บ่™•ใ€ๆŽˆๆฌŠใ€ไธ‹่ผ‰ๆ—ฅๆœŸ่ˆ‡ SHA-256
training/ ่ณ‡ๆ–™ไธ‹่ผ‰ใ€ๆธ…็†ใ€็”Ÿๆˆ่ˆ‡่จ“็ทด่…ณๆœฌ๏ผŒ็”Ÿๆˆ็š„ๅฅๅญ๏ผˆsynthetic_sentences.txt๏ผ‰่ˆ‡่จ“็ทด่จ˜้Œ„

GGUF ไปฅ llama.cpp ็š„ convert_hf_to_gguf.py --outtype bf16 ่ฝ‰ๆช”๏ผŒๅ†็”จ llama-quantize โ€ฆ Q4_K_M ้‡ๅŒ–ใ€‚

่จ“็ทด

ๅŸบๅบ•๏ผšQwen/Qwen3.5-0.8B๏ผˆๅพŒ่จ“็ทด็‰ˆ๏ผ‰ใ€‚่ชžๆ–™ใ€่™•็†่ˆ‡่จ“็ทด่จญๅฎš่ˆ‡ Qwen3.5-2B-TW-IME ๅฎŒๅ…จ็›ธๅŒ๏ผŒๅชๆ›ๅŸบๅบ•ๆจกๅž‹ใ€‚

่ชžๆ–™๏ผˆtraining/build_lm_corpus.py๏ผ‰ๅ…ฑ 188,098 ๆฎต๏ผˆ็ด„ 710 ่ฌๅญ—๏ผ‰๏ผŒ500 ๆฎต็•™ไฝœ้ฉ—่ญ‰๏ผŒ187,598 ๆฎต๏ผˆ4,688,097 token๏ผ‰็”จๆ–ผ่จ“็ทด๏ผš

ไพ†ๆบ ๅ…งๅฎน ๆŽˆๆฌŠ
Common Voice zh-TW ๅฅๅญ 3 ๅ€‹ๅฅๅญๆช” CC0
็ซ‹ๆณ•้™ขๅ…ฌๅ ฑ 400 ๅ ด้™ขๆœƒ่ˆ‡ๅง”ๅ“กๆœƒ็ด€้Œ„็š„็™ผ่จ€๏ผˆๅŽปๆމ็™ผ่จ€ไบบ่ˆ‡ๆ‹ฌ่™Ÿ่จป่จ˜๏ผ‰๏ผŒ13.6 ่ฌๅฅ ๆ”ฟๅบœ่ณ‡ๆ–™้–‹ๆ”พๆŽˆๆฌŠๆขๆฌพ๏ผ็ฌฌ1็‰ˆ
่กŒๆ”ฟ้™ขๅณๆ™‚ๆ–ฐ่žใ€้›ฒๅ˜‰ๅ—ๅ€่ฏๅˆๆœๅ‹™ไธญๅฟƒ็„ฆ้ปžๆ–ฐ่ž ๅ„ 500 ๅ‰‡๏ผŒ1.2 ่ฌๅฅ ๆ”ฟๅบœ่ณ‡ๆ–™้–‹ๆ”พๆŽˆๆฌŠๆขๆฌพ๏ผ็ฌฌ1็‰ˆ
ๅ…จๅœ‹ๆณ•่ฆ่ณ‡ๆ–™ๅบซ ็พ่กŒๆณ•่ฆๆขๆ–‡๏ผŒๆŠฝๆจฃ 5,000 ๅฅ ไธๅ—่‘—ไฝœๆฌŠไฟ่ญท๏ผˆ่‘—ไฝœๆฌŠๆณ•็ฌฌ 9 ๆข๏ผ‰
ๆœฌๆฉŸ็”Ÿๆˆ็š„ๆ—ฅๅธธๅฃ่ชžๅฅ Breeze-7B-Instruct-v1_0๏ผˆApache-2.0๏ผ‰ไพใ€Œไธป้กŒ ร— ๆƒ…ๅขƒใ€็”Ÿๆˆ 3 ่ฌๅฅ๏ผŒๆฟพๆމ็ฐก้ซ”ๅญ—ใ€ๅคง้™ธ็”จ่ฉžใ€้‡่ค‡ๅฅ่ˆ‡่ฉ•ๆธฌๅฅ ้šจๆœฌๆจกๅž‹ๅ…ฌ้–‹

่ฉ•ๆธฌๅฅ่ˆ‡ๅ…ถๆ‰€ๅœจ็š„ๆ•ดๅฅๅ…จ้ƒจๆŽ’้™ค๏ผ›ๆผขๅญ—ๆฏ”ไพ‹ไฝŽๆ–ผ 60% ็š„ๆ–‡ๅญ—ไธŸๆฃ„๏ผ›ๆจฃๆฟๅฅๆฏ็จฎๆœ€ๅคš 2 ๅฅ๏ผ›ๆด—็‰Œ๏ผˆseed 20261015๏ผ‰ใ€‚

ๆ–นๆณ•๏ผˆtraining/lora_qwen.py๏ผ‰๏ผš

้ …็›ฎ ่จญๅฎš
LoRA r = 16ใ€alpha = 32ใ€dropout = 0.05๏ผ›่ชž่จ€ๆจกๅž‹็š„ๆ‰€ๆœ‰็ทšๆ€งๅฑค๏ผˆๆณจๆ„ๅŠ›ใ€็ทšๆ€งๆณจๆ„ๅŠ›ใ€MLP๏ผ‰๏ผŒๅฏ่จ“็ทดๅƒๆ•ธ 10,822,656๏ผˆ1.25%๏ผ‰ใ€‚่ฆ–่ฆบๅก”่ˆ‡ LM head ไธๅ‹•
่ผธๅ…ฅ ๆ็คบๅฅ๏ผ‹ๆญฃๆ–‡๏ผŒๆœ€ๅคš 256 token๏ผ›ๆๅคฑๅช็ฎ—ๆญฃๆ–‡
ๆœ€ไฝณๅŒ– AdamWใ€lr 1e-4ใ€5% ๆš–ๆฉŸๅพŒ้ค˜ๅผฆ่กฐๆธ›ใ€ๆขฏๅบฆ่ฃๅ‰ช 1.0
ๆ‰นๆฌก ็ญ‰ๆ•ˆๆ‰นๆฌก 16ใ€1 ่ผชๅ…ฑ 11,725 ๆญฅ
็กฌ้ซ”่ˆ‡ๆ™‚้–“ ไธ€ๅผต RTX 5060 Ti 16 GB๏ผŒ็ด„ 3 ๅฐๆ™‚๏ผŒ้กฏๅญ˜ๅณฐๅ€ผ 7.6 GB
็จฎๅญ 20261015๏ผŒๅช่จ“็ทดไธ€ๆฌก

้ฉ—่ญ‰ๆๅคฑ๏ผˆ500 ๆฎต็•™ๅ‡บ็š„่ชžๆ–™๏ผŒๆฏ token ็š„ nat๏ผ‰๏ผš5.063 โ†’ 3.869ใ€‚

่ฉ•ๆธฌ

่ผธๅ…ฅๆณ•็š„็œŸๅฏฆๆต็จ‹๏ผšๆณจ้Ÿณ โ†’ ่ฉžๅบซ๏ผˆMcBopomofo๏ผ‹ๆ–ฐ้…ท้Ÿณ๏ผ‰ๅ‰ 16 ๅๅ€™้ธๆ•ดๅฅ โ†’ ่ชž่จ€ๆจกๅž‹้‡ๆŽ’ใ€‚

ๆททๅˆๅˆ†ๆ•ธ ๏ผ LM ๅˆ†ๆ•ธ ๏ผ‹ 0.75 ร— ่ฉžๅบซๅˆ†ๆ•ธ โˆ’ 4 ร— ้žๅฐ็ฃๆจ™ๆบ–ๅฏซๆณ•็š„ๅญ—่ฉžๆ•ธ

ๆ•ดๅฅๆญฃ็ขบ็އ๏ผŒๅŒ…ๅซ่ฉžๅบซๅ‰ 16 ๅๆฒ’ๆœ‰ๆญฃ่งฃ็š„ๅฅๅญ๏ผˆไธ€ๅฎš็ฎ—้Œฏ๏ผ‰ใ€‚ๅ…จ้ƒจ็”จ Q4_K_Mใ€ๅŒไธ€ๅฅ—่ฝ‰ๆช”ๆต็จ‹ใ€‚

่ฉ•ๆธฌ้›† ๅ…งๅฎน
Common Voice dev๏ผˆ1,000๏ผ‰๏ผtest๏ผˆ2,000๏ผ‰ Common Voice zh-TW ๅฅๅญๅˆ‡ๆˆ 4โ€“24 ๅญ—็š„็‰‡ๆฎต๏ผ›ๆททๅˆๆฌŠ้‡ๅœจ dev ไธŠ้ธๅฎš
็ซ‹ๆณ•้™ข๏ผˆ1,000๏ผ‰ ๅพž็ซ‹ๆณ•้™ข็™ผ่จ€็•™ๅ‡บ็š„็‰‡ๆฎต๏ผŒไธ้€ฒ่จ“็ทด
ๆ–ฐ่ž็จฟ๏ผˆ1,000๏ผ‰ ๅพž่กŒๆ”ฟ้™ขๆ–ฐ่ž็จฟ็•™ๅ‡บ็š„็‰‡ๆฎต๏ผŒไธ้€ฒ่จ“็ทด
็ถญๅŸบ๏ผˆ2,000๏ผ‰ ็ถญๅŸบ็™พ็ง‘ๅฅๅญ๏ผŒๅช็”จไพ†ๅ’Œ่ˆŠ็‰ˆๆฏ”่ผƒ๏ผŒไธ้šจๆจกๅž‹ๅ…ฌ้–‹
ๅฐ็ฃ็”จๅญ—๏ผˆ24๏ผ‰ ๅŒ้Ÿณไฝ†ๅ…ฉๅฒธๅฏซๆณ•ไธๅŒ็š„ๅฅๅญ๏ผ›็”จๅญ—่กจๆ˜ฏ็œ‹้Ž้Œฏ่ชคๅพŒๆ‰ๅฏซ็š„๏ผŒๅช็•ถๅƒ่€ƒ
้ธๅญ— CV dev CV test ็ซ‹ๆณ•้™ข ๆ–ฐ่ž็จฟ ็ถญๅŸบ ๅฐ็ฃ็”จๅญ—
ๅช็”จ่ฉžๅบซ 71.4% 71.2% 69.3% 56.7% 52.4% 83.3%
่ฉžๅบซๅ‰ 16 ๅๅซๆญฃ่งฃ๏ผˆไธŠ้™๏ผ‰ 93.8% 92.9% 92.7% 82.0% 77.0% 95.8%
Qwen3.5-0.8B ๅŽŸ็‰ˆ๏ผˆๅŒๆต็จ‹่ฝ‰ๆช”ใ€้‡ๅŒ–๏ผ‰ 85.2% 83.2% 85.3% 76.8% 72.0% 87.5%
ๆœฌๆจกๅž‹ 87.1% 85.0% 87.8% 78.0% 71.7% 91.7%
ใ€”ๅฐ็…งใ€•Qwen3.5-2B ๅŽŸ็‰ˆ 87.5% 85.5% 86.8% 77.7% 73.7% 91.7%
ใ€”ๅฐ็…งใ€•Qwen3.5-2B-TW-IME 87.7% 86.1% 89.3% 78.5% 73.0% 95.8%

ๅช็œ‹่ชž่จ€ๆจกๅž‹๏ผˆ่ฉžๅบซๆฌŠ้‡ 0๏ผŒไปๆœ‰ๅฐ็ฃ็”จๅญ—ๆ‰ฃๅˆ†๏ผ‰๏ผšๅŽŸ็‰ˆ โ†’ ๆœฌๆจกๅž‹ dev 82.9 โ†’ 86.2%ใ€test 82.4 โ†’ 84.0%ใ€็ซ‹ๆณ•้™ข 84.4 โ†’ 87.6%ใ€ๆ–ฐ่ž็จฟ 75.9 โ†’ 78.4%ใ€็ถญๅŸบ 71.8 โ†’ 71.3%ใ€ๅฐ็ฃ็”จๅญ— 91.7 โ†’ 91.7%ใ€‚

ๅปถ้ฒ๏ผˆๆฏๆฌก้ธๅญ—ใ€16 ๅ€‹ๅ€™้ธ็š„ไธญไฝๆ•ธ๏ผ‰๏ผšRTX 5060 Ti ไธŠ็ด„ 48 ms๏ผˆCommon Voice ็‰‡ๆฎต๏ผ‰ๅˆฐ 75 ms๏ผˆๆ–ฐ่ž็จฟ๏ผ‰๏ผ›i5-12400 CPU ไธŠ็ด„ 490 ms๏ผˆCommon Voice dev ๅ‰ 150 ๅฅ๏ผ›2B ็‚บ 950 ms๏ผ‰ใ€‚

้™ๅˆถ

  • ๅช่จ“็ทดไธ€ๆฌกใ€ๆฒ’ๆœ‰้‡่ค‡็จฎๅญ๏ผŒๆฒ’ๆœ‰ไฟก่ณดๅ€้–“๏ผ›1,000 ๅฅ็š„้›†ๅˆ 1 ้ปž็ด„็ญ‰ๆ–ผ 10 ๅฅใ€‚
  • ็ซ‹ๆณ•้™ข่ˆ‡ๆ–ฐ่ž็จฟๆธฌ่ฉฆ้›†ๅ’Œ่จ“็ทด่ชžๆ–™ๅŒไพ†ๆบ๏ผˆไธๅŒๅฅๅญ๏ผ‰๏ผŒ้€™ๅ…ฉ็ต„็š„้€ฒๆญฅๅฏ่ƒฝ้ซ˜ไผฐๆจกๅž‹ๅœจๅ…ถไป–ๆ–‡้ซ”ไธŠ็š„ๆ•ˆๆžœใ€‚
  • ็ถญๅŸบๆฒ’ๆœ‰้€ฒๆญฅ๏ผˆโˆ’0.3๏ผ‰๏ผŒๅ› ็‚บ่ชžๆ–™ๆฒ’ๆœ‰็ถญๅŸบ๏ผ›็™พ็ง‘ๅผใ€ๅฐˆๆœ‰ๅ่ฉžๅคš็š„ๆ–‡ๅญ—่กจ็พ่ผƒๅทฎใ€‚
  • ่ฉ•ๆธฌ็”จ็š„ๆณจ้Ÿณ็”ฑ่ฉžๅบซ่‡ชๅ‹•่ฝ‰ๅ‡บ๏ผŒไธๆ˜ฏไบบๅทฅๆจ™ๆณจใ€‚
  • ็”Ÿๆˆๅฅไพ†่‡ชๅฆไธ€ๅ€‹ๆจกๅž‹๏ผŒๅฏ่ƒฝๅธถๆœ‰ๅฎƒ็š„็”จ่ฉžๅๅฅฝ๏ผ›ๅทฒๆฟพๆމ็ฐก้ซ”ๅญ—่ˆ‡ไธ€ไปฝๅคง้™ธ็”จ่ฉž่กจ๏ผŒไฝ†ๆฒ’ๆœ‰ไบบๅทฅ้€ๅฅๆชขๆŸฅใ€‚

ๆŽˆๆฌŠ

  • ๆฌŠ้‡ไปฅ Apache-2.0 ้‡‹ๅ‡บ๏ผŒ่ˆ‡ๅŸบๅบ•ๆจกๅž‹็›ธๅŒ๏ผˆๅŸบๅบ• ยฉ Qwen Team๏ผ‰ใ€‚
  • ่จ“็ทด่ณ‡ๆ–™๏ผšCommon Voice๏ผˆCC0๏ผ‰๏ผ›็ซ‹ๆณ•้™ขใ€่กŒๆ”ฟ้™ขใ€ๆณ•ๅ‹™้ƒจ็š„้–‹ๆ”พ่ณ‡ๆ–™ไพๆ”ฟๅบœ่ณ‡ๆ–™้–‹ๆ”พๆŽˆๆฌŠๆขๆฌพ๏ผ็ฌฌ1็‰ˆไฝฟ็”จ๏ผŒๅ‡บ่™•ๆจ™็คบ่ฆ‹ DATA.md๏ผ›Breeze-7B-Instruct๏ผˆApache-2.0๏ผ‰็”Ÿๆˆ็š„ๅฅๅญๆฒ’ๆœ‰ไฝฟ็”จ้™ๅˆถ๏ผŒ้šจๆœฌๆจกๅž‹ๅ…ฌ้–‹ใ€‚
  • ๅ€™้ธๅฅ่ˆ‡ๆณจ้Ÿณไพ†่‡ช McBopomofo๏ผˆMIT๏ผ‰่ˆ‡ๆ–ฐ้…ท้Ÿณ่ฉžๅบซ๏ผˆLGPL-2.1-or-later๏ผ‰๏ผŒๅชๅœจ่ฉ•ๆธฌๆ™‚ไฝฟ็”จ๏ผŒไธๅœจ่จ“็ทด่ชžๆ–™ๅ…งใ€‚

English summary

A LoRA (r=16, all language-model linear layers) continued-pretraining of Qwen/Qwen3.5-0.8B on the same 4.7M tokens of freely reusable Taiwan Mandarin as Qwen3.5-2B-TW-IME: Common Voice zh-TW (CC0), Legislative Yuan gazette speeches and Executive Yuan news releases (Taiwan Open Government Data License v1.0, CC BY 4.0-compatible), laws (not copyrightable), and 30k everyday sentences generated locally with Breeze-7B-Instruct (Apache-2.0). No Wikipedia or Ministry of Education dictionary data. It scores candidate sentences for a Bopomofo input method; it is not a chat model. Sentence accuracy with the IME's mixing: 87.1 / 85.0% (Common Voice dev / test), 87.8% (Legislative Yuan), 78.0% (news), 71.7% (Wikipedia), vs. 85.2 / 83.2 / 85.3 / 76.8 / 72.0% for the stock 0.8B model, about as good as the stock 2B model and twice as fast on a CPU; single run, no confidence intervals.

Downloads last month
87
Safetensors
Model size
0.9B params
Tensor type
BF16
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for alpha34727/Qwen3.5-0.8B-TW-IME

Adapter
(748)
this model