章节 01
导读 / 主楼:AI自動化解決語言練習題:YOLO視覺檢測結合多模態大語言模型的創新應用
本文介紹一個結合YOLO物件檢測與多模態大語言模型的智能工具,能夠自動識別語言練習卷中的填空位置並生成正確答案,為語言學習者和教育工作者提供高效的自動化解決方案。
正文
本文介紹一個結合YOLO物件檢測與多模態大語言模型的智能工具,能夠自動識別語言練習卷中的填空位置並生成正確答案,為語言學習者和教育工作者提供高效的自動化解決方案。
章节 01
本文介紹一個結合YOLO物件檢測與多模態大語言模型的智能工具,能夠自動識別語言練習卷中的填空位置並生成正確答案,為語言學習者和教育工作者提供高效的自動化解決方案。
章节 02
語言學習過程中,填空題、克漏字測驗和語法練習是最常見的練習形式。然而,對於自學者或需要批改大量作業的教育工作者來說,這些練習的完成和檢查往往耗時費力。Solver專案正是為了解決這一痛點而誕生——它結合了電腦視覺領域的YOLO物件檢測技術和多模態大語言模型的語義理解能力,實現了練習卷填空的自動化檢測與解答。
章节 03
專案的核心創新之一在於使用YOLOv26模型進行填空區域的精準定位。與傳統的基於規則的影像處理方法不同,YOLO模型通過深度學習從大量練習卷樣本中學習到了填空的視覺特徵——無論是下劃線、括號還是空白區域,都能被準確識別。
為了獲得高品質的檢測模型,開發者設計了一套完整的資料準備流程:
檢測結果會經過IoU(交併比)非極大值抑制處理,過濾掉重疊的檢測框,只保留置信度最高的結果。隨後,系統會按照自然閱讀順序(從上到下、每行內從左到右)對檢測到的填空進行排序,確保後續解答的順序與人類閱讀習慣一致。
章节 04
在定位填空位置後,專案利用多模態大語言模型的視覺理解能力來生成答案。系統支持兩種模式:
雲端模式:使用Google Gemini API(預設為gemini-2.5-flash模型)。這種模式的優勢在於無需本地GPU資源,且能夠利用Google持續更新的模型能力。使用者只需設置GOOGLE_API_KEY環境變數即可使用。
本地模式:通過Ollama框架運行本地模型(如qwen3.5:35b)。這種模式適合對資料隱私有嚴格要求的場景,且無需支付API費用。
模型的輸入包含兩張影像:原始練習卷和標註了填空編號的標記影像。這種設計讓模型能夠同時看到完整的語境和需要填空的具體位置,從而生成更準確的答案。模型輸出為結構化的JSON格式,包含每個編號對應的答案。
章节 05
最後一步是將生成的答案渲染回原始影像。系統會根據填空區域的大小動態調整文字尺寸,確保答案能夠適當地填入空白處。最終輸出為一份完整的解答後練習卷影像,可以直接保存或列印。
章节 06
對於開發者和進階使用者,專案提供了Python API:
from main import WorksheetSolver
solver = WorksheetSolver(
path="worksheet.png",
gap_detection_model_path="./model/gap_detection_model.pt",
llm_model_name="gemini-2.5-flash",
local=False,
think=True,
thinking_budget=2048
)
gaps, img = solver.detect_gaps()
marked = solver.mark_gaps(img, gaps)
solutions = solver.solve_all_gaps(marked)
solver.fill_gaps_in_image("worksheet.png", solutions, "solved.png")
章节 07
對於一般使用者,專案提供了基於Flask的Web應用程式。啟動後,使用者可以在瀏覽器中上傳練習卷影像,選擇模型配置(雲端或本地、是否啟用深度思考模式),然後查看和下載解答後的結果。
章节 08
專案還提供了Windows獨立執行檔,無需安裝Python環境即可運行。執行檔會自動從GitHub Releases下載預訓練的填空檢測模型,並在本地啟動Web服務。