Tencent Releases WeVisDoc-2B and WeVisDoc-4B Document Parsing Models

At a Glance
| Item | Value |
|---|---|
| Repository | tencent/WeVisDoc-4B |
| Family guide | WeVisDoc guide (1 articles) |
| Publisher guide | Tencent: models and licenses |
| Published | 2026-09-16 |
| License | apache-2.0 |
| Formats | safetensors |
| Paper | arXiv:2609.20423 |
| Source type | Primary source (the publisher itself) |
Values determined by this site’s code when the information was collected. Dates are JST.
What we checked ourselves
- Ran
WeVisDoc-4B.Q4_K_M.gguf(Q4_K_M) on our CPU-only server (Neoverse-N1, 3 threads, llama.cpp b11223): generation at 8.3 tokens/s (a CPU figure, not a GPU speed). - Its answers to our fixed Japanese questions are shown verbatim below.
- The same Japanese text takes about as many tokens as with the Qwen3 tokenizer.
Details and conditions are in “Our Own Measurements” below.
Overview
Tencent has released “WeVisDoc-2B" and “WeVisDoc-4B", end-to-end document parsing models that extract structured text from page images.
These models are fine-tuned versions based on “Qwen3-VL-2B-Instruct" and “Qwen3-VL-4B-Instruct" respectively, taking page images as input and outputting structured Markdown containing LaTeX-format mathematical formulas and HTML-format tables.
Specifications
- Architecture: Qwen3VLForConditionalGeneration (qwen3_vl)
- Base Models: Qwen3-VL-2B-Instruct, Qwen3-VL-4B-Instruct
- License: apache-2.0
Performance
The measurement results of document parsing benchmarks provided by the publisher are as follows. Evaluation values represent the average of three inference runs.
OmniDocBench v1.6
→ Scroll horizontally to see all columns
| Model | Params | Overall ↑ | TextEdit ↓ | FormulaCDM ↑ | TableTEDS ↑ | TableTEDS_S ↑ | ROEdit ↓ |
|---|---|---|---|---|---|---|---|
| Nanonets-OCR2* | 3B | 83.20 | 0.108 | 80.35 | 80.10 | 85.26 | 0.211 |
| OCRFlux-3B* | 3B | 83.31 | 0.126 | 88.75 | 73.78 | 77.98 | 0.217 |
| POINTS-Reader | 3B | 83.37 | 0.096 | 85.72 | 73.98 | 77.40 | 0.198 |
| Nanonets-OCR-s | 3B | 83.61 | 0.108 | 81.46 | 80.18 | 84.51 | 0.213 |
| olmOCR-2-7B* | 7B | 85.51 | 0.106 | 88.84 | 78.32 | 82.81 | 0.223 |
| olmOCR | 7B | 85.74 | 0.139 | 88.10 | 83.00 | 87.17 | 0.216 |
| DeepSeek-OCR* | 3B | 86.31 | 0.077 | 84.71 | 81.87 | 86.07 | 0.171 |
| OCRVerse | 4B | 88.60 | 0.063 | 89.61 | 82.44 | 86.27 | 0.163 |
| UniRec-0.1B* | 0.1B | 88.91 | 0.088 | 92.14 | 83.40 | 86.79 | 0.146 |
| DeepSeek-OCR 2 | 3B | 90.25 | 0.050 | 91.84 | 83.89 | 87.75 | 0.144 |
| dots.ocr | 3B | 90.77 | 0.048 | 89.95 | 87.18 | 90.58 | 0.138 |
| FD-RL* | 4B | 91.21 | 0.055 | 92.92 | 86.22 | 90.92 | 0.145 |
| HunyuanOCR | 1B | 92.03 | 0.048 | 88.60 | 92.37 | 93.99 | 0.138 |
| dots.mocr* | 3B | 92.57 | 0.042 | 92.09 | 89.78 | 92.92 | 0.133 |
| FireRed-OCR | 2B | 93.26 | 0.037 | 95.44 | 88.04 | 91.06 | 0.131 |
| Logics-Parsing-v2 | 4B | 93.33 | 0.041 | 95.65 | 88.42 | 91.98 | 0.137 |
| Qianfan-OCR | 4B | 93.90 | 0.040 | 95.08 | 90.53 | 93.31 | 0.130 |
| Unlimited-OCR | 3B-A0.5B | 93.92 | 0.042 | 95.79 | 90.16 | 93.32 | 0.129 |
| HunyuanOCR-1.5 | 1B | 94.74 | 0.039 | 94.50 | 93.67 | 94.71 | 0.129 |
| WeVisDoc-2B | 2B | 95.06 | 0.038 | 95.94 | 93.03 | 95.26 | 0.130 |
| WeVisDoc-4B | 4B | 95.38 | 0.036 | 96.81 | 92.95 | 95.34 | 0.125 |
PureDocBench
→ Scroll horizontally to see all columns
| Model | Params | Avg₃ ↑ | Clean Overall ↑ | Digital Degraded Overall ↑ | Real Degraded Overall ↑ |
|---|---|---|---|---|---|
| OCRFlux-3B | 3B | 42.06 | 47.14 | 41.82 | 37.21 |
| DeepSeek-OCR | 3B | 46.98 | 53.50 | 46.95 | 40.48 |
| UniRec-0.1B | 0.1B | 48.59 | 58.91 | 52.42 | 34.44 |
| POINTS-Reader* | 3B | 49.24 | 53.78 | 51.24 | 42.69 |
| DeepSeek-OCR-2 | 3B | 49.51 | 55.53 | 49.41 | 43.60 |
| Qianfan-OCR | 4B | 51.04 | 57.22 | 50.85 | 45.06 |
| olmOCR-7B | 7B | 55.90 | 62.56 | 57.84 | 47.30 |
| Nanonets-OCR2 | 3B | 58.36 | 64.83 | 61.23 | 49.03 |
| HunyuanOCR | 1B | 60.56 | 65.61 | 61.49 | 54.58 |
| Unlimited-OCR* | 3B-A0.5B | 62.76 | 71.28 | 63.62 | 53.39 |
| olmOCR-2-7B | 7B | 63.78 | 69.36 | 65.87 | 56.10 |
| dots.ocr | 3B | 64.55 | 72.01 | 65.95 | 55.68 |
| Nanonets-OCR-s* | 3B | 65.37 | 71.26 | 66.56 | 58.28 |
| FireRed-OCR | 2B | 65.57 | 70.81 | 68.49 | 57.42 |
| HunyuanOCR-1.5* | 1B | 68.79 | 73.98 | 70.81 | 61.59 |
| OCRVerse | 4B | 69.40 | 73.18 | 71.36 | 63.66 |
| dots.mocr | 3B | 70.39 | 76.27 | 73.16 | 61.73 |
| Logics-Parsing-v2 | 4B | 72.61 | 76.35 | 73.85 | 67.64 |
| FD-RL | 4B | 73.92 | 78.38 | 76.33 | 67.04 |
| WeVisDoc-2B | 2B | 73.86 | 79.36 | 76.62 | 65.60 |
| WeVisDoc-4B | 4B | 75.54 | 79.81 | 77.74 | 69.08 |
According to the measurement results stated in the model card, WeVisDoc-4B achieves the highest scores among compared end-to-end parsers in both the OmniDocBench v1.6 Overall (95.38) and the PureDocBench 3-track average Avg₃ (75.54). It exhibits particularly high figures in OmniDocBench v1.6 FormulaCDM (96.81) and PureDocBench Clean Overall (79.81), demonstrating superior parsing accuracy for mathematical formulas and standard document images. The smaller WeVisDoc-2B is also remarkably capable, recording 95.06 in OmniDocBench v1.6 Overall and outperforming larger and other models such as HunyuanOCR-1.5 and Logics-Parsing-v2. On the other hand, in PureDocBench’s “Real Degraded Overall", WeVisDoc-2B stays at 65.60, trailing behind FD-RL (67.04) and Logics-Parsing-v2 (67.64), showing a difference in robustness toward real photographed degraded images compared to the larger 4B version.
Strengths and Use Cases
WeVisDoc specializes in generating structured Markdown from page images (PNG, JPEG, WebP) of books, research papers, and various documents. It excels not only in converting body text but also in extracting mathematical formulas using LaTeX format and analyzing table structures using HTML format. English (en) and Chinese (zh) are set as tag information, making it suitable for OCR and paper parsing use cases involving multilingual documents.
Hardware Requirements
Estimated requirements (calculated by Local Model Watch) — 4.4B parameters
| Your VRAM | Quantization | File size | Est. memory needed |
|---|---|---|---|
| 4GB (laptop iGPU / phone class) | Q5_K_S | 2.9GB | 3.5GB |
| 8GB (RTX 4060 / 3060 Ti, etc.) | Q8_0 | 4.4GB | 5.2GB |
| 12GB (RTX 4070 / 3060 12GB, etc.) | F16 | 8.2GB | 9.9GB |
Inference engine support (architecture name matched against each project’s own model registry in its source code, checked 2026-11-03): llama.cpp: registered, vLLM: registered, MLX (mlx-lm): registered.
Memory estimates add a 20% runtime overhead (KV cache, etc.) to the actual size of the distributed files. Actual usage varies with context length, batch size and inference engine. These figures are computed by this site from file sizes, not published by the model’s authors. File sizes are measured from the converted build mradermacher/WeVisDoc-4B-GGUF. Compare with other models in our VRAM quick reference. What the quantization names mean: glossary.
Can You Run It Locally?
The publisher distributes this model as safetensors.
License — apache-2.0 (Commercial use allowed): Permits commercial use, modification and redistribution. Redistribution requires including the license and stating changes; includes a patent grant.
Compression: the Q5_K_S build measures 5.61 bits per weight — about 35% the size of the original 16-bit weights, calculated by this site from the actual file sizes.
Compiled by this site’s code from the published formats and the license field. License summaries are not legal advice — check the publisher’s original terms before relying on them.
Our Own Measurements
Values we measured ourselves on our server (no GPU) by actually reading and running this model’s files — not figures copied from the model card. How we measure, and the results for every model: Our Measurements.
What We Found
When running WeVisDoc-4B solely on a CPU, it successfully handled tasks such as summarizing text, writing emails with polite phrasing, and solving shopping word problems, but stumbled on a knowledge question asking for prefectures without an ocean coastline, resulting in the same line repeating 16 times and hitting the 1,024-token limit. In an environment with Neoverse-N1 and 3 threads using Q4_K_M quantization, the generation speed was 8.31 tokens per second, which translates to 12.1 Japanese characters per second. The peak memory consumption was 6.7GB, and the file size is 2.53GB. In the image reading tests, it correctly answered the busiest day of the week and the correct figure of 260 people from a visitor volume graph, but failed to provide the correct total for weekdays or the correct total amount for a shopping receipt.
The Japanese token efficiency is 688 tokens per 1,000 characters, with a token ratio of 1.26 compared to the same content in English. Using F16 as the baseline, the match rate for the first candidate of the next token was 70.0% for Q4_K_M, 22.9% for Q2_K, and 93.8% for Q8_0. The smallest quantization level to reach a 90% match rate was Q8_0, and no tested quantization reached a 95% match rate. Lowering the quantization down to Q2_K confirmed degradation, such as hitting the 1,024-token limit on the summarization task with the same line repeating 15 times.
Japanese Token Efficiency
| Tokenizer | Tokens per 1,000 Japanese characters | Ratio to the same text in English |
|---|---|---|
| This model | 688 | 1.26× |
| Qwen3 | 688 | 1.26× |
| Llama 3.2 | 744 | 1.36× |
| Gemma 3 | 564 | 1.03× |
| gpt-oss | 795 | 1.45× |
| LLM-jp-3 | 497 | 0.85× |
The same Japanese text takes about as many tokens as with the Qwen3 tokenizer.
Counted with the tokenizer.json of tencent/WeVisDoc-4B on a fixed text we wrote ourselves (876 Japanese characters across news, conversation, technical docs, a formal email, travel writing and a recipe) and its English translation. Fewer tokens mean more Japanese fits in the context window.
Inside the GGUF File
File: WeVisDoc-4B.Q4_K_M.gguf (2.53GB, Q4_K_M). We read only the header (metadata) of the file, not the weights.
| Item | Value |
|---|---|
| Architecture (as named in the GGUF) | qwen3vl |
| Maximum trained context length | 262,144 tokens |
| Layers | 36 |
| Vocabulary size | 151,936 |
| Chat template | Included (mentions tool calls) |
| imatrix | Not recorded in the file |
| Weight types (share of parameters) | Q4_K 79.9% / Q6_K 20.0% / F32 0.0% |
| Average bits per weight | 4.91 bits |
| Embedding / output layer type | Q4_K / Q6_K |
The quant name in the file name describes the file as a whole; in practice layers mix several types. The average bits per weight is the measured file data divided by the number of weights.
Quality Loss by Quantization (Measured on Japanese Text)
We downloaded each quantization of mradermacher/WeVisDoc-4B-GGUF one at a time and compared it with F16 (8.22GB) on a fixed Japanese text (the opening of Natsume Soseki’s Botchan, public domain) using llama.cpp’s KL-divergence mode.
→ Scroll horizontally to see all columns
| Quant | File size | Same top token as the baseline | Mean KL divergence | Perplexity vs baseline |
|---|---|---|---|---|
Q2_K |
1.67GB | 22.9% | 3.4502 | 9.605× |
Q3_K_M |
2.09GB | 53.5% | 0.9025 | 1.224× |
IQ4_XS |
2.32GB | 70.4% | 0.3242 | 0.995× |
Q4_K_M |
2.53GB | 70.0% | 0.3195 | 1.085× |
Q5_K_M |
2.94GB | 83.0% | 0.0988 | 1.002× |
Q6_K |
3.38GB | 86.5% | 0.0592 | 1.021× |
Q8_0 |
4.37GB | 93.8% | 0.0147 | 0.998× |
No quantization reached 95% top-token agreement.
KL divergence closer to 0 means the next-token probabilities stay closer to the baseline. Conditions: Neoverse-N1, llama.cpp b11223, context 512 tokens, measured 2026-09-29 (JST). Botchan is a famous text the model may have seen in training, so read the numbers as a comparison between quantizations of the same model, not as an absolute score.
Answers by Quantization Level (Verbatim)
While measuring the quality loss above, we also asked the same five Japanese questions to F16, Q4_K_M, Q2_K of the same model (temperature 0, up to 1024 tokens) and publish the answers unedited, largest file first. We do not grade them.
Summarization
次の記事を3文で要約してください。
みどり市は今年の春、市内に三つある公立図書館のうち最も古い中央図書館の改修を終え、十月一日に再開館した。改修は約一年半にわたり、総事業費は約十二億円。このうち約四億円は国の補助金でまかなわれた。
最大の変化は、閲覧席の配置である。以前は館内の座席の大半が学習用の机で、試験期間になると中高生で埋まり、高齢の利用者や小さな子ども連れが座れないという苦情が毎年寄せられていた。改修後は座席数を百二十席から二百席に増やしたうえで、学習用の机を三階にまとめ、一階は会話ができる「にぎわいフロア」、二階は静かに本を読む「閲覧フロア」に分けた。一階には予約制のグループ学習室が四室と、飲み物を持ち込めるカフェスペースも設けられた。
蔵書の面でも見直しが進んだ。貸出の少ない古い資料約三万冊を市内の他の館や保存書庫に移し、代わりに子ども向けの絵本と、介護・子育て・仕事探しといった暮らしに関わる実用書を約一万五千冊増やした。電子書籍の貸出サービスも始まり、利用登録をすれば自宅から一度に三冊まで、二週間借りられる。
建物そのものにも手が入った。築四十年を超えていた空調設備を入れ替え、屋上には太陽光パネルを設置して、館内で使う電力の約二割をまかなえるようにした。車いすの利用者から要望の多かったエレベーターは一基から二基に増え、書架の間の通路も以前より三十センチ広げられた。入口には段差のないスロープが新たに設けられ、授乳室と多目的トイレも各階に一つずつ置かれた。
一方で課題も残る。駐車場は改修前と同じ四十台のままで、週末には近くの道路に順番待ちの車が並んだ。市は隣接する市有地を臨時駐車場として開放したが、恒久的な対策は決まっていない。また、開館時間を平日の夜九時まで延ばしたことで職員の負担が増えており、職員団体は人員の追加を求めている。
利用者の受け止めはおおむね好意的だ。週に二度、孫を連れて来るという七十代の女性は「前は子どもが声を出すと周りの目が気になったが、一階なら気兼ねなく絵本を読んであげられる」と話す。一方、受験を控えた高校生の中には「学習席が三階だけになり、夕方はすぐに満席になる」と不満を漏らす人もいる。図書館は、学習席の空き状況をホームページで確認できる仕組みを年内に導入する予定だ。
再開館に合わせて、催しも増えた。毎週土曜の午前には読み聞かせ会、月に一度は地元の農家や商店主を講師に招く「まちの先生」講座が開かれる。十一月には、市内の中学生が選んだ本を紹介する展示も予定されている。
館長の山本和子さんは「本を借りる場所から、人が集まって過ごす場所へ変えたかった。再開館からの一か月で来館者は以前の一・八倍になった」と話す。市は来年度、残る二つの図書館についても利用者への聞き取りを行い、改修の必要性を検討する方針だ。
(Summarize the following article in three sentences. (The article, about 1,200 Japanese characters, describes the renovation and reopening of a city’s central library: the budget, the new floor layout and seating, changes to the collection and e-book lending, building and accessibility work, remaining issues such as parking and staff workload, users’ reactions, new events, and the city’s next steps.))
F16 (baseline) 8.22GB
みどり市は春に中央図書館を改修し、十月一日に再開館した。約一年半にわたる工事は総事業費約十二億円で、約四億円は国の補助金で賄われた。
最大の変化は座席配置で、学習用の机が主だった座席を高齢者や子ども連れに配慮した「にぎわいフロア」や「閲覧フロア」に分け、電子書籍サービスも始まり、建物にも空調や太陽光パネル、エレベーター増設など手が入れられた。
課題は駐車場の不足や職員負担だが、利用者の受け入れはおおむね好意的で、催しも増え、市は来年度、残る図書館の改修検討方針を示す。
Q4_K_M 2.53GB
みどり市は春に中央図書館を改修し、十月一日に再開館した。約一年半の工期と約十二億円の事業費(約四億円が国の補助金)で、主な変化は座席配置や建物の設備改善などだ。
改修では学習席を三階にまとめ、一階を会話フロアや閲覧フロアに分け、電子書籍サービスや車いす対策、空調や太陽光パネル設置など、利用者や環境への配慮が進み、駐車場や職員負担などの課題も残っている。
利用者は整体的に好意的で、高齢者や家族連れの来館増加を喜ぶ一方、受験生や学生の不満もあり、図書館は空き状況の確認仕組みを年内に導入予定。市は来年度は残る二つの図書館についても利用者調査を行い、改修の必要性を検討する方針だ。
Q2_K 1.67GB
みdoši: 市内は、三つ図書館の内、最古、中央、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改作
建物: 市内は、三つ図書館の内、最古、中央、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改 作
建物: 市内は、三つ図書館の内、最古、中央、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改修、改 作
建物: 市内は、三つ図書館の内、最古、中央、改修、改修、改三改、改修、改修、改 作
建物: 市内は、三つ図書館の内、最古、中央、改 作
建物: 市内は、三つ図書館の内、最古、中央、改 作
建物: 市内は、三つ図書館の内、最古、中央、改 作
建物: 市内は、三つ図書館の内、最古、中央、改 作
建物: 市内は、三つ図書館の内、最古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ図書館の内、更古、中央、改 作
建物: 市内は、三つ
(Cut off at the 1024-token limit.)
Formal business email
取引先の担当者に、来週火曜日の打ち合わせを水曜日に変更してほしいとお願いするメールを、丁寧な敬語で書いてください。
(Write an email in polite Japanese (keigo) asking a client’s contact person to move next Tuesday’s meeting to Wednesday.)
F16 (baseline) 8.22GB
件名:来週火曜日の打ち合わせを水曜日に変更するお願い
〇〇様
貴社の取引先として、いつもお世話になっております。この度は、来週火曜日の打ち合わせ時間を水曜日に変更して頂戴できればと存じます。ご都合が伺えるか、お知らせ賜りますようお願い申し上げます。
万が一都合がつかず、ご都合に沿えない場合は、ご連絡賜りますようお願い申し上げます。何卒、よろしくお願いいたします。
敬具
○○○ 从
Q4_K_M 2.53GB
件名:来週火曜日打ち合わせの日時変更のお願い
〇〇様
貴社の取引先として、いつもお世話になっております。本件に関しましては、来週火曜日の打ち合わせを水曜日に変更して頂戴了出来个工作日を望みます。
上記の変更を希望いたしますので、ご了承下さいますようお願い申し上げます。
何卒よろしくお願いいたします。
○○様
Q2_K 1.67GB
取引先の担当者さま、来週火曜日の取り扂りを変更してほしいと存じandumを、丁辞な敬語でお願いします。
Word problem
りんごが1個120円、みかんが1個45円です。りんごを3個とみかんを8個買って、1,000円札で払いました。おつりはいくらですか。考え方も示してください。
(Apples cost 120 yen each and mandarins cost 45 yen each. You buy 3 apples and 8 mandarins and pay with a 1,000-yen bill. How much change do you get? Show your reasoning.)
F16 (baseline) 8.22GB
りんごが1個120円、みかんが1個45円です。
りんごを3個とみかんを8個買ったので、
りんごの料金:120円 × 3個 = 360円
みかんの料金:45円 × 8個 = 360円
合計の料金:360円 + 360円 = 720円
1,000円札で払ったので、
おつり:1,000円 - 720円 = 280円
**答え:280円**
**考え方:**
1. 各果物の単価と数量をかけ算して、それぞれの料金を計算。
2. 両者の料金を足し算して、合計料金を求める。
3. 支払った金額(1,000円)から合計料金を引くと、おつりの額が得られる。
Q4_K_M 2.53GB
りんごが1個120円、みかんが1個45円です。
りんごを3個とみかんを8個買ったので、
りんごの合計金額:120円 × 3 = 360円
みかんの合計金額:45円 × 8 = 360円
合計金額:360円 + 360円 = 720円
1,000円札で払ったので、
おつり:1,000円 - 720円 = 280円
よって、おつりは**280円**です。
### 考え方のまとめ:
1. 各種果物の個数と単価を multiplyして合計金額を計算。
2. 両者の合計金額を足し算して全体の合計額を求める。
3. 支払った金額(1,000円)から合計額を引くとおつりの額が求まる。
計算式:
$$
1,000 - (120 \times 3 + 45 \times 8) = 1,000 - (360 + 360) = 1,000 - 720 = 280
$$
答え:**280円**
Q2_K 1.67GB
解き方程.
(1) 1,000 yen (100 yen 批) (2) 1,000 yen (100 yen 批) (3) 1,000 yen (100 yen 批) (4) 1,000 yen (100 yen 批) (5) 1,000 ¥
(1) 1,000 yen (100 ¥) (2) 1,000 ¥ (100 ¥) (3) 1,001 ¥ (100 ¥) (4) 1,001 ¥ (100 ¥) (5) 1,001 ¥ (100 ¥) (6) 1,001 ¥ (100 ¥) (7) 1,001 ¥ (100 ¥) (8) 1,001 ¥ (100 ¥) (9) 1,001 ¥ (100 ¥) (10) 1,001 ¥ (100 ¥) (11) 1,001 ¥ (100 ¥) (12) 1,001 ¥ (100 ¥) (13) 1,001 ¥ (100 ¥) (14) 1,001 ¥ (100 ¥) (15) 1,001 ¥ (100 ¥) (16) 1,001 ¥ (100 ¥) (17) 1,001 ¥ (100 ¥) (18) 1,001 ¥ (100 ¥) (19)1 1,001 ¥ (100 ¥) (20) 1,001 ¥ (100 ¥) (21) 1,001 ¥ (100 ¥) (22) 1,001 ¥ (100 ¥) (23) 1,001 ¥ (100 ¥) (24) 1,001 ¥ (100 ¥) (25) 1,001 ¥ (100 ¥) (26) 1,001 ¥ (100 ¥) (27) 1,001 ¥ (100 ¥) (28) 1,001 ¥ (100 ¥) (29)1 1,011 ¥ (101 ¥) (30) 1,011 ¥ (101 ¥) (31) 1,011 ¥ (101 ¥) (32) 1,011 ¥ (101 ¥) (33) 1,011 ¥ (101 ¥) (34) 1,011 ¥ (101 ¥) (35) 1,011 ¥ (101 ¥) (36) 1,011 ¥ (101 ¥) (37) 1,011 ¥ (101 ¥) (38) 1,011 ¥ (101 ¥) (39)1 1,011 ¥ (101) (40) 1,011 ¥ (101) (41) 1,011 ¥ (101) (42) 1,011 ¥ (101) (43) 1,011 ¥ (101) (44) 1,011 ¥ (101) (45) 1,011 ¥ (101) (46) 1,011 ¥ (101) (47) 1,011 ¥ (101) (48) 1,011 ¥ (101) (49) 1,011 ¥ (101) (50) 1,011 ¥ (101) (50) 1,011 ¥ (101) (51) 1,011 ¥ (101) (52) 1,011 ¥ (101) (53) 1,011 ¥ (101) (54) 1,011 ¥ (101) (55) 1,011 ¥ (101) (56) 1,0
(Cut off at the 1024-token limit.)
Reference: The correct answer is 280 yen (120×3 = 360, 45×8 = 360, 1,000 − 720 = 280).
Knowledge
日本の都道府県のうち、海に面していない県をすべて挙げてください。
(List all of Japan’s prefectures that do not border the sea.)
F16 (baseline) 8.22GB
日本の都道府県のうち、海に面していない県(「海に面していない都道府県」)を挙げます。注意点としては:
- 「海に面していない」=「海に面していない県」=「海に面していない地方自治体」
- 例外として、一部の県が「海に面しているが、行政的に海に面していない」とされる場合もありますが、ここでは一般的な定義で整理します。
- 群馬県、山梨県、長野県、新潟県、富山県、石川県、福井県、山口県、香川県、徳島県、高知県、愛媛県、四国地方の一部県などは「海に面している」ことが多いです。
- 一方で、北海道の一部県(北海道・根室平野・根室町・根室村・斜里町・斜里町・斜里村)は「海に面していない」ことが一般的です。
## 海に面していない都道府県(正式な名称)
1. **群馬県**
2. **山梨県**
3. **長野県**
4. **新潟県**
5. **富山県**
6. **石川県**
7. **福井県**
8. **山口県**
9. **香川県**
10. **徳島県**
11. **高知県**
12. **愛媛県**
13. **山梨県**(上記と重複)
14. **新潟県**(上記と重複)
15. **北海道・根室平野・根室町・根室村・斜里町・斜里村**(一部の自治体)
16. **北海道・斜里町・斜里村**(一部の自治体)
17. **北海道・斜里町・斜里村**(一部の自治体)
18. **北海道・斜里町・斜里村**(一部の自治体)
19. **北海道・斜里町・斜里村**(一部の自治体)
20. **北海道・斜里町・斜里村**(一部の自治体)
21. **北海道・斜里町・斜里村**(一部の自治体)
22. **北海道・斜里町・斜里村**(一部の自治体)
23. **北海道・斜里町・斜里村**(一部の自治体)
24. **北海道・斜里町・斜里村**(一部の自治体)
25. **北海道・斜里町・斜里村**(一部の自治体)
26. **北海道・斜里町・斜里村**(一部の自治体)
27. **北海道・斜里町・斜里村**(一部の自治体)
28. **北海道・斜里町・斜里村**(一部の自治体)
29. **北海道・斜里町・斜里村**(一部の自治体)
30. **北海道・斜里町・斜里村**(一部の自治体)
31. **北海道・斜里町・斜里村**(一部の自治体)
32. **北海道・斜里町・斜里村**(一部の自治体)
33. **北海道・斜里町・斜里村**(一部の自治体)
34. **北海道・斜里町・斜里村**(一部の自治体)
35. **北海道・斜里町・斜里村**(一部の自治体)
36. **北海道・斜里町・斜里村**(一部の自治体)
37. **北海道・斜里町・斜里村**(一部の自治体)
38. **北海道・斜里町・斜里村**(一部の自治体)
39. **北海道・斜里町・斜里村**(一部の自治体)
40. **北海道・斜里町・斜里村**(一部の自治体)
41. **北海道・斜里町・斜里村**(一部の自治体)
42. **北海道・斜里町・斜里村**(一部の自治体)
43. **北海道・斜里町・斜里村**(一部の自治体)
44. **北海道・斜里町・斜里村**(一部の自治体)
45. **北海道・斜里町・斜里村**(一部の自治体)
46. **北海道・斜里
(Cut off at the 1024-token limit.)
Q4_K_M 2.53GB
日本の都道府県のうち、海に面していない県を挙げます。日本列島は、海に面する県が多いですが、一部の県は海に面していません。具体的には以下の通りです:
### **海に面していない都道府県(県)**
1. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
2. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
3. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
4. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海。
5. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
6. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
7. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
8. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
9. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
10. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
11. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
12. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
13. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
14. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
15. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県として除外されます。
16. **北海道(北海道)**
- 北海道全域が海に面していますが、一部の県(北海道)は海に面しています。
- ただし、北海道全域が海に面しているため、海に面していない県
(Cut off at the 1024-token limit.)
Q2_K 1.67GB
日本全国各地のうち、海に面しない県をすべて挙げます。
1. 北海道(北海道):北海道の中央部分は、日本海(日本海)に面しています。
2. 北海aut(北海aut):北海autの中央部分は、北海aut(北海aut)に面しています。
3. 北海汉(北海汉):北海汉の中央部分は、北海汉(北海汉)に面しています。
4. 北海岛(北海岛):北海岛の中央部分は、海嶺(日本海)に面しています。
5. 北海道(北海道):北海道の中央部分は、日本海(日本海)に面しています。
6. 北海aut(北海aut):北海autの中央部分は、北海aut(北海aut)に面しています。
7. 北海汉(北海汉):北海autの中央部分は、北海aut(北海aut)に面しています。
8. 北海汉(北海汉):北海道(北海道)の中央部分は、北海汉(北海汉)に面しています。
9. 北海aut(北海aut):北海道(北海道)の中央部分は、北海aut(北海aut)に面しています。
10. 北海aut(北海aut):北海autの中央部分は、北海aut(北海aut)に面しています。
11. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海aut)に面しています。
12. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海三)に面しています。
13. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
14. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
15. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
16. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
17. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
18. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
19. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
20. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
21. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
22. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
23. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
24. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
25. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
26. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
27. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
28. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
29. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
30. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
31. 北海道(北海道):北海道(北海道)の中央部分は、北海aut(北海道)に面しています。
32. 北海道(北海道):北海道(北海道)の中央部分は、北海
(Cut off at the 1024-token limit.)
Reference: The correct answer is eight prefectures: Tochigi, Gunma, Saitama, Yamanashi, Nagano, Gifu, Shiga and Nara.
Constrained writing
「春」をテーマにした俳句を3つ、五・七・五の音数を守って作ってください。それぞれに一言の説明を付けてください。
(Write three haiku on the theme of spring, keeping the 5-7-5 syllable pattern, each with a one-line explanation.)
F16 (baseline) 8.22GB
1. 雨上がりの空
春の息吹が届く
2. 花見の里
春は微笑み返す
3. 雪解けの川
春の音が聞こえる
【説明】
1. 雨上がりの空 — 春の始まりを象徴する空の変化。
2. 花見の里 — 春の代表的な行事「花見」を描写。
3. 雪解けの川 — 冬の終わりと春の始まりの移行を表す。
Q4_K_M 2.53GB
1. 雨上がりの空
春の匂いが
染みて来ル
【解説】雨上がりの空に春の匂いが染みて来ることで、春の訪れと空気の変化を描写。
2. 花見の日
蝶々舞い散る
心に残る
【解説】花見の日、蝶々が舞い散る様子を描き、春の美しさと心に残る感動を表現。
3. 朝日が昇る
草の芽が膨ら
春の始まり
【解説】朝日が昇り、草の芽が膨らむ春の始まりを象徴的に描写。
Q2_K 1.67GB
春は、自然の言葉。
1. 春は、自然の言葉。
2. 春は、自然の言葉。
3. 春は、自然の言葉。
4. 春は、自然の言葉。
5. 春は、自然の言葉。
6. 春は、自然の言葉。
7. 春は、自然の言葉。
8. 春は、自然の言葉。
9. 春は、自然の言葉。
10. 春は、自然の言葉。
11. 春は、自然の言葉。
12. 春は、自然の言葉。
13. 春は、自然の言葉。
14. 春は、自然の言葉。
15. 春は、自然の言葉。
16. 春は、自然の言葉。
17. 春は、自然の言葉。
18. 春は、自然の言葉。
19. 春は、自然の言葉。
20. 春は、自然の言葉。
21. 春は、自然の言葉。
22. 春は、自然の言葉。
23. 春は、自然の言葉。
24. 春は、自然の言葉。
25. 春は、自然の言葉。
26. 春は、自然の言葉。
27. 春は、自然の言葉。
28. 春は、自然の言葉。
29. 春は、自然の言葉。
30. 春は、自然の言葉。
31. 春は、自然の言葉。
32. 春は、自然の言葉。
33. 春は、自然の言葉。
34. 春は、自然の言葉。
35. 春は、自然の言葉。
36. 春は、自然の言葉。
37. 春は、自然の言葉。
38. 春は、自然の言葉。
39. 春は、自然の言葉。
40. 春は、自然の言葉。
41. 春は、自然の言葉。
42. 春は、自然の言葉.
43. 春は、自然の言葉.
44. 春は、自然の言葉.
45. 春は、自然の言葉.
46. 春は、自然の言葉.
50. 春は、自然の言葉.
51. 春は、自然の言葉.
52. 春は、自然の言葉.
53. 春は、自然の言葉.
54. 春は、自然の言葉.
55. 春は、自然の言葉.
56. 春は、自然の言葉.
57. 春は、自然の言葉.
58. 春は、自然の言葉.
59. 春は、自然の言葉.
60. 春は、自然の言葉.
61. 春は、自然の言葉.
62. 春は、自然の言葉.
63. 春は、自然の言葉.
64. 春は、自然の言葉.
65. 春は、自然の言葉.
66. 春は、自然の言葉.
67. 春は、自然の言葉.
68. 春は、自然の言葉.
69. 春は、自然の言葉.
70. 春は、自然の言葉.
71. 絶命の解法(解法)
72. 絶命の解法(解法)
73. 絶命の解法(解法)
74. 絞命の解法(解法)
75. 絮命の解法(解法)
76. 統命の解法(解法)
77. 統命の解法(解法)
78. 統命の解法(解法)
79. 統命の解法(解法)
80. 統命の解法(解法)
81. 統命の解法(解法)
82. 統命の解法(解法)
83. 統命の解法(解法)
84. 統命の解法(解法)
85. 統命の解法(解法)
86. 統命の解法(
(Cut off at the 1024-token limit.)
Running It on a CPU Only
| Item | Result |
|---|---|
| Prompt processing (512 tokens) | 19.4 tokens/s |
| Generation (128 tokens) | 8.3 tokens/s |
| Generation in Japanese characters | about 12.1 characters/s |
| Peak memory (context 4,096 tokens) | 6.7GB |
Conditions: Neoverse-N1, 3 threads, no GPU, llama.cpp b11223, Q4_K_M (2.53GB) from mradermacher/WeVisDoc-4B-GGUF, measured 2026-09-29 (JST). Other models measured under the same conditions (closest in file size):
→ Scroll horizontally to see all columns
| Model | Quant | File size | Generation | In Japanese |
|---|---|---|---|---|
| Qwen3-4B | Q4_K_M |
2.33GB | 6.8 tokens/s | — |
| MiniCPM5-2B | Q4_K_M |
1.45GB | 13.9 tokens/s | 20.9 chars/s |
| olmo3-7b-sdf-sft-clean150 | Q4_K_M |
4.16GB | 4.9 tokens/s | 4.4 chars/s |
| Qwen3-8B | Q4_K_M |
4.68GB | 4.6 tokens/s | — |
Peak memory includes the model file mapped into memory (mmap). A PC with a GPU will be much faster; these figures are a guide for CPU-only machines such as mini PCs and ARM boards.
Answers About Images (Verbatim)
Under the same conditions, we gave the model images we drew ourselves with code (a chart and a table in Japanese) and asked about them. Answers are unedited; the correct answers were computed by the code that drew the images.
Reading a chart

このグラフで来客数が最も多い曜日と、その人数を答えてください。また、平日(月曜日〜金曜日)の来客数の合計も求めてください。
(Which day has the most visitors in this chart, and how many? Also give the weekday (Mon-Fri) total.)
ある書店の曜日別の来客数(1週間)
最も多い曜日: 土曜日
人数: 260人
平日の来客数の合計: 695人
Reference: Correct answer: Sat with 260 visitors; the weekday total is 635.
Reading a table and calculating

この表の品目ごとの金額(数量×単価)と、合計金額を答えてください。
(Give the amount for each item (quantity × unit price) in this table, and the total.)
## 買い物の明細
<table><tr><td>品目</td><td>数量</td><td>単価</td></tr><tr><td>りんご</td><td>3</td><td>120円</td></tr><tr><td>みかん</td><td>8</td><td>45円</td></tr><tr><td>牛乳</td><td>2</td><td>198円</td></tr><tr><td>食パン</td><td>1</td><td>238円</td></tr></table>
<table><tr><td>品目</td><td>数量</td><td>単価</td></tr><tr><td>りんご</td><td>3</td><td>120円</td></tr><tr><td>みかん</td><td>8</td><td>45円</td></tr><tr><td>牛乳</td><td>2</td><td>198円</td></tr><tr><td>食パン</td><td>1</td><td>238円</td></tr></table>
合計金額: 1,009円
Reference: Correct answer: 360 yen, 360 yen, 396 yen, 238 yen; total 1,354 yen.
How to Get It
Model files are distributed in safetensors format and can be obtained directly from Hugging Face.
An example script execution for starting a server using vLLM (>=0.11.1) is as follows:
bash scripts/serve_vllm.sh Tencent/WeVisDoc-2B
*When using the 4B model, specify Tencent/WeVisDoc-4B.
After starting the service, here is an example command to parse an image using the included client:
python -m wevisdoc.client --image page.png --output results/page.md
It can also be executed directly in a local inference environment using Transformers.
python -m wevisdoc.local --model Tencent/WeVisDoc-2B --image page.png --output results/page.md
Quantized and Converted Variants
→ Scroll horizontally to see all columns
| Added | Publisher | Format | Repository | Smallest VRAM tier (build, est. memory) |
|---|---|---|---|---|
| 2026-09-20 (2 days after publication) | mradermacher | GGUF | mradermacher/WeVisDoc-4B-GGUF | Q5_K_S 3.5GB (fits in 4GB VRAM) |
| 2026-09-20 (2 days after publication) | mradermacher | GGUF (imatrix) | mradermacher/WeVisDoc-4B-i1-GGUF | Q5_K_S 3.5GB (fits in 4GB VRAM) |
File sizes of each build:
- Available builds in mradermacher/WeVisDoc-4B-GGUF: Q2_K 1.7GB / Q3_K_S 1.9GB / Q3_K_M 2.1GB / Q3_K_L 2.2GB / IQ4_XS 2.3GB / Q4_K_S 2.4GB / Q4_K_M 2.5GB / Q5_K_S 2.9GB / Q5_K_M 2.9GB / Q6_K 3.4GB / Q8_0 4.4GB / F16 8.2GB
- Available builds in mradermacher/WeVisDoc-4B-i1-GGUF: IQ1_S 1.1GB / IQ1_M 1.2GB / IQ2_XXS 1.3GB / IQ2_XS 1.4GB / IQ2_S 1.5GB / IQ2_M 1.6GB / Q2_K_S 1.6GB / Q2_K 1.7GB / IQ3_XXS 1.7GB / IQ3_XS 1.8GB / Q3_K_S 1.9GB / IQ3_S 1.9GB / IQ3_M 2.0GB / Q3_K_M 2.1GB / Q3_K_L 2.2GB / IQ4_XS 2.3GB / Q4_0 2.4GB / IQ4_NL 2.4GB / Q4_K_S 2.4GB / Q4_K_M 2.5GB / Q4_1 2.6GB / Q5_K_S 2.9GB / Q5_K_M 2.9GB / Q6_K 3.4GB
In addition, 1 converted build(s) from other uploaders exist on Hugging Face; this site lists only builds from the model’s publisher or established quantization maintainers.
This section is appended automatically by Local Model Watch when a converted build of this model appears after publication. Memory figures are estimated from the size of the distributed files. What the quantization names mean: glossary.
Related Articles
What to Read Next
- Find models by VRAM (This model runs from the 4GB tier) → Other models that run on a 8GB GPU
- Explore the same model family → WeVisDoc family overview (1 articles, 2 converted builds)
- What Q5_K_S, Q8_0 mean and where to get this model → GGUF format guide and models / Quantization and model-format glossary
- Learn about the publisher → Tencent: models, licenses and articles
Sources
Update History
- 2026-09-20: Added converted builds to “Quantized and Converted Variants”: mradermacher/WeVisDoc-4B-GGUF, mradermacher/WeVisDoc-4B-i1-GGUF
- 2026-09-20: Updated the hardware requirements table with the actual file sizes of mradermacher/WeVisDoc-4B-GGUF.
- 2026-09-24: Rebuilt the article: Added a “can you run it locally?" verdict from the distribution formats, converted builds, engine registries, license terms and measured compression
- 2026-09-29: Added our own measurements: Japanese token efficiency, what is inside the GGUF file.
- 2026-09-29: Added our own measurements: CPU speed and answers to Japanese questions.
- 2026-09-29: Added our own measurements: quality loss by quantization level.

