space ocr
文章文件
comparison

在找 Amazon Textract 的替代方案嗎?

公允、經過事實查核地探討何時該選擇 Amazon Textract 的替代方案——可驗證的逐值座標、CJK(日文/韓文/中文)支援、可查詢的表格、單一固定定價、免設定 AWS——並以即時 Demo 加以證明。

8 分鐘閱讀· 2026-06-25

Amazon Textract 是一個能力出色、相當成熟的 OCR 服務,對於一條以 AWS 為核心、大規模處理英文文件的流水線來說,把它當作預設選擇是合理的。但「能力出色」和「適合你這份工作」並不是同一件事,而有幾個實際的限制,會讓人開始尋找 Amazon Textract 的替代方案

  • 不支援 CJK。 Textract 的印刷文字、表單和表格功能涵蓋一組拉丁字母語言(英文、法文、德文、義大利文、葡萄牙文、西班牙文);手寫、發票/收據(AnalyzeExpense)、證件(AnalyzeID)和 Queries 則僅限英文。日文、韓文和中文都不在清單上。
  • AWS 的引力。 用它就意味著要有一個 AWS 帳號、IAM、SDK、一個有支援的區域,通常還有 S3——如果你只是想送一張影像、拿回欄位,這就是一筆實實在在的設定成本。
  • 按功能堆疊的單頁計價。 你按頁付費,費率取決於你呼叫的是哪個功能(純文字 vs. 表單 vs. 表格 vs. queries vs. expense),而把多個功能組合起來會讓成本疊加。
  • 沒有內建的逐值審核 UI。 Textract 回傳信心分數;人在環中的審核是一個另外的服務(Amazon Augmented AI/A2I),要你自己接起來。

這份指南是一份公允的比較——Textract 強在哪、以及像 space-ocr 這樣的替代方案適合用在哪——而且它一開頭就用一個你真的能親自核對的即時 Demo,而不是一張要你照單全收的功能對照表。

先看證據:一個你可以核對的擷取結果

大多數 OCR 廠商最不願意攤在你面前的一件事,就是一個每個值都能指回它在頁面上原始位置的擷取結果。把滑鼠移到下方任一欄位上——收據上框起來的地方,就是這個值被讀出來的位置,而每個值都帶著一個比對命中率(match ratio),說明它有多少真的在頁面上被找到了。

Source receipts with extracted-field bounding boxes
Verified fields
KINSHO · 合計 2,045
ライフ · 合計 4,286

Every value carries a verified on-page location — bbox + 4-point vertices + match_ratio — on a 0–1000 normalized grid (0,0 top-left → 1000,1000 bottom-right), the same shape the live API returns. Hover a field to trace it back to the pixels it came from.

Demo每個擷取出的欄位都帶著自己的定界框與 <b>match ratio(比對命中率)</b>——不只是一個值,還包括它落在頁面上的哪個位置、以及它比對得有多好。
每個擷取出的欄位都帶著自己的定界框與 match ratio(比對命中率)——不只是一個值,還包括它落在頁面上的哪個位置、以及它比對得有多好。

評估 Textract 替代方案時該比較什麼

這兩個工具都會讀文件,並回傳帶座標的結構化資料。差別在於:你如何驗證一個值、哪些語言被涵蓋、資料如何離開工具,以及起步要花多少成本。下表為兩者列出經過驗證的事實——把它當成衡量你自己工作負載的檢查清單。

能力Amazon Textractspace-ocr
定界框有——每個 block 一個正規化 0–1 的 BoundingBox 加一個 Polygon有——每個值一個 0–1000 正規化的 bbox 加有方向的 vertices
逐值信心每個 block 一個辨識信心(%)match_ratio——該值的字元真正在頁面上被定位到的比例——再加一個 bbox_source 標籤
內建逐值審核 UITextract 本身沒有;人工審核是另一個服務(Amazon A2I)內建於 App——點一個儲存格,它在原圖上的確切區域就會亮起來
收據/發票欄位AnalyzeExpense(另一個 API),僅限英文templateId receiptinvoice 或你自訂的 fields,任何支援的語言皆可
明細項目AnalyzeExpense 的明細項目(ITEM/QUANTITY/PRICE)一個帶 childrenarray 欄位,每個儲存格各自定位
日文/韓文/中文未列入(6 種拉丁字母語言;Expense/ID/手寫僅限英文)一個引擎自動偵測日文、韓文、中文、英文等等
可查詢的儲存結果由你自己儲存與查詢已儲存的表格可透過 GET /viewwheresortselect)在伺服器端查詢——不重跑 OCR,也不另外收費
CSV 匯出你自己從 JSON 兜出來一鍵——UTF-8 BOM,明細項目已展開
計價模式按頁、按功能計費;組合功能會疊加成本;還要再加上一個 AWS 帳號單一固定 每張影像 ¥10(約 $0.05);免費方案每月 100 次掃描、免綁卡;Pro 每月 $39
設定AWS 帳號 + IAM + SDK,區域性服務,通常還有 S3一個帶 Bearer 金鑰的 HTTPS 呼叫;另有 Claude Code 外掛
✓ Verified

關於「可驗證」:這些座標不是聽模型一面之詞得來的。 語言模型只回傳每個欄位的文字——外加它用到了哪些 word token 的提示——但從不自己給出那些框。引擎接著拿這段文字,去跟視覺 OCR 在頁面上實際偵測到的符號做字元層級的比對,於是框會落在這些字元真正被找到的像素上,而每個值也會得到一個 match_ratio,代表它被定位到的程度(一個欄位在 ≥ 0.85 時被視為高信心命中)。模型給的 token 提示可能有雜訊——它有時會在重複的列之間把提示張冠李戴——所以系統用欄一致性與列一致性檢查來驗證它們,而不是盲目相信。重點不在於 AI 不會出錯——而在於每個值都被拿回頁面上重新核對過,並附上一個分數說明它比對得有多好。

Textract 在哪些情況下是更好的選擇

一場公允的比較,會點名既有者勝出的地方。以下情況請選 Textract:

  • 已經深耕 AWS,想要一個能直接接進 S3 → Lambda → Textract、搭配你既有的 IAM 和 SNS 的 OCR。
  • 你的文件是英文/拉丁字母,而且你需要在極大規模下處理表單、表格和 queries。
  • 你想要針對自己文件類型訓練的自訂轉接器(adapter),或是 AWS 原生的合規與資料落地保證。

如果這就是你,Textract 非常合適,換成替代方案能帶給你的好處有限。

space-ocr 反而適合用在哪

當下列其中一項或多項對你很重要時,Textract 的替代方案就有了用武之地:

  • 你要處理日文、韓文或中文文件。 space-ocr 用同一個引擎跑 CJK 和拉丁字母,並自動偵測語言——不必設定任何語言參數。
  • 你想驗證,而不只是相信。 每個值都連同它在頁面上的框和一個 match_ratio 一起回傳,點一個儲存格就會精確高亮它被讀出來的位置——稽核是內建的,而不是另一個要你自己接起來的服務。
  • 你不想自己架設儲存。 結果落在一張你可以在伺服器端查詢(GET /view)並一鍵匯出成 CSV 的表格裡——不用資料庫,也不用 AWS 帳號。
  • 你想要可預估的定價。 單一固定每張影像 ¥10、每月 100 次掃描、免綁信用卡的免費方案,以及每月 $39 的 Pro 方案——不會按功能堆疊頁數計費。
  • 你用 Claude 來打造東西。 有一個兩行就裝好的 Claude Code 外掛,以及一個零依賴的 Python 用戶端。

整個呼叫就是一個 HTTP request——不用 SDK,引擎也不用對 PDF 做前處理(它吃的是點陣影像:JPEG、PNG、GIF、BMP、TIFF、WebP)。

擷取一張發票——一個 request、Bearer 金鑰、免 AWS
1
2
3
4
5
6
7
8
curl -s https://api.space-ocr.com/ocr/fields \
  -H "Authorization: Bearer $SPACE_OCR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "image": "https://example.com/invoice.jpg",
    "imageType": "url",
    "templateId": "invoice"
  }'

每個值都會帶著一個 bbox(0–1000 網格上的 { xmin, ymin, xmax, ymax })、四個 vertices(一個會跟著手機歪斜照片走的有方向定界框)、一個 match_ratio,以及一個 bbox_source 一起回來。完整的座標模型,請看 一個帶定界框的 OCR API;至於非同步、以 Webhook 驅動的那一面,請看 發票資料擷取 API 指南

Demo點選任一儲存格,對應的區域就會在原圖上亮起來——這正是 Textract 丟給另一個服務去處理的逐值驗證。
點選任一儲存格,對應的區域就會在原圖上亮起來——這正是 Textract 丟給另一個服務去處理的逐值驗證。

語言:最清楚的分界線

如果你的文件是日文收據、韓文發票或中文表單,這通常就是決定性因素。Textract 的印刷文字、表單和表格功能支援六種拉丁字母語言,而它的手寫、AnalyzeExpense、AnalyzeID 和 Queries 功能僅限英文——日文、韓文和中文都不在支援清單上。space-ocr 在同一個引擎裡把多種文字正規化(全形與半形字元、連字號變體、CJK 間距、直書漢字、混排文字),並自動偵測語言,不必傳任何提示。

定價:按功能計頁 vs. 單張固定費率

Textract 採用按頁、按用量的計價,費率取決於功能——純文字偵測的計費方式不同於表單、表格、queries 或 AnalyzeExpense,而在同一頁上呼叫多個功能會讓成本疊加——這一切還要再加上一個 AWS 帳號。space-ocr 則是單一固定 每張影像 ¥10(約 $0.05),無論你拉出多少欄位都一樣,並有一個每月 100 次掃描、免綁信用卡的免費方案,以及每月 $39 的 Pro 方案,內含 1,100 次掃描、團隊共享,和 100 GB 儲存空間。擷取失敗不收費,而查詢已儲存的表格(GET /view)是免費的。

如何把 space-ocr 當作 Textract 替代方案來試

  1. 拿一把金鑰——免 AWS 帳號
    註冊免費方案(每月 100 次掃描、免綁信用卡),取得你的 spocr_ API 金鑰。不必設定 IAM、區域或 S3。
  2. 送出影像
    把文件 POST 到 /ocr/fields,imageType 用「url」或「base64」。引擎吃的是點陣影像(JPEG、PNG、GIF、BMP、TIFF、WebP);語言會自動偵測。
  3. 用範本或你自己的欄位
    常見情況傳 templateId「receipt」或「invoice」,或提供你自己的 fields——包括一個帶 children 的 array 欄位來處理明細項目。
  4. 驗證每個值
    讀取每個值的 bbox、vertices、match_ratio 和 bbox_source。在 App 裡,點一個儲存格就能精確高亮它被讀出來的位置;match_ratio 低於 0.85 會把一個值標記出來,值得再看仔細一點。
  5. 查詢或匯出——不必自建儲存
    用 /upload 把影像推進一張表格,用 GET /view(where、sort、select)在伺服器端查詢,或下載帶有展開明細項目的 CSV——不用資料庫,也不收重跑 OCR 的費用。
有免費的 Amazon Textract 替代方案嗎?
space-ocr 有一個每月 100 次掃描、免綁信用卡、免 AWS 帳號的免費方案。超過之後是單一固定每張影像 ¥10(約 $0.05),而 Pro 每月 $39,含 1,100 次掃描。不像 Textract 按功能、按頁的模式,價格不會隨你擷取多少欄位而改變,而且擷取失敗不收費。
space-ocr 支援 Textract 沒有列出的日文、韓文和中文嗎?
支援。space-ocr 用一個引擎跑日文、韓文、中文、英文和其他文字,並自動偵測語言——不必設定任何語言參數。Amazon Textract 的印刷文字/表單/表格功能支援六種拉丁字母語言,而它的手寫、AnalyzeExpense、AnalyzeID 和 Queries 功能僅限英文,所以 CJK 文件是選擇替代方案的常見原因。
我要怎麼驗證 OCR 擷取到了什麼?
每個值都連同一個定界框、四個有方向的 vertices,以及一個 match_ratio 一起回傳——也就是該值的字元真正在頁面上被定位到的比例(在 0.85 及以上視為高信心命中)。在 App 裡你點任一儲存格,就能高亮它被讀出來的確切區域。用 Textract 你會得到一個辨識信心分數,而逐值的人工審核是由另一個服務——Amazon Augmented AI(A2I)——提供。
用 space-ocr 需要 AWS 帳號嗎?
不需要。space-ocr 是一個獨立的 HTTP REST API,位於 https://api.space-ocr.com。你用一個 Bearer 金鑰為每個 request 做驗證(不用 IAM、不用選區域、不用 S3),另外還有一個兩行就裝好的 Claude Code 外掛,以及一個零依賴的 Python 用戶端。把影像以 URL 或 base64 送出,結構化欄位就會內嵌回傳。
space-ocr 能像 AnalyzeExpense 一樣擷取收據和發票的明細項目嗎?
可以。你把明細項目以 type 為「array」的欄位來請求,其 children 描述一列的內容(description、quantity、unit price 等等),或套用內建的「receipt」或「invoice」範本。每個儲存格都保留自己的定界框,所以換行折行或合併的明細項目依然可追溯——而且不像 AnalyzeExpense,它不限於英文。

用你自己的文件,試試一個可驗證的 Textract 替代方案

免費方案——每月 100 次掃描,免綁信用卡、免 AWS 帳號。每個值都連同它在頁面上的位置和一個比對命中率一起回傳。

相關文章