對於每月處理數千份公用事業賬單的客服團隊來說,準確解析複雜的多頁文件是一項挑戰。賬單格式不一、表格密集、版式多樣,使得快速提取準確資訊變得困難,進而造成響應延遲、計費錯誤和客戶不滿。隨著文件量增長,這些問題會不斷累積,讓組織難以利用手中已有的資料。
Amazon Bedrock 與 Amazon Textract 整合提供檢索和生成能力。Textract 以高準確率抽取結構化與非結構化內容,Bedrock 提供生成式 AI,使組織從人工翻閱文件轉向程式化查詢,從而大規模解鎖賬單中的可行洞察,帶來更快更準的客戶互動。本文將演示如何與 PDF 和影像格式的公用事業賬單對話、解析分析內容、標記相關表格,幫助 LLM 提取最有價值的資訊。相關程式碼已釋出在 GitHub。
客戶服務團隊收到的賬單查詢涉及計費、用量、支付和客戶服務等多個領域,原始檔包括 PDF、DOCX、TXT、HTML 和 XLSX。最初團隊嘗試直接把賬單原樣輸入 RAG 模型,結果並不理想:LLM 會漏掉付款到期日、金額和賬號等關鍵細節,有時還會產生幻覺,給出錯誤或不相關內容;同時不同格式導致模型表現不穩定。這讓他們認識到,簡單載入原始文件無法得到可靠準確的答案,必須對賬單進行預處理和增強。
該方案支援 PDF、DOCX、TXT、HTML、XLSX、PNG。Amazon Textract 可從多頁 PDF 中提取文本,包括複雜版面與嵌入影像;能解析 Word 文件中的表格、圖片和物件;能從 HTML 標籤及 Excel 單元格中讀取結構化資料;也能讀取普通文本和 PNG 圖片。透過整合 Amazon Textract 與 Amazon Bedrock,可以實現高階文本提取:Textract 預處理各類賬單,去除噪聲和不相關資訊;然後利用上下文理解對資料做標註和打標,讓 LLM 更容易處理並生成準確響應。
部署方面,GitHub 倉庫提供 shell 指令碼,執行 bash custom_kb_deployment_setup.sh 即可建立 AWS CloudFormation 棧。該棧會建立 Lambda 執行角色、Lambda layer、兩個 Lambda 函式、S3 儲存桶、OpenSearch Serverless 叢集、Amazon Bedrock Knowledge Bases 以及相應的 IAM 角色。部署完成後,需要在 S3 控制台找到名為 document--的桶,建立 raw_files 資料夾並上傳示例賬單。
上傳檔案會自動觸發文件解析 Lambda。Amazon Textract 作業處理原始檔案並將結果儲存到 parsed_files,隨後另一個 Lambda 將檔案轉換為 TXT 格式,最終輸出到 parsed_kb_documents。接著在 Amazon Bedrock 控制台選擇知識庫、資料來源並執行 Sync,等待同步完成。測試時,在文本知識庫配置中選擇 Amazon Nova Micro 模型,即可在右側文本框針對賬單提問。文中附帶的對比圖顯示,使用該自定義知識庫方案能得到更完整、準確的輸出,而不用該方案時模型容易遺漏關鍵資訊或產生幻覺。
生產環境中部署 RAG 方案時,建議啟用 Amazon Bedrock Guardrails 過濾有害內容、阻斷敏感話題、對輸入輸出中的個人資訊做脫敏,並透過 grounding validation 檢查模型回答是否來自檢索文件,以減少幻覺。該方案尤其適合處理大量結構化文件的組織,未來還可擴充套件支援更多文件型別、整合更多 AWS 服務,或開發友好的前端介面,幫助使用者更方便地與知識庫互動。