這是一個或許對你有用的社群
《專案實戰(影片)》:從書中學,往事上“練” 《網際網路高頻面試題》:面朝簡歷學習,春暖花開 《架構 x 系統設計》:摧枯拉朽,掌控面試高頻場景題 《精進 Java 學習指南》:系統學習,網際網路主流技術棧 《必讀 Java 原始碼專欄》:知其然,知其所以然
這是一個或許對你有用的開源專案
國產 Star 破 10w+ 的開源專案,前端包括管理後臺 + 微信小程式,後端支援單體和微服務架構。功能涵蓋 RBAC 許可權、SaaS 多租戶、資料許可權、商城、支付、工作流、大屏報表、微信公眾號、ERP、CRM、AI 大模型等等功能:
Boot 多模組架構:https://gitee.com/zhijiantianya/ruoyi-vue-pro Cloud 微服務架構:https://gitee.com/zhijiantianya/yudao-cloud 影片教程:https://doc.iocoder.cn 【國內首批】支援 JDK 17/21 + SpringBoot 3.3、JDK 8/11 + Spring Boot 2.7 雙版本
不知道各位小夥伴平時工作中有沒有一些將別的格式的文件轉為 Markdown 的需求?
最近發現了一個好玩的開源專案,能夠幫我們把二十多種不同格式的文章利用 AI 轉為 markdown,非常好用。
一 Zerox OCR

Zerox OCR 是一個基於 GPT 技術的 OCR 工具,它能夠將 PDF、DOCX 等檔案轉換為 Markdown 格式。
相比於傳統的 OCR 工具,Zerox OCR 有很多不一樣的地方,具體體現在:
-
零配置:Zerox OCR 的一個顯著特點是它的零配置特性,使用者只需提供檔案和 API token,即可輕鬆實現文字提取,省去了繁瑣的引數設定。 -
高精度識別:Zerox OCR 使用 GPT-4o-mini 模型進行文字識別,能夠處理完全陌生的 PDF、圖片等文件型別,不需要事先訓練資料,即可提供高精度的 OCR 結果。 -
Markdown 輸出格式:在 OCR 轉換過程中,Zerox 將每個識別的頁面轉化為簡潔的 Markdown 格式,方便對文字進行後期處理和整理。 -
支援複雜文件:Zerox 不僅可以處理簡單的文字,還能夠處理包含表格、圖表等複雜佈局的檔案。無論是掃描版 PDF 還是其他格式,Zerox 都可以對它們進行 OCR 識別,生成準確的文字內容。 -
本地執行與 API 支援:Zerox 支援本地執行,無需擔心隱私洩露問題。此外,它還提供了 API 介面,方便整合到應用中,提升業務流程的自動化和效率。 -
開源專案:Zerox 是一個開源專案,使用 MIT 許可證,使用者可以免費使用其核心功能。
Zerox OCR 以其高效準確、易用性和廣泛的應用前景,成為了文件處理和資料提取領域的一個重要工具。開發者和使用者可以透過訪問 Zerox 的 GitHub 頁面來體驗這款 OCR 神器,開啟高效文字提取之旅。
GitHub 地址:https://github.com/getomni-ai/zerox
基於 Spring Boot + MyBatis Plus + Vue & Element 實現的後臺管理系統 + 使用者小程式,支援 RBAC 動態許可權、多租戶、資料許可權、工作流、三方登入、支付、簡訊、商城等功能
專案地址:https://github.com/YunaiV/ruoyi-vue-pro 影片教程:https://doc.iocoder.cn/video/
二 支援的文件格式
那麼這個開源工具到底都支援哪些不同格式的文件呢?
我們來看下官方給的這個支援的文件列表:
["pdf", // Portable Document Format"doc", // Microsoft Word 97-2003"docx", // Microsoft Word 2007-2019"odt", // OpenDocument Text"ott", // OpenDocument Text Template"rtf", // Rich Text Format"txt", // Plain Text"html", // HTML Document"htm", // HTML Document (alternative extension)"xml", // XML Document"wps", // Microsoft Works Word Processor"wpd", // WordPerfect Document"xls", // Microsoft Excel 97-2003"xlsx", // Microsoft Excel 2007-2019"ods", // OpenDocument Spreadsheet"ots", // OpenDocument Spreadsheet Template"csv", // Comma-Separated Values"tsv", // Tab-Separated Values"ppt", // Microsoft PowerPoint 97-2003"pptx", // Microsoft PowerPoint 2007-2019"odp", // OpenDocument Presentation"otp", // OpenDocument Presentation Template]
可以看到,主流的文件格式都是支援的。
基於 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 實現的後臺管理系統 + 使用者小程式,支援 RBAC 動態許可權、多租戶、資料許可權、工作流、三方登入、支付、簡訊、商城等功能
專案地址:https://github.com/YunaiV/yudao-cloud 影片教程:https://doc.iocoder.cn/video/
三 實踐
最後我們再來看下這個工具該如何使用。
首先來安裝:
npm install zerox
Zerox 使用 graphicsmagick 和 ghostscript 進行 PDF 到影像的轉換。這些工具應會自動下載,但有時需要手動安裝。
手動安裝命令如下:
sudo apt-get updatesudo apt-get install -y graphicsmagick
裝好之後就可以使用了,使用的時候可以使用一個線上的檔案路徑:
import { zerox } from "zerox";const result = await zerox({ filePath: "https://omni-demo-data.s3.amazonaws.com/test/cs101.pdf", openaiAPIKey: process.env.OPENAI_API_KEY,});
如果是本地檔案則透過如下方式來解析:
import path from "path";import { zerox } from "zerox";const result = await zerox({ filePath: path.resolve(__dirname, "./cs101.pdf"), openaiAPIKey: process.env.OPENAI_API_KEY,});
最終解析結果類似下面這樣:
{ completionTime: 10038, fileName: 'invoice_36258', inputTokens: 25543, outputTokens: 210, pages: [ { content: '# INVOICE # 36258\n' +'**Date:** Mar 06 2012 \n' +'**Ship Mode:** First Class \n' +'**Balance Due:** $50.10 \n' +'## Bill To:\n' +'Aaron Bergman \n' +'98103, Seattle, \n' +'Washington, United States \n' +'## Ship To:\n' +'Aaron Bergman \n' +'98103, Seattle, \n' +'Washington, United States \n' +'\n' +'| Item | Quantity | Rate | Amount |\n' +'|--------------------------------------------|----------|--------|---------|\n' +"| Global Push Button Manager's Chair, Indigo | 1 | $48.71 | $48.71 |\n" +'| Chairs, Furniture, FUR-CH-4421 | | | |\n' +'\n' +'**Subtotal:** $48.71 \n' +'**Discount (20%):** $9.74 \n' +'**Shipping:** $11.13 \n' +'**Total:** $50.10 \n' +'---\n' +'**Notes:** \n' +'Thanks for your business! \n' +'**Terms:** \n' +'Order ID : CA-2012-AB10015140-40974 ', page: 1, contentLength: 747 } ]}
這個用法是不是非常 Easy,如果小夥伴看過鬆哥的 vhr 或者 tienchin,對 Vue 的使用有基本的瞭解,那麼上面這段程式碼可就太好明白了。
好啦,更多功能小夥伴們可以檢視 Zerox 官方文件,這裡就不囉嗦了。
歡迎加入我的知識星球,全面提升技術能力。

星球的內容包括:專案實戰、面試招聘、原始碼解析、學習路線。





文章有幫助的話,在看,轉發吧。
謝謝支援喲 (*^__^*)