分享方式:


安裝及執行容器

此內容適用於: 勾選記號 v3.0 (GA) 勾選記號 v3.1 (GA)

Azure AI 文件智慧服務是一項 Azure AI 服務,可讓您使用機器學習技術建置自動化的資料處理軟體。 文件智慧服務可讓您從文件中識別和擷取文字、索引鍵/值組、選取標記、資料表資料等等。 結果會以結構化資料形式提供,其中 ../ 包括原始檔中的關聯性。 容器只會處理提供給它們的數據,並只利用其允許存取的資源。 容器無法處理來自其他區域的數據。

在本文中,您可以瞭解如何下載、安裝及執行 Document Intelligence 容器。 這些容器可讓您在自己的環境中執行文件智慧服務。 容器非常適合用於特定的安全性和資料控管需求。

  • 文件智慧 v3.1 容器支援讀取版面配置身分證明文件收據發票模型。

  • 文件智慧 v3.0 容器支援讀取版面配置一般文件名片自訂模型。

版本支援

文件智慧版本 v3.0: 2022-08-31 (GA) (適用於所有模型) 和版本 v3.1 2023-07-31 (GA) (適用於讀取、版面配置、身分證明文件、收據和發票模型) 目前提供對容器的支援:

必要條件

若要開始,您需要使用中的 Azure 帳戶。 如果您沒有帳戶,您可以建立免費帳戶

您也需要下列項目才能使用文件智慧服務容器:

必要 目的
熟悉 Docker 您應具備對 Docker 概念 (例如登錄、存放庫、容器和容器映像等) 的基本了解,以及基本 docker 術語與命令的知識。
已安裝 Docker 引擎
  • 您必須在主機電腦上安裝 Docker 引擎。 Docker 提供可在 macOSWindowsLinux 上設定 Docker 環境的套件。 如需 Docker 和容器基本概念的入門,請參閱 Docker 概觀 \(英文\)。
  • Docker 必須設定為允許容器與 Azure 連線,以及傳送帳單資料至 Azure。
  • Windows 上,也必須將 Docker 設定為支援 Linux 容器。
文件智慧服務資源 Azure 入口網站中的單一服務 Azure AI 文件智慧服務多服務資源。 若要使用容器,您必須具有相關聯的金鑰和端點 URI。 這兩個值都可以在 Azure 入口網站文件智慧服務的 [金鑰和端點] 頁面上找到:
  • {FORM_RECOGNIZER_KEY}:兩個可用資源金鑰的其中一個。
  • {FORM_RECOGNIZER_ENDPOINT_URI}:用於追蹤計費資訊的資源端點。
選擇性 目的
Azure CLI (命令列介面) Azure CLI 可讓您使用一組線上命令來建立和管理 Azure 資源。 其可安裝在 Windows、macOS 和 Linux 環境中,且可以在 Docker 容器和 Azure Cloud Shell 中執行。

主機電腦需求

主機是可執行 Docker 容器的 x64 型電腦。 它可以是您內部部署的電腦,或是在 Azure 中裝載服務的 Docker,例如:

注意

請注意,Studio 容器無法在 Azure Kubernetes Service 中部署和執行。 僅支援本機上執行 Studio 容器。

容器的需求和建議

必要的支援容器

下表列出了您所下載的每個文件智慧容器的一個或多個支援容器。 如需詳細資訊,請參閱計費一節。

功能容器 支援容器
讀取 非必要
版面配置 非必要
商務名片 讀取
一般文件 版面配置
發票 版面配置
收據 讀取版面配置
身分證明文件 讀取
自訂範本 版面配置

注意

建議的最小值取決於 Docker 限制,而「不是」主機電腦資源。

文件智慧服務容器
容器 最小值 建議需求
Read 8 核心,10 GB 記憶體 8 核心,24 GB 記憶體
Layout 8 核心,16 GB 記憶體 8 核心,24 GB 記憶體
Business Card 8 核心,16 GB 記憶體 8 核心,24 GB 記憶體
General Document 8 核心,12 GB 記憶體 8 核心,24 GB 記憶體
ID Document 8 核心,8 GB 記憶體 8 核心,24 GB 記憶體
Invoice 8 核心,16 GB 記憶體 8 核心,24 GB 記憶體
Receipt 8 核心,11 GB 記憶體 8 核心,24 GB 記憶體
Custom Template 8 核心,16 GB 記憶體 8 核心,24 GB 記憶體
  • 每個核心必須至少 2.6 GHz 或更快。
  • 核心和記憶體會對應至 --cpus--memory 設定,用來作為 docker composedocker run 命令的一部分。

提示

您可以使用 docker images \(英文\) 命令來列出已下載的容器映像。 例如,下列命令會列出每個已下載之容器映像的識別碼、存放庫和標籤,並將它格式化為表格:

docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

IMAGE ID         REPOSITORY                TAG
<image-id>       <repository-path/name>    <tag-name>

使用 docker-compose up 命令執行容器

  • 以您在 Azure 資源頁面中的資源端點 URI 和金鑰取代 {ENDPOINT_URI} and {API_KEY} 值。

    Azure 入口網站金鑰和端點頁面的螢幕擷取畫面。

  • 確定 EULA 值設定為接受

  • 必須指定 EULABillingApiKey 值;否則容器無法啟動。

重要

您會使用金鑰來存取文件智慧服務資源。 請勿共用您的金鑰, 安全地加以儲存,例如使用 Azure Key Vault。 我們也建議定期重新產生這些金鑰。 呼叫 API 只需一把金鑰。 當您重新產生第一把金鑰時,可以使用第二把金鑰繼續存取服務。

下列程式碼範例是用來執行文件智慧服務版面配置容器的獨立 docker compose 範例。 您可以使用 docker compose,透過 YAML 檔案來設定應用程式的服務。 然後,您可以使用 docker-compose up 命令,從您的設定建立並啟動所有服務。 輸入您版面配置容器執行個體的 {FORM_RECOGNIZER_ENDPOINT_URI} 和 {FORM_RECOGNIZER_KEY} 值。

version: "3.9"
services:
  azure-form-recognizer-read:
    container_name: azure-form-recognizer-read
    image: mcr.microsoft.com/azure-cognitive-services/form-recognizer/read-3.1
    environment:
      - EULA=accept
      - billing={FORM_RECOGNIZER_ENDPOINT_URI}
      - apiKey={FORM_RECOGNIZER_KEY}
    ports:
      - "5000:5000"
    networks:
      - ocrvnet
networks:
  ocrvnet:
    driver: bridge

現在,您可以使用 docker compose 命令來啟動服務:

docker-compose up

驗證服務正在執行

有數種方式可驗證容器正在執行:

  • 容器會提供一個首頁 \ 做為容器正在執行的視覺驗證。

  • 您可以開啟您喜愛的網頁瀏覽器並瀏覽至有問題容器的「外部 IP」位址和公開的連接埠。 使用列出的要求 URL 來驗證容器是否正在執行。 列出的範例要求 URL 為 http://localhost:5000,但您的特定容器可能會有所不同。 請記住,您將會瀏覽至容器的外部 IP 位址和公開的連接埠。

    要求 URL 目的
    http://localhost:5000/ 容器會提供首頁。
    http://localhost:5000/ready 以 GET 提出要求,此要求會驗證容器是否已準備好接受對模型的查詢。 此要求可用來進行 Kubernetes 活躍度和整備度探查。
    http://localhost:5000/status 以 GET 提出要求,此要求會在不需進行端點查詢的同時,確認用來啟動容器的 API 金鑰是否有效。 此要求可用來進行 Kubernetes 活躍度和整備度探查。
    http://localhost:5000/swagger 容器會為端點提供一組完整的文件和立即試用功能。 使用此功能,您可以將自己的設定輸入至以 Web 為基礎的 HTML 表單並進行查詢,而無須撰寫任何程式碼。 在查詢傳回後,會提供範例 CURL 命令來示範必要的 HTTP 標頭和本文格式。

螢幕擷取畫面:Azure 容器歡迎頁面。

停止容器

若要停止容器,請使用下列命令:

docker-compose down

計費

文件智慧服務容器會使用您 Azure 帳戶上的文件智慧服務資源,將計費資訊傳送至 Azure。

對於容器的查詢,會以針對 API Key 使用的 Azure 資源定價層來計費。 系統會針對用來處理文件和影像的每個容器執行個體計算計費。

如果您收到下列錯誤:容器未處於有效狀態。訂用帳戶驗證失敗,狀態為 'OutOfQuota' API 金鑰超出配額。 這表示您的容器未與計費端點進行通訊。

連接到 Azure

容器需要計費引數值才能執行。 這些值讓容器能夠連線到計費端點。 容器會每隔 10 到 15 分鐘回報使用量。 如果容器未在允許的時間範圍內連線到 Azure,容器會繼續執行,但在還原計費端點之前不會提供查詢。 以 10 到 15 分鐘的相同時間間隔嘗試連線 10 次。 如果無法在 10 次嘗試內連線到計費端點,容器會停止處理要求。 請參閱 Azure AI 容器常見問題,以獲得需傳送哪些資訊給 Microsoft 以供計費的範例。

計費引數

當下列三個選項都填入了有效值時,docker-compose up 命令便會啟動容器:

選項 描述
ApiKey 用來追蹤計費資訊的 Azure AI 服務資源的金鑰。
此選項的值必須設定為 Billing 中指定的已佈建資源的金鑰。
Billing 用於追蹤計費資訊的 Azure AI 服務資源的端點。
此選項的值必須設定為已佈建 Azure 資源的端點 URI。
Eula 表示您接受容器的授權。
此選項的值必須設定為接受

如需這些選項的詳細資訊,請參閱設定容器

摘要

介紹完畢 在本文中,您已了解下載、安裝及執行文件智慧服務容器的概念和工作流程。 摘要中:

  • 文件智慧服務會針對 Docker 提供七個 Linux 容器。
  • 容器映像會從 mcr 下載。
  • 容器映像是在 Docker 中執行。
  • 當您具現化容器時,必須指定計費資訊。

重要

Azure AI 容器若未連線至用於計量的 Azure,即無法獲得執行的授權。 客戶必須啟用容器以持續與計量服務進行帳單資訊的通訊。 Azure AI 容器不會將客戶資料 (例如正在分析的影像或文字) 傳送至 Microsoft。

下一步