View a markdown version of this page

介紹和套用租戶內容 - AWS 方案指引

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

介紹和套用租戶內容

如果我們建置支援多租用戶的代理程式,我們首先必須考慮如何設定租用戶內容,這些內容將用於在代理程式實作中套用租用戶特定的政策、策略和機制。

在最基本的層級,您可以透過我們在傳統多租戶架構中使用的常見工具和機制,將租戶內容引入客服人員。這可能是透過 API 金鑰、OAuth 或各種其他驗證機制。此範例著重於將已驗證的系統或使用者解析為保存租用戶內容的 JSON Web 字符 (JWT) 金鑰。然後,JWT 會透過系統傳播。當我們考慮如何編寫代理系統時,這變得更加有趣。下圖顯示兩種代理環境的範例。

編寫代理系統。

在此圖表中,左側的模型代表代理程式系統,其中所有代理程式都由單一實體擁有、管理和託管。當您完全控制整個體驗時,您可以使用典型的策略,透過每個代理程式傳遞租戶。

右側的模型可能更常見,代表跨越多個實體的客服人員系統。代理程式是獨立建置、管理和操作,因此每個代理程式都有自己的身分驗證和授權機制。這裡的挑戰是,我們需要一種通用的方式來解析和共用這些客服人員之間的租戶內容。這倚賴更分散的模型,其中每個代理程式都必須能夠驗證系統或使用者,並根據套用的機制將其解析為租戶。

建置租戶感知代理程式

多租戶會影響我們實作個別客服人員的方式。當客服人員處理請求時,請考慮租戶內容如何影響客服人員存取資料、做出決策和叫用動作的方式。為了更好地了解多租用戶如何影響代理程式的描述檔,首先確定建構模組如何成為任何代理程式的一部分。

挑戰是客服人員的範圍、性質和設計只是具體的,因為供應商會自行選擇客服人員體驗的設計。最後,代理程式的重點是,它是一種自主學習服務,可以存取各種工具、資料來源和記憶體,以確定如何最好地解決任務。

確切了解代理程式使用的策略和模式並不重要。在多租用戶模型中,更重要的是識別代理程式的各個部分如何設定、存取和套用。考慮一個潛在的代理程式環境,它依賴一系列的資源和機制來實現其目標。下圖顯示這類代理程式的範例。

移動 代理程式的組件。

此圖表代表全方位的代理程式可能性,顯示可結合以實現目標的各種工具和機制。在圖表左側,請注意代理程式如何依賴記憶體作為其內容的一部分、定義引導其活動的政策的護欄,以及導向特定任務的工作流程。有些 可能認為不應在此內容中包含工作流程,但在某些情況下,工作流程對於客服人員體驗而言是不可或缺的。

圖表右側顯示知識和工具等輸入如何提供額外的洞見和內容,以增強客服人員的功能。然後,代理程式會輸出動作,例如編寫程式碼或存取系統。圖表底部顯示客服人員如何依賴一個或多個內部或第三方客服人員,這些客服人員可以做為更廣泛的系統的一部分進行協調。

我們現在可以思考引進多租用戶意味著什麼。租用會強制我們考慮代理程式如何以及在何處引進可決定行為和動作的策略和機制。這為我們對客服人員的知識、學習、工具和記憶體的想法提供了另一個維度。

現在,讓我們考慮如何修改此模型以支援多租用戶。下圖顯示多代理程式模型的範例。

建置租戶感知代理程式。

在此圖表中,我們介紹了租戶角色,旨在塑造客服人員如何整合租戶內容。例如,在圖表的左側,代理程式記憶體會遭到修改,以支援租戶特定的記憶體。在 代理程式支援租戶特定知識和工具的圖表右側也是如此。相同的支援也會套用至護欄。

這可能是一個極端的範例,因為並非多租用戶代理程式的所有層面都需要每個租用戶的資源。重點是,您應該考慮為特定租戶量身打造代理程式如何增強其有效性。這種方法可讓您的代理程式提高其影響和價值,在其回應中提供更相關的內容,並開發專用功能。客服人員接著將能夠學習、調整和執行特別適合不同角色的任務。

主要想法是租戶內容會直接影響您建置客服人員的方式。它也可以塑造租戶與外部實體的互動,包括其他客服人員。建置多租戶代理程式會帶來傳統挑戰,例如雜訊鄰里、租戶隔離、分層、限流和成本管理。代理程式的設計和架構必須解決這些基本多租戶概念,我們將在下一節中探討這些概念。