

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 什麼是基礎模型評估？
<a name="clarify-foundation-model-evaluate-whatis"></a>

FMEval 可協助您量化模型風險，例如不準確、有害或偏差的內容。評估 LLM 可協助您遵守負責任生成式 AI 的國際準則，例如 [ISO 42001](https://aistandardshub.org/ai-standards/information-technology-artificial-intelligence-management-system/) AI 管理系統標準和 NIST AI 風險管理架構。

以下各節提供支援方法的廣泛概觀，這些方法用於建立模型評估、檢視模型評估任務的結果，以及分析結果。

## 模型評估任務
<a name="whatis-clarify-evaluation-tasks"></a>

在模型評估任務中，評估任務是您希望模型根據提示中的資訊執行的任務。您可以選擇每個模型評估任務一種任務類型。

**模型評估任務中支援的任務類型**
+ **開放式產生** – 對沒有預先定義結構的文字產生自然人類回應。
+ **文字摘要** – 產生簡潔扼要的摘要，同時保留較大文字中包含的意義和關鍵資訊。
+ **問答** – 產生相關且準確的提示回應。
+ **分類** – 根據文字內容將標籤或分數等類別指派給文字。
+ **自訂** – 可讓您定義模型評估任務的自訂評估維度。

每個任務類型都有與其相關聯的特定指標，您可以在自動模型評估任務中使用這些指標。若要了解與自動模型評估任務相關聯的指標，以及使用人力的模型評估任務，請參閱[在模型評估任務中使用提示資料集和可用的評估維度](clarify-foundation-model-evaluate-overview.md)。

## 更新推論參數
<a name="whatis-clarify-inference-parameters"></a>

推論參數是一種影響模型輸出的方式，無需重新訓練或微調模型。

在自動模型評估任務中，您可以變更模型的溫度、Top P 和新字符數上限。

**溫度**  
變更模型回應中的隨機量。降低預設溫度可降低隨機量，而提高預設溫度則可增加隨機量。

**Top P**  
在推論期間，模型正在產生文字，並從單字清單中選擇來放置下一個單字。更新 Top P 會根據百分比變更該清單中的單字數。減少 Top P 會導致更確定性的範例，而較高的值將允許所產生的文字具有更多的可變性和創造性。

**新字符數上限**  
變更模型可提供的回應長度。

將模型新增至您的模型評估任務後，您可以在 Studio 中更新推論參數。

## 自動模型評估任務
<a name="clarify-automatic-jobs-summary"></a>

自動模型評估任務會根據基準使用指標來衡量對客戶的有毒、有害或其他不良回應。模型回應是使用任務特有的內建資料集進行評分，或者您可以指定自己的自訂提示資料集。

若要建立自動模型評估任務，您可以使用 Studio 或 [https://github.com/aws/fmeval?tab=readme-ov-file#foundation-model-evaluations-library](https://github.com/aws/fmeval?tab=readme-ov-file#foundation-model-evaluations-library) 程式庫。自動模型評估任務支援使用單一模型。在 Studio 中，您可以使用 JumpStart 模型，也可以使用您先前部署到端點的 JumpStart 模型。

或者，您可以將 `fmeval` 程式庫部署到您自己的程式碼庫，並為您自己的使用案例自訂模型評估任務。

若要進一步了解您的結果，請使用產生的報告。報告包含視覺化和範例。您也可以看到結果儲存在建立任務時指定的 Amazon S3 儲存貯體中。若要進一步了解結果的結構，請參閱[了解自動評估任務的結果](clarify-foundation-model-evaluate-auto-ui-results.md)。

若要使用 JumpStart 中未公開提供的模型，您必須使用 `fmeval` 程式庫來執行自動模型評估任務。如需 JumpStart 模型的清單，請參閱[可用的基礎模型](jumpstart-foundation-models-latest.md)。

### 提示範本
<a name="clarify-automatic-jobs-summary-prompt-templates"></a>

為了協助確保您選取的 JumpStart 模型針對所有提示都執行良好，SageMaker Clarify 會自動將您的輸入提示增強為最適合您選取的模型和**評估維度**的格式。若要查看 Clarify 提供的預設提示範本，請在評估維度的卡片中選擇**提示範本**。例如，如果您在 UI 中選取任務類型**文字摘要**，Clarify 預設會顯示每個相關評估維度的卡片 - 在此案例中為**準確性**、**毒性**和**語意穩健性**。在這些卡片中，您可以設定 Clarify 用來測量該評估維度的資料集和提示範本。您也可以移除您不想要使用的任何維度。

#### 預設提示範本
<a name="clarify-automatic-jobs-summary-prompt-templates-default"></a>

Clarify 提供一系列資料集，您可以用來測量每個評估維度。您可以選擇使用其中一或多個資料集，也可以提供您自己的自訂資料集。如果您使用 Clarify 提供的資料集，也可以使用 Clarify 插入的提示範本做為預設值。我們透過分析每個資料集中的回應格式，並確定實現相同回應格式所需的查詢增強來衍生這些預設提示。

Clarify 提供的提示範本也取決於您選取的模型。您可以選擇經過微調的模型，以在提示的特定位置預期指示。例如，選擇模型 **meta-textgenerationneuron-llama-2-7b**、任務類型**文字摘要**和 Gigaword 資料集會顯示下列的預設提示範本：

```
Summarize the following text in one sentence: Oil prices fell on thursday as demand for energy decreased around the world owing to a global economic slowdown...
```

另一方面，選擇 llama 聊天模型 **meta-textgenerationneuron-llama-2-7b-f** 會顯示下列預設提示範本：

```
[INST]<<SYS>>Summarize the following text in one sentence:<</SYS>>Oil prices fell on thursday as demand for energy decreased around the world owing to a global economic slowdown...[/INST]
```

#### 自訂提示範本
<a name="clarify-automatic-jobs-summary-prompt-templates-custom"></a>

在提示範本對話方塊中，您可以開啟或關閉 SageMaker Clarify 提供的自動提示範本支援。如果您關閉自動提示範本，Clarify 會提供您可以修改的預設提示 (做為相同評估維度內所有資料集的基準)。例如，如果預設提示範本包含指示*用一個句子中摘要說明以下內容*，您可以將其修改為*用少於 100 個字摘要說明以下內容*，或您想要使用的任何其他指示。

此外，如果您修改評估維度的提示，相同的提示會套用到使用該相同維度的所有資料集。因此，如果您選擇將提示*用 17 個句子摘要說明下列文字*套用到資料集 Gigaword 以測量毒性，則相同的指示會用於資料集 Government report 來測量毒性。如果您想要針對不同的資料集使用不同的提示 (使用相同的任務類型和評估維度)，您可以使用 FMEval 提供的 python 套件。如需詳細資訊，請參閱[使用 `fmeval` 程式庫自訂您的工作流程](clarify-foundation-model-evaluate-auto-lib-custom.md)。

**Example 使用**提示範本**更新提示範本的範例**  <a name="clarify-prompt-template"></a>
想像一個簡單的案例，其中您有一個只包含兩個提示的簡單資料集，而且您想要使用 ****meta-textgenerationneuron-llama-2-7b-f**** 評估它們。  

```
{
	"model_input": "Is himalaya the highest mountain in the world?",
    "target_output": "False, Mt. Everest is the highest mountain in the world",
    "category": "Geography"
},
{
    "model_input": "Is Olympia the capital of Washington?",
    "target_output": "True",
    "category": "Capitals"
}
```
由於您的提示是問答組合，您可以選擇**問答 (Q&A)** 任務類型。  
透過在 Studio 中選擇**提示範本**，您可以查看 SageMaker Clarify 如何格式化您的提示，以符合 ****meta-textgenerationneuron-llama-2-7b-f**** JumpStart 模型的要求。  

```
[INST]<<SYS>>Respond to the following question. Valid answers are "True" or "False".<<SYS>>Is himalaya the highest mountain in the world?[/INST]
```
對於此模型，SageMaker Clarify 將透過新增 `[INST]` 和 `<<SYS>>` 標籤來補充您的提示，以包含正確的提示格式。它也會透過新增 `Respond to the following question. Valid answers are "True" or "False".` 來增強您的初始請求，以協助模型做出更好的回應。  
SageMaker Clarify 提供的文字可能不太適合您的使用案例。若要關閉預設提示範本，請將**資料集預設提示範本**切換到**關閉**。  
您可以編輯提示範本，以符合您的使用案例。例如，您可以提示輸入簡短的回應，而不是 True/False 答案格式，如下行所示：  

```
[INST]<<SYS>>Respond to the following question with a short response.<<SYS>>Is himalaya the highest mountain in the world?[/INST]
```
現在，所指定**評估維度**下的所有內建或自訂提示資料集都會使用您指定的提示範本。

## 使用人力的模型評估任務
<a name="clarify-human-jobs"></a>

您也可以利用**人力**來手動評估模型回應以取得更多主觀維度，例如實用性或風格。若要建立使用人力的模型評估任務，您必須使用 Studio。

在使用人工的模型評估任務中，您最多可以比較兩個 JumpStart 模型的回應。或者，您也可以指定外部模型的回應 AWS。使用人力的所有模型評估任務都需要您建立自訂提示資料集，並將其存放在 Amazon S3 中。若要進一步了解如何建立自訂提示資料，請參閱[建立使用人力的模型評估任務](clarify-foundation-model-evaluate-human.md#clarify-foundation-model-evaluate-human-run)。

在 Studio 中，您可以定義人力用來評估模型回應的條件。您也可以使用 Studio 中提供的範本來記錄評估指示。此外，您可以在 Studio 中建立工作團隊。工作團隊是您想要其參與模型評估任務的人員。