![]()
大家好,我是 Ai 學習的老章
大模型 OCR 的黃金時代來了,小紅書 dots.ocr-3b、deepseek-ocr-3b、阿里 qwen3-vl-2b、百度 paddleocr-vl-0.9B......
模型越做越小,精度越來越高
剛剛,OCR 領域迎來新選手,騰訊的文檔理解模型——混元 OCR 開源了
![]()
端到端訓推一體:不同于其他開源的 OCR 專家模型或系統,HunyuanOCR 模型的訓練和推理均采用全端到端范式。通過規模化的高質量應用導向數據,結合在線強化學習,模型表現出了非常穩健的端到端推理能力,有效規避了級聯方案常見的相關誤差累積問題
在文檔解析、視覺問答和翻譯方面達到 SOTA
1B 參數,端到端運行,大幅降低了部署成本
一個很離譜的成績是 HunyuanOCR 僅使用 1B 參數量,在拍照翻譯任務上取得了與 Qwen3-VL-235B 相當的效果。
它可以處理街道視圖、手寫體、藝術文本的文字識別,復雜文檔處理(HTML/LaTeX 中的表格/公式),視頻字幕提取,以及端到端的照片翻譯(支持 14 種語言)
![]()
放幾個高清的案例![]()
![]()
![]()
![]()
![]()
![]()
![]()
最后這個案例,后面做論文翻譯,又有新玩法了
官方提供了不同任務下的提示詞模板
任務提示詞
檢測與識別
檢測并識別圖片中的文字,將文本坐標格式化輸出
解析
? 識別圖片中的公式,用 LaTeX 格式表示
? 把圖中的表格解析為 HTML
? 解析圖中的圖表,對于流程圖使用 Mermaid 格式表示,其他圖表使用 Markdown 格式表示。
? 提取文檔圖片中正文的所有信息用 markdown 格式表示,其中頁眉、頁腳部分忽略,表格用 html 格式表達,文檔中公式用 latex 格式表示,按照閱讀順序組織進行解析
信息抽取
? 輸出 Key 的值
? 提取圖片中的:['key1','key2', ...] 的字段內容,并按照 JSON 格式返回
? 提取圖片中的字幕
翻譯
先提取文字,再將文字內容翻譯為英文。若是文檔,則其中頁眉、頁腳忽略。公式用 latex 格式表示,表格用 html 格式表示
在線體驗
https://huggingface.co/spaces/tencent/HunyuanOCR
![]()
我試了一下,拍照圖片 + 雙排顯示 + 公式、圖表情況下,識別的蠻精準的
![]()
看前端樣式是用 Gradio 實現的,如果模型本地化部署了的話,可以直接把代碼 copy 下來,python 運行就能在本機實現這個應用了
代碼:https://huggingface.co/spaces/tencent/HunyuanOCR/blob/main/app.py
功能上挺齊全的:多場景文字檢測與識別、多粒度文檔解析、卡證票據識別和結構化輸出、視覺問答、跨語言翻譯
![]()
本地部署
模型文件只有 2GB,比 DeepSeek-OCR 的 6.7GB 小太多了
不過我看 HunyuanOCR@GitHub 的 README 中寫需要 GPU 顯存是 80GB,有點離譜啊
它會不會把顯存和硬盤容量搞反了?
![]()
國內鏡像:https://modelscope.cn/models/deepseek-ai/DeepSeek-OCR
![]()
https://huggingface.co/tencent/HunyuanOCR
官方建議 vLLM 部署模型以獲取更好的推理性能和精度,因為 Transformers 相比 vLLM 框架存在一定的性能下滑
但是目前只能安裝 vLLM nightly 了,穩定版的 vLLM 要支持 HunyuanOCR 估計需要 v0.11.3 了
pip install vllm --extra-index-url https://wheels.vllm.ai/nightly
在線推理
vllm serve tencent/HunyuanOCR \
--no-enable-prefix-caching \
--mm-processor-cache-gb 0
OpenAI API 接口調用
from openai import OpenAI
client = OpenAI(
api_key="EMPTY",
base_url="http://localhost:8000/v1",
timeout=3600
)
messages = [
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/chat-ui/tools-dark.png"
}
},
{
"type": "text",
"text": (
"Extract all information from the main body of the document image "
"and represent it in markdown format, ignoring headers and footers."
"Tables should be expressed in HTML format, formulas in the document "
"should be represented using LaTeX format, and the parsing should be "
"organized according to the reading order."
)
}
]
}
]response = client.chat.completions.create(
model="tencent/HunyuanOCR",
messages=messages,
temperature=0.0,
)
print(f"Generated text: {response.choices[0].message.content}")
我實測的話,模型已下載,準備等 vLLM:v0.11.3 出來之后了
![]()
參考:
官方簡介:https://hunyuan.tencent.com/vision/zh?tabIndex=0
HunyuanOCR 項目 README:https://huggingface.co/tencent/HunyuanOCR
vLLM 官方文檔:https://docs.vllm.ai/projects/recipes/en/latest/Tencent-Hunyuan/HunyuanOCR.html
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.