337p人体粉嫩胞高清图片,97人妻精品一区二区三区在线 ,日本少妇自慰免费完整版,99精品国产福久久久久久,久久精品国产亚洲av热一区,国产aaaaaa一级毛片,国产99久久九九精品无码,久久精品国产亚洲AV成人公司
網(wǎng)易首頁 > 網(wǎng)易號 > 正文 申請入駐

擼了一個 OCR 大模型對比工具:DeepSeekOCR、PaddleOCR 和 混元OCR

0
分享至

大家好,我是 Ai 學(xué)習(xí)的老章

最近的 OCR 大模型我都做了本地部署和測試,還寫了一個 API 統(tǒng)一對接這三個模型

?
?
??

很多同學(xué)問選哪個?

成年人怎么還在做選擇呢,必須全都要啊

我用 FastAPI 框架擼了一個簡單的 OCR 模型對比工具,可以實現(xiàn)同樣的提示詞 + 圖片/PDF,利用 Python 多線程并行調(diào)用 DeepSeek、Paddle 和 混元這三個模型的 API 進(jìn)行解析,并將結(jié)果并排展示。

前端其實純 HTML+CSS+js 實現(xiàn),為了內(nèi)網(wǎng)部署,不依賴任何 CND。

使用也很簡單,圖片/PDF 上傳之后,輸入提示詞,沒有特殊要求,使用默認(rèn)就行。

點擊 Run OCR Comparison 即可

三者都很快,內(nèi)置了輕量級 Markdown 解析其,自動渲染結(jié)果。

也可以切換到識別后的原始 Markdown,支持一鍵 copy

核心代碼如下(完整代碼接近 600 行,大多是 HTML 相關(guān)):

我這里主要是模型本地部署,內(nèi)網(wǎng)運行的,沒再折騰線上部署。感興趣的同學(xué)可以試試,OCR 模型 API 部分替換成官方/第三方的 API,代碼稍作修改就可以在線部署運行了。

#!/usr/bin/env python3
"""
OCR Comparison Web App - 美化版,不依賴外部 CDN
"""
import os
import re
import shutil
import tempfile
import requests
from concurrent.futures import ThreadPoolExecutor

import uvicorn
from fastapi import FastAPI, File, Form, UploadFile
from fastapi.responses import HTMLResponse

app = FastAPI(title="OCR Comparison")

# --- Configuration ---
MODELS = {
"DeepSeek-OCR": "http://localhost:8002/models/v1//deepseek-ocr/inference",
"PaddleOCR": "http://localhost:8003/models/v1/PaddleOCR/inference",
"HunyuanOCR": "http://localhost:8004/models/v1/HunyuanOCR/inference",
}

def call_api(model_name, api_url, file_path, prompt):
"""調(diào)用單個 OCR API"""
print(f"[INFO] Calling {model_name}: {api_url}")
try:
with open(file_path, 'rb') as f:
resp = requests.post(
api_url,
files={'file': (os.path.basename(file_path), f)},
data={'prompt': prompt},
timeout=300
)
print(f"[INFO] {model_name} status: {resp.status_code}")
if resp.status_code == 200:
data = resp.json()
result = data.get("result", str(data))
print(f"[INFO] {model_name} result length: {len(result)}")
return result
returnf"HTTP Error: {resp.status_code}"
except Exception as e:
print(f"[ERROR] {model_name}: {e}")
returnf"Error: {e}"

HTML_PAGE = """

省略

"""

@app.get("/", response_class=HTMLResponse)
asyncdef index():
return HTML_PAGE

@app.post("/api/compare")
asyncdef compare(
file: UploadFile = File(...),
prompt: str = Form("Convert the document to markdown.")
):
print(f"\n{'='*60}")
print(f"[INFO] Received request: {file.filename}")
print(f"[INFO] Prompt: {prompt[:50]}...")
print(f"{'='*60}")
temp_dir = tempfile.mkdtemp()
temp_path = os.path.join(temp_dir, file.filename)
try:
with open(temp_path, "wb") as f:
content = await file.read()
f.write(content)
print(f"[INFO] Saved to: {temp_path}, size: {len(content)} bytes")
# 并行調(diào)用三個 API
results = {}
with ThreadPoolExecutor(max_workers=3) as executor:
futures = {
"deepseek": executor.submit(call_api, "DeepSeek-OCR", MODELS["DeepSeek-OCR"], temp_path, prompt),
"paddle": executor.submit(call_api, "PaddleOCR", MODELS["PaddleOCR"], temp_path, prompt),
"hunyuan": executor.submit(call_api, "HunyuanOCR", MODELS["HunyuanOCR"], temp_path, prompt),
}
for name, future in futures.items():
try:
result = future.result(timeout=310)
results[name] = result
print(f"[INFO] {name} done, length: {len(result)}")
except Exception as e:
results[name] = f"Error: {e}"
print(f"[ERROR] {name}: {e}")
print(f"[INFO] All done. Returning results.")
print(f"[DEBUG] Results keys: {list(results.keys())}")
return results
finally:
shutil.rmtree(temp_dir, ignore_errors=True)

if __name__ == "__main__":
print("\n" + "="*60)
print("OCR Comparison Server")
print("URL: http://0.0.0.0:8080")
print("="*60 + "\n")
uvicorn.run(app, host="0.0.0.0", port=8080)

特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。

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.

相關(guān)推薦
熱點推薦
希金斯:5-8落后讓我想起了去年的決賽,和趙心童比賽將非常困難

希金斯:5-8落后讓我想起了去年的決賽,和趙心童比賽將非常困難

世界體壇觀察家
2026-04-03 07:28:31
4月2日俄烏:特朗普又放“狠話”,俄軍損失突破130萬

4月2日俄烏:特朗普又放“狠話”,俄軍損失突破130萬

山河路口
2026-04-02 17:16:01
釋永信“開光”真相大白,過程不堪入目,易中天也被牽連

釋永信“開光”真相大白,過程不堪入目,易中天也被牽連

往史過眼云煙
2026-03-24 17:05:24
隨著巴西1-0,蒙太古杯最新積分榜出爐:中國男足排名第4

隨著巴西1-0,蒙太古杯最新積分榜出爐:中國男足排名第4

側(cè)身凌空斬
2026-04-03 03:06:58
54年,張越霞被中組部通知去領(lǐng)一女孩,其竟是博古至死不知的女兒

54年,張越霞被中組部通知去領(lǐng)一女孩,其竟是博古至死不知的女兒

大運河時空
2026-04-02 08:50:03
你敢信嗎?太湖底下有2.3米厚的淤泥,可上面才蓋著不到1.9米的水

你敢信嗎?太湖底下有2.3米厚的淤泥,可上面才蓋著不到1.9米的水

掠影后有感
2026-04-01 20:26:07
以色列遭開戰(zhàn)以來最大規(guī)模導(dǎo)彈襲擊,連美軍基地都沒放過

以色列遭開戰(zhàn)以來最大規(guī)模導(dǎo)彈襲擊,連美軍基地都沒放過

起喜電影
2026-04-03 10:00:40
這6個“養(yǎng)生動作”被嚴(yán)重低估了!尤其第2個,降壓效果被科學(xué)驗證

這6個“養(yǎng)生動作”被嚴(yán)重低估了!尤其第2個,降壓效果被科學(xué)驗證

人民日報健康客戶端
2026-03-27 07:33:38
為黃金叛逃臺灣,陳寶忠駕機(jī)遭朝軍攔截,最終下場悲慘

為黃金叛逃臺灣,陳寶忠駕機(jī)遭朝軍攔截,最終下場悲慘

磊子講史
2026-03-31 11:28:08
帶貨“優(yōu)思益”產(chǎn)品,李若彤、明道等緊急致歉,“震驚、憤怒和自責(zé)”!“與輝同行”客服回應(yīng)

帶貨“優(yōu)思益”產(chǎn)品,李若彤、明道等緊急致歉,“震驚、憤怒和自責(zé)”!“與輝同行”客服回應(yīng)

每日經(jīng)濟(jì)新聞
2026-04-02 16:15:12
iPhone 半價換電池翻車,網(wǎng)友直呼被蘋果騙了!

iPhone 半價換電池翻車,網(wǎng)友直呼被蘋果騙了!

新浪財經(jīng)
2026-04-02 11:40:44
非洲少年鄭州求醫(yī),為何被網(wǎng)友集體抵觸

非洲少年鄭州求醫(yī),為何被網(wǎng)友集體抵觸

法老不說教
2026-04-02 13:39:39
車模的微笑:鏡頭后面,那個不被看見的我

車模的微笑:鏡頭后面,那個不被看見的我

疾跑的小蝸牛
2026-04-02 22:37:00
古籍記載龍長虎短手相 無名指更長之人晚年多有四種人生結(jié)局

古籍記載龍長虎短手相 無名指更長之人晚年多有四種人生結(jié)局

嘮叨說歷史
2026-03-31 14:25:43
童瑤其實挺真實的,明明一直在健身,小腹還是沒法完全平坦

童瑤其實挺真實的,明明一直在健身,小腹還是沒法完全平坦

小光侃娛樂
2026-04-01 13:15:08
美媒:美防長宣布解除禁令,允許美軍士兵在軍事基地攜帶個人槍支

美媒:美防長宣布解除禁令,允許美軍士兵在軍事基地攜帶個人槍支

環(huán)球網(wǎng)資訊
2026-04-03 10:26:20
正式無緣評獎!愛德華茲今日因傷缺戰(zhàn)活塞 確定不滿足65場規(guī)則

正式無緣評獎!愛德華茲今日因傷缺戰(zhàn)活塞 確定不滿足65場規(guī)則

羅說NBA
2026-04-03 06:54:26
有沒有人敢爆自己的瓜?網(wǎng)友:確定玩這么大嗎?

有沒有人敢爆自己的瓜?網(wǎng)友:確定玩這么大嗎?

夜深愛雜談
2026-02-18 20:55:58
官方:意大利足協(xié)主席格拉維納辭職!國家隊已連續(xù)三屆無緣世界杯

官方:意大利足協(xié)主席格拉維納辭職!國家隊已連續(xù)三屆無緣世界杯

懂球帝
2026-04-02 21:33:20
退休后我娶了45歲農(nóng)村寡婦,本以為是搭伙,洞房夜才懂啥叫真心

退休后我娶了45歲農(nóng)村寡婦,本以為是搭伙,洞房夜才懂啥叫真心

i書與房
2026-04-02 21:37:52
2026-04-03 11:15:00
Ai學(xué)習(xí)的老章 incentive-icons
Ai學(xué)習(xí)的老章
Ai學(xué)習(xí)的老章
3304文章數(shù) 11123關(guān)注度
往期回顧 全部

科技要聞

SpaceX沖刺2萬億美元估值,馬斯克野心太大

頭條要聞

鄭麗文頂住壓力毅然訪陸 洪秀柱表態(tài)發(fā)文力挺

頭條要聞

鄭麗文頂住壓力毅然訪陸 洪秀柱表態(tài)發(fā)文力挺

體育要聞

沖擊世界杯失敗,80歲老帥一氣之下病倒了

娛樂要聞

田亮一家新年全家福!森碟變清純少女

財經(jīng)要聞

全球石油危機(jī)或?qū)⒙?/h3>

汽車要聞

大眾嚴(yán)選 何懼"定終身"

態(tài)度原創(chuàng)

藝術(shù)
數(shù)碼
本地
親子
公開課

藝術(shù)要聞

吳昌碩『扇畫』老辣古拙

數(shù)碼要聞

部分三星Bespoke洗烘一體機(jī)出現(xiàn)故障,海外用戶更新后無法洗衣服

本地新聞

從學(xué)徒到世界冠軍,為什么說張雪的底氣在重慶?

親子要聞

洗頭的舒適區(qū),讓爸爸想出更多帶娃創(chuàng)意

公開課

李玫瑾:為什么性格比能力更重要?

無障礙瀏覽 進(jìn)入關(guān)懷版