本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
調用端點
端點執行後,請在 SageMaker 執行期服務InvokeEndpoint API中使用 SageMaker 執行期將請求傳送至或叫用端點。為了回應,Clarify SageMaker 解釋程式會將請求視為可解釋性請求來處理。
注意
若要調用端點,請選擇下列其中一種選項:
-
如需使用 Boto3 或 AWS CLI 叫用端點的指示,請參閱 叫用模型以進行即時推論。
-
若要使用 for Python SageMaker SDK來叫用端點,請參閱 Predictor
API。
請求
InvokeEndpoint
API 有一個選用參數 EnableExplanations
,會映射到HTTP標頭 X-Amzn-SageMaker-Enable-Explanations
。如果提供此參數,它會覆寫 ClarifyExplainerConfig
的 EnableExplanations
參數。
注意
InvokeEndpoint
API 需要 ContentType
和 Accept
參數。支援的格式包括MIME類型 text/csv
和 application/jsonlines
。
使用 sagemaker_runtime_client
將請求傳送至端點,如下所示:
response = sagemaker_runtime_client.invoke_endpoint( EndpointName='name-of-your-endpoint', EnableExplanations='`true`', ContentType='text/csv', Accept='text/csv', Body='1,2,3,4', # single record (of four numerical features) )
對於多模型端點,在先前的範例請求中傳遞其他TargetModel
參數,以指定要在端點鎖定的模型。多模型端點會視需要動態載入目標模型。如需多模型端點的詳細資訊,請參閱 多模型端點。如需如何從單一端點設定和叫用多個目標模型的範例,請參閱 SageMaker Clarify Online Explainability on Multi-Model Endpoint Sample Notebook
回應
如果使用 ExplainerConfig
建立端點,則會使用新的回應結構描述,此新架構與缺少提供的 ExplainerConfig
參數的端點不同且不相容。
回應的MIME類型為 application/json
,且回應承載可以從 UTF-8 位元組解碼至JSON物件。下列顯示此JSON物件的成員如下:
-
version
:以字串格式顯示的回應結構描述版本。例如:1.0
。 -
predictions
:請求做出的預測如下:-
content_type
:預測的MIME類型,請參閱模型容器回應ContentType
的 。 -
data
:作為請求的模型容器回應承載傳遞的預測資料字串。
-
-
label_headers
:來自LabelHeaders
參數的標籤標題。這在解釋器組態或模型容器輸出所提供。 -
explanations
:請求承載提供的解釋。如果沒有解釋任何記錄,則該成員傳回空物件{}
。 -
-
kernel_shap
:指請求中每個記錄的核心SHAP說明陣列的金鑰。如果沒有解釋記錄,則相應的解釋為null
。
-
kernel_shap
元素具有下列成員:
-
feature_header
:解釋器組態ExplainerConfig
中FeatureHeaders
參數提供的特徵的標題名稱。 -
feature_type
:由解釋器推斷或在ExplainerConfig
中的FeatureTypes
參數提供的特徵類型。此元素僅適用於可NLP解釋性問題。 -
attributions
:屬性物件的陣列。文字特徵可以有多個屬性物件,每個屬性物件對應一個單位。屬性物件具有下列成員:-
attribution
:為每個類別提供的機率值清單。 -
description
:文字單位的描述,僅適用於可NLP解釋性問題。-
partial_text
:解釋者解釋的文字部分。 -
start_idx
:從零開始的索引,用於標識部分文字片段開頭的陣列位置。
-
-