本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立一個使用人力的模型評估任務
重要
允許 Amazon SageMaker Studio 或 Amazon SageMaker Studio Classic 建立 Amazon SageMaker 資源的自訂 IAM 政策也必須授與許可,才能將標籤新增至這些資源。需要將標籤新增至資源的許可,因為 Studio 和 Studio Classic 會自動標記它們建立的任何資源。如果 IAM 政策允許 Studio 和 Studio Classic 建立資源,但不允許標記,則在嘗試建立資源時可能會出現「AccessDenied」錯誤。如需詳細資訊,請參閱提供標記 SageMaker AI 資源的許可。
提供許可來建立 SageMaker 資源的 AWSAmazon SageMaker AI 的 受管政策 已包含建立這些資源時新增標籤的許可。
若要建立一個使用人力的模型評估任務,您必須設定您的環境以擁有正確的許可。然後,您可以使用 Studio 中的模型評估任務精靈來選取要使用的模型,然後定義要在模型評估任務中使用的參數和人力。
當任務完成時,您可以檢視報告,以了解您的人力如何評估您選取的模型。結果也會儲存在 Amazon S3 中,做為 jsonlines。輸出檔案。
在使用人力的模型評估任務中,您能夠從 SageMaker AI 外部託管的模型和 AWS 外部託管的模型中提取推論資料。如需詳細資訊,請參閱 在使用人力的模型評估任務中使用您自己的推論資料。
當您的任務完成時,結果會儲存在建立任務時指定的 Amazon S3 儲存貯體中。若要了解如何解譯結果,請參閱 了解模型評估任務的結果。
先決條件
若要在 Amazon SageMaker Studio UI 中執行模型評估,您的 AWS Identity and Access Management (IAM) 角色和任何輸入資料集必須具有正確的許可。如果您沒有 SageMaker AI 網域或 IAM 角色,請遵循 使用 Amazon SageMaker AI 進行設定的指南 中的步驟。
設定您的許可
下一節說明如何建立 Amazon S3 儲存貯體,以及如何指定正確的跨來源資源共用 (CORS) 許可。
建立 Amazon S3 儲存貯體並指定 CORS 許可
開啟 Amazon SageMaker AI 主控台,網址為 https://console.aws.amazon.com/sagemaker/
。 -
在導覽窗格中,將
S3輸入至頁面頂端的搜尋列中。 -
在服務下選擇 S3。
-
從導覽窗格中選擇儲存貯體。
-
在一般用途儲存貯體區段的名稱下,選擇您要用來在主控台中存放模型輸入和輸出的 S3 儲存貯體名稱。如果您沒有 S3 儲存貯體,請執行下列動作。
-
選取建立儲存貯體以開啟新的建立儲存貯體頁面。
-
在一般組態區段的 AWS 區域下,選取基礎模型所在的 AWS 區域。
-
在儲存貯體名稱下的輸入方塊中命名您的 S3 儲存貯體。
-
接受所有預設選項。
-
選取建立儲存貯體。
-
在一般用途儲存貯體區段的名稱下,選取您建立的 S3 儲存貯體名稱。
-
-
選擇許可索引標籤。
-
捲動至視窗底部的跨來源資源共用 (CORS) 區段。選擇編輯。
-
以下是您必須新增至 Amazon S3 儲存貯體的最低必要 CORS 政策。複製以下內容並貼入文字方塊:
[ { "AllowedHeaders": ["*"], "AllowedMethods": [ "GET", "HEAD", "PUT" ], "AllowedOrigins": [ "*" ], "ExposeHeaders": [ "Access-Control-Allow-Origin" ], "MaxAgeSeconds": 3000 } ] -
選擇儲存變更。
將許可新增至您的 IAM 政策
您可能想要考慮連接到 IAM 角色的許可層級。
-
您可以建立自訂 IAM 政策,允許針對此服務量身打造的最低必要許可。
-
您可以將現有的
AmazonSageMakerFullAccess和AmazonS3FullAccess政策連接到現有的 IAM 角色,這樣更加寬鬆。如需AmazonSageMakerFullAccess政策的詳細資訊,請參閱 AmazonSageMakerFullAccess。
如果您想要將現有政策連接至 IAM 角色,您可以略過這裡設定的指示,並繼續遵循將許可新增至 IAM 角色下的指示。
下列指示會建立針對此服務量身打造的自訂 IAM 政策,具有最低許可。
開啟 Amazon SageMaker AI 主控台,網址為 https://console.aws.amazon.com/sagemaker/
。 -
在頁面頂端的搜尋列中,輸入
IAM。 -
在服務下,選取 Identity and Access Management (IAM)。
-
從導覽窗格中選擇政策。
-
選擇建立政策。當政策編輯器開啟時,選擇 JSON。
-
請確定下列許可出現在政策編輯器中。您也可以複製下列內容,然後將其貼入政策編輯器中。
-
選擇下一步。
-
在政策詳細資訊區段的政策名稱下輸入政策名稱。您也可以選擇輸入描述。當您將政策名稱指派給角色時,您將搜尋該政策名稱。
-
選擇建立政策。
將許可新增至您的 IAM 角色
開啟 Amazon SageMaker AI 主控台,網址為 https://console.aws.amazon.com/sagemaker/
。 -
在頁面頂端的搜尋列中,輸入
IAM。 -
在服務下,選取 Identity and Access Management (IAM)。
-
在導覽窗格中,選擇 Roles (角色)。
-
如果您要建立新的角色:
-
選擇建立角色。
-
在選取信任的實體步驟的信任的實體類型下,選擇自訂信任政策。
-
在自訂信任政策編輯器中,於新增主體旁邊選擇新增。
-
在新增主體快顯方塊的主體類型下,從下拉式選項清單中選取 AWS 服務。
-
在 ARN 下,將
{ServiceName}取代為sagemaker。 -
選擇新增主體。
-
選擇下一步。
-
(選用) 在許可政策下選取要新增至您角色的政策。
-
(選用) 在設定許可界限 - 選用下選擇您的許可界限設定。
-
選擇下一步。
-
在命名、檢閱和建立步驟的角色詳細資訊下,填入您的角色名稱和描述。
-
(選用) 在新增標籤 - 選用下,您可以選擇新增標籤並輸入金鑰和值 - 選用對來新增標籤。
-
檢閱您的設定。
-
選擇建立角色。
-
-
如果您要將政策新增至現有角色:
-
在角色名稱下選取角色的名稱。主視窗會變更以顯示角色的相關資訊。
-
在許可政策區段中,選擇新增許可旁邊的向下箭頭。
-
從出現的選項中,選擇連接政策。
-
從出現的政策清單中,搜尋並選取您在新增許可至 IAM 政策下建立的政策,然後選取政策名稱旁邊的核取方塊。如果您未建立自訂 IAM 政策,請搜尋並選取 AWS 所提供
AmazonSageMakerFullAccess和AmazonS3FullAccess政策旁邊的核取方塊。您可能想要考慮連接到 IAM 角色的許可層級。自訂 IAM 政策的指示較不寬鬆,而後者更寬鬆。如需AmazonSageMakerFullAccess政策的詳細資訊,請參閱 AmazonSageMakerFullAccess。 -
選擇新增許可。頁面頂端的橫幅應在完成時指出政策已成功連接到角色。
-
將信任政策新增至您的 IAM 角色
下列信任政策讓管理員可以允許 SageMaker AI 擔任該角色。您需要將政策新增至 IAM 角色。若要這樣做,請使用下列步驟。
開啟 Amazon SageMaker AI 主控台,網址為 https://console.aws.amazon.com/sagemaker/
。 -
在頁面頂端的搜尋列中,輸入
IAM。 -
在服務下,選取 Identity and Access Management (IAM)。
-
在導覽窗格中,選擇 Roles (角色)。
-
在角色名稱下選取角色的名稱。主視窗會變更以顯示角色的相關資訊。
-
選擇信任關係索引標籤。
-
選擇編輯信任政策。
-
確保以下政策出現在編輯信任政策下。您也可以複製以下內容,然後將其貼入編輯器中。
-
選擇更新政策。頁面頂端的橫幅應在完成時指出信任政策已更新。
您可以使用 JumpStart 中提供的文字型模型來建立人工評估任務,也可以使用您先前部署到端點的 JumpStart 模型。
啟動 JumpStart
開啟 Amazon SageMaker AI 主控台,網址為 https://console.aws.amazon.com/sagemaker/
。 -
在頁面頂端的搜尋列中,輸入
SageMaker AI。 -
在服務下,選取 Amazon SageMaker AI。
-
從導覽窗格中選擇 Studio。
-
在展開選取網域下的向下箭頭之後,從入門區段中選擇您的網域。
-
在展開選取使用者設定檔下的向下箭頭之後,從入門區段中選擇您的使用者設定檔。
-
選擇開啟 Studio 以開啟 Studio 的登陸頁面。
-
從導覽窗格中選擇任務。
設定評估任務
-
在模型評估首頁上,選擇評估模型
-
指定任務詳細資訊。
-
輸入模型評估的評估名稱。此名稱可協助您在提交模型評估任務之後識別該任務。
-
輸入描述,將更多內容新增至名稱。
-
選擇下一步。
-
-
設定評估
-
在選擇評估類型下,選取人力旁邊的選項按鈕。
-
在選擇您要評估的模型下,選擇將模型新增至評估。每次評估時,您最多可以評估兩個模型。
-
若要使用預先訓練的 JumpStart 模型,請選擇預先訓練的 JumpStart 基礎模型。如果您想要使用先前部署到端點的 JumpStart 模型,請選擇具有 JumpStart 基礎模型的端點。
-
如果模型需要法律協議,請選取核取方塊以確認您同意。
-
如果您想要新增另一個模型,請重複上一個步驟。
-
-
若要變更模型在推論期間的行為,請選擇集合參數。
集合參數包含推論參數的清單,這些參數會影響模型輸出的隨機程度、模型輸出的長度,以及模型接下來會選擇哪些字詞。
-
接著,選取任務類型。您可以選取下列任一項:
-
文字摘要
-
問答 (Q&A)
-
文字分類
-
開放式生成
-
Custom
-
-
在評估指標區段中,選擇評估維度,然後在描述下的文字方塊中輸入有關維度的其他內容。您可以從下列維度中進行選擇:
-
流暢性 – 測量所產生文字的語言品質。
-
連貫性 – 測量所產生文字的組織和結構。
-
毒性 – 測量所產生文字的有害性。
-
準確性 – 指出所產生文字的準確性。
-
您可以為工作團隊定義其名稱和描述的自訂評估維度。
若要新增自訂評估維度,請執行下列動作:
-
選擇新增評估維度。
-
在包含提供評估維度的文字方塊中,輸入自訂維度的名稱。
-
在包含為此評估維度提供描述的文字方塊中,輸入一個描述,以便您的工作團隊了解如何評估您的自訂維度。
-
其中每個指標下都是報告指標,您可以從選擇指標類型向下箭頭中進行選擇。如果您有兩個要評估的模型,您可以選擇比較或個別報告指標。如果您有一個要評估的模型,您只能選擇個別報告指標。您可以為上述每個指標選擇下列報告指標類型。
-
(比較) 李克特量表 - 比較 - 人工評估者會根據您的指示,在 5 點李克特量表上的兩個回應之間指出其偏好。最終報告結果將顯示為評估者對整個資料集的偏好強度評分的直方圖。在您的指示中定義 5 點量表要點,如此您的評估者才會知道如何根據您的期望對回應進行評分。在儲存在 Amazon S3 中的 JSON 輸出中,此選項表示為
ComparisonLikertScale金鑰值對"evaluationResults":"ComparisonLikertScale"。 -
(比較) 選擇按鈕 - 允許人力評估者指出他們偏好兩個回應的哪一個。評估者會根據您使用選項按鈕的指示,指出對兩個回應之間的偏好。最終報告中的結果會以每個模型的工作者偏好的回應百分比顯示。在您的指示中清楚說明您的評估方法。在儲存在 Amazon S3 中的 JSON 輸出中,此選項表示為
ComparisonChoice金鑰值對"evaluationResults":"ComparisonChoice"。 -
(比較) 順序排名 - 允許人力評估者根據您的指示,將其對提示的偏好回應從
1開始依序排名。最終報告中的結果將以評估者在整個資料集中的排名直方圖顯示。在您的指示中定義1的排名代表何義。在儲存在 Amazon S3 中的 JSON 輸出中,此選項表示為ComparisonRank金鑰值對"evaluationResults":"ComparisonRank"。 -
(個人) 拇指向上/向下 - 允許人工評估者根據您的指示,將模型中的每個回應評分為可接受或不可接受的。最終報告中的結果將以每個模型獲得拇指向上的評估者評分總數的百分比顯示。您可以使用此評分方法來評估一個或多個模型。如果您在包含兩個模型的評估中使用此功能,則會針對每個模型回應向您的工作團隊提供拇指向上或向下表示法,而且最終報告會個別顯示每個模型的彙總結果。在您的指示中定義可接受作為拇指向上或拇指向下評分的項目。在儲存在 Amazon S3 中的 JSON 輸出中,此選項表示為
ThumbsUpDown金鑰值對"evaluationResults":"ThumbsUpDown"。 -
(個人) 李克特量表 - 個人 - 允許人力評估者在 5 點李克特量表上根據您的指示,指出他們核准模型回應的強度。最終報告中的結果將顯示為評估者對整個資料集的 5 點評分的直方圖。您可以將此量表用於包含一個或多個模型的評估。如果您在包含多個模型的評估中選取此評分方法,則會針對每個模型回應向您的工作團隊提供 5 點李克特量表,而且最終報告會個別顯示每個模型的彙總結果。在您的指示中定義 5 點量表要點,如此您的評估者才會知道如何根據您的期望對回應進行評分。在儲存在 Amazon S3 中的 JSON 輸出中,此選項表示為
IndividualLikertScale金鑰值對"evaluationResults":"IndividualLikertScale"。
-
-
選擇提示資料集。此資料集是必要的,且將由您的人工團隊用來評估模型的回應。將 S3 URI 提供給 Amazon S3 儲存貯體,其中包含輸入資料集檔案的 S3 URI 下的文字方塊中的提示資料集。您的資料集必須採用
jsonlines格式,並包含下列金鑰,才能識別 UI 將用來評估模型的資料集部分:-
prompt- 您想要模型對其產生回應的請求。 -
(選用)
category- 提示的類別標籤。category金鑰用來分類您的提示,以便您稍後可以按類別篩選評估結果,以更深入了解評估結果。它不會參與評估本身,而且工作者不會在評估 UI 上看到它。 -
(選用)
referenceResponse– 人工評估者的參考答案。參考答案不是由工作者評分,但可以根據您的指示,用來了解哪些回應可接受或無法接受。 -
(選用)
responses– 用來指定 SageMaker AI 外部或 AWS 外部模型的推論。此物件需要兩個額外的金鑰值對
"modelIdentifier,這是識別模型的字串,而"text"是模型的推論。如果您在自訂提示資料集的任何輸入中指定
"responses"金鑰,則必須在所有輸入中指定該金鑰。 -
下列
json程式碼範例展示自訂提示資料集中接受的金鑰值對。如果提供回應金鑰,則必須勾選自帶推論核取方塊。如果勾選,則一律必須在每個提示中指定responses金鑰。下列範例可以用於問答案例。{ "prompt": { "text": "Aurillac is the capital of" }, "category": "Capitals", "referenceResponse": { "text": "Cantal" }, "responses": [ // All responses must come from a single model. If specified it must be present in all JSON objects. modelIdentifier and text are then also required. { "modelIdentifier":"meta-textgeneration-llama-codellama-7b", "text":"The capital of Aurillac is Cantal."} ] }
-
-
在選擇 S3 位置以儲存評估結果下的文字方塊中,輸入您要儲存輸出評估結果的 S3 儲存貯體位置。寫入此 S3 位置的輸出檔案將採用
JSON格式,結尾為副檔名.json。 -
注意
如果您想要在模型評估任務中自帶推論資料,您只能使用單一模型。
(選用) 選擇自帶推論下的核取方塊,以指出您的提示資料集包含
responses金鑰。如果您將responses金鑰指定為任何提示的一部分,則其必須出現在所有提示中。 -
使用下列參數,在處理器組態區段中設定您的處理器:
-
使用執行個體計數來指定要用來執行模型的運算執行個體數量。如果您使用超過
1個執行個體,您的模型將在平行執行個體中執行。 -
使用執行個體類型來選擇要用來執行模型的運算執行個體類型。 AWS具有針對運算和記憶體最佳化的一般運算執行個體和執行個體。如需執行個體類型的詳細資訊,請參閱可與 Amazon SageMaker Studio Classic 筆記本搭配使用的執行個體類型。
-
如果您希望 SageMaker AI 使用您自己的 AWS Key Management Service(AWS KMS) 加密金鑰而非預設的AWS受管服務金鑰,請切換到磁碟區 KMS 金鑰下的開啟,然後輸入AWS KMS金鑰。SageMaker AI 將使用您的AWS KMS金鑰來加密儲存磁碟區上的資料。如需金鑰的詳細資訊,請參閱 AWS Key Management Service。
-
如果您希望 SageMaker AI 使用您自己的 AWS Key Management Service(AWS KMS) 加密金鑰而非預設的AWS受管服務金鑰,請切換到輸出 KMS 金鑰下選取開啟,然後輸入AWS KMS金鑰。SageMaker AI 將使用您的AWS KMS金鑰來加密處理任務輸出。
-
使用 IAM 角色指定預設處理器的存取和許可。在此執行人工評估區段中輸入您在設定 IAM 角色區段中設定的 IAM 角色。
-
-
指定您的模型和條件後,選取下一步。
-
您的工作團隊由正在評估模型的人員組成。建立您的工作團隊後,該工作團隊會無限期存在,您無法變更其屬性。以下展示如何開始使用您的工作團隊。
設定您的工作團隊
-
在選取團隊輸入文字方塊中選擇現有團隊或建立新團隊。
-
在組織名稱中指定組織的名稱。此欄位只會在您建立帳戶中的第一個工作團隊時出現。
-
指定聯絡人電子郵件。您的工作者將使用此電子郵件來與您溝通您將提供給他們的評估任務。此欄位只會在您建立帳戶中的第一個工作團隊時出現。
-
指定團隊名稱。您稍後無法變更此名稱。
-
為將評估您的大型語言模型 (LLM) 的每個人力指定電子郵件地址清單。當您為團隊指定電子郵件地址時,只有在他們新加入工作團隊時,才會通知他們有新任務。如果您為後續任務使用相同的團隊,則必須手動通知他們。
-
然後,指定每個提示的工作者數量
為您的工作團隊提供指示
-
將詳細指示提供給您的人力,以便他們可以根據您的指標和標準評估您的模型。主視窗中的範本顯示您可以提供的範例指示。如需如何提供指示的詳細資訊,請參閱建立良好的工作者指示。
-
若要將人工評估中的偏差降至最低,請選取隨機化回應位置旁的核取方塊。
-
選取下一步。
您可以檢閱您為人力任務所做的選擇摘要。如果您必須變更任務,請選擇上一步以返回先前的選擇。
提交您的評估任務請求並檢視任務進度
-
若要提交您的評估任務請求,請選擇建立資源。
-
若要查看所有任務的狀態,請在導覽窗格中選擇任務。然後,選擇模型評估。評估狀態會顯示為已完成、失敗或進行中。
也會顯示下列項目:
-
要在 SageMaker AI 和 Amazon Bedrock 中執行模型評估的範例筆記本。
-
其他資訊的連結,包括有關模型評估程序的文件、影片、新聞和部落格。
-
也提供私有工作者入口網站的 URL。
-
-
在名稱下選取您的模型評估,以檢視評估摘要。
-
此摘要提供任務狀態、您在哪個模型上執行哪種評估任務,以及何時執行的相關資訊。在摘要之後,人工評估分數會依指標進行排序和總結。
-
檢視使用人力的模型評估任務的報告卡
-
若要查看任務的報告,請在導覽窗格中選擇任務。
-
然後,選擇模型評估。在模型評估首頁上,使用資料表尋找您的模型評估任務。一旦任務狀態變更為已完成,您就可以檢視報告卡。
-
選擇模型評估任務的名稱作為其報告卡。
當您建立一個使用人力的模型評估任務時,您可以選擇自帶推論資料,並讓人力將該推論資料與另一個 JumpStart 模型或您部署到端點的 JumpStart 模型所產生的資料進行比較。
本主題描述推論資料所需的格式,以及如何將該資料新增至模型評估任務的簡化程序。
選擇提示資料集。此資料集是必要的,且將由您的人工團隊用來評估模型的回應。在選擇 S3 位置以儲存評估結果下的文字方塊中,提供 Amazon S3 儲存貯體的 S3 URI,該儲存貯體包含您的提示資料集。您的資料集必須採用 .jsonl 格式。每筆記錄都必須是有效的 JSON 物件,並包含下列必要金鑰:
-
prompt– 包含要傳遞至模型之文字的 JSON 物件。 -
(選用)
category- 提示的類別標籤。category金鑰用來分類您的提示,以便您稍後可以按類別篩選評估結果,以更深入了解評估結果。它不會參與評估本身,而且工作者不會在評估 UI 上看到它。 -
(選用)
referenceResponse- 包含人工評估者之參考答案的 JSON 物件。參考答案不是由工作者評分,但可以根據您的指示,用來了解哪些回應可接受或無法接受。 -
responses– 用來指定 SageMaker AI 外部或 AWS 外部模型的個別推論。此物件需要額外的金鑰值對
"modelIdentifier,這是識別模型的字串,而"text"是模型的推論。如果您在自訂提示資料集的任何輸入中指定
"responses"金鑰,則必須在所有輸入中指定該金鑰。
下列 json 程式碼範例展示自訂提示資料集中接受的金鑰值對,此資料集包含您自己的推論資料。
{ "prompt": { "text": "Who invented the airplane?" }, "category": "Airplanes", "referenceResponse": { "text": "Orville and Wilbur Wright" }, "responses": // All inference must come from a single model [{ "modelIdentifier":"meta-textgeneration-llama-codellama-7b", "text": "The Wright brothers, Orville and Wilbur Wright are widely credited with inventing and manufacturing the world's first successful airplane." }] }
若要開始啟動 Studio,請在主要導覽中的任務下選擇模型評估。
將您自己的推論資料新增至人工模型評估任務。
-
在步驟 1:指定任務詳細資訊中,新增模型評估任務的名稱,以及選用的描述。
-
在步驟 2:設定評估中選擇人工。
-
接下來,在選擇您要評估的模型 下,您可以選擇要使用的模型。您可以使用已部署的 JumpStart 模型,也可以選擇預先訓練的 Jumpstart 基礎模型。
-
然後,選擇任務類型。
-
接下來,您可以新增評估指標。
-
接下來,在提示資料集下,選擇自帶推論下的核取方塊,以指出您的提示在其中具有回應金鑰。
-
然後繼續設定您的模型評估任務。
若要進一步了解如何儲存來自使用人力之模型評估任務的回應,請參閱了解人工評估任務的結果