設定串流回應行為 - Amazon Bedrock

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

設定串流回應行為

InvokeModelWithResponseStreamAPI 會以串流格式傳回資料。這使您可以訪問塊中的響應,而無需等待整個結果。使用具有串流回應的護欄時,有兩種操作模式:同步和非同步。

同步模式

在預設的同步模式下,護欄會在 repsonse 傳回給使用者之前,緩衝區塊並將設定的原則套用至一或多個回應區塊。同步處理模式會對回應區塊造成一些延遲,因為這表示回應會延遲到護欄掃描完成為止。但是,它提供了更好的準確性,因為每個響應塊在發送給用戶之前都會被護欄掃描。

非同步模式

在非同步模式下,guardrails 只要回應區塊變成可用,就會立即傳送回應區塊給使用者,同時在背景中異步套用設定的原則。優點是會立即提供回應區塊,而不會影響延遲,但是在護欄掃描完成之前,回應區塊可能會包含不適當的內容。一旦識別出不適當的內容,後續的區塊就會被護欄封鎖。

警告

在非同步模式下,模型回應中敏感資訊的遮罩可能會受到嚴重影響,因為在護欄偵測和遮罩模型回應中的任何敏感內容之前,可能會將原始回應傳回給使用者。因此,對於這類使用案例,不建議使用非同步模式。

啟用非同步模式

若要啟用非同步模式,您需要在要InvokeModelWithResponseStream求的amazon-bedrock-guardrailConfig物件中包含streamProcessingMode參數:

{ "amazon-bedrock-guardrailConfig": { "streamProcessingMode": "ASYNCHRONOUS" } }

透過瞭解同步和非同步模式之間的權衡,您可以根據應用程式對延遲和內容審核準確性的需求,選擇適當的模式。