安全性考量

範圍:本文涵蓋與「代理程式記憶體 Python SDK」相關的安全考量。它僅適用於使用 SDK 的主動記憶體功能或儲存層的應用程式。

重要性:「代理程式記憶體」可以保留 Oracle AI Database 中的繫線內容和記憶體記錄,以及啟用 LLM 備份的功能時,將內容傳送至設定的模型端點以進行摘要、記憶體擷取或內嵌。因此,安全部署取決於對應用程式資料、擷取範圍、資料庫存取、外部模型端點和保留原則的謹慎處理。

LLM 備份記憶體處理的考量

代理程式記憶體支援主動記憶體功能,例如執行緒摘要與自動記憶體擷取。啟用這些功能時,SDK 可能會將最新的訊息、繫線摘要、擷取的記憶體,或搜尋文字傳送至設定的 LLM 或內嵌端點。

注意:請只將內容傳送至適用於已設定模型端點和部署原則的「代理程式記憶體」。在內容進入記憶體管線之前進行驗證並將其最小化,並避免在訊息或記憶體中包含加密密碼、證明資料或不必要的機密資料。將擷取的記憶體、摘要、相關資訊環境卡和其他模型衍生文字視為不受信任的輸出,必須由整合應用程式安全複查及處理。

使用主動記憶體功能時,請遵循下列建議:

持續性與資料最小化的考量

「代理程式記憶體」的設計是在使用資料庫備份存放區時,將訊息、記憶體、描述資料以及內嵌項目保留在 Oracle AI Database 中。這可允許持久的擷取和跨階段作業記憶體,但也表示應用程式應規劃適合保留的資料。

下列指引有助於確保部署符合安全的資料處理實務:

關於擷取範圍與存取控制的考量

「代理程式記憶體」使用呼叫程式提供的 user_idagent_idthread_id 值來擷取範圍。這是一個強大的篩選模型,但當決定如何使用或顯示擷取的內容時,不應該是應用程式唯一依賴的控制項。

依照預設,繫線作用領域擷取會使用 user_idagent_id 的完全相符項目,以及 thread_id 的更廣泛相符項目,因此相關結果可以跨相同使用者代理程式組的過去繫線。頂層 OracleAgentMemory.search()search_async() 呼叫也需要具體 user_id 和完全相符的使用者。它們會拒絕省略的使用者範圍 user_id=Noneexact_user_match=False,因此公用從屬端 API 不會意外搜尋多個使用者。

設計擷取時,請運用下列課堂練習:

關於應用程式整合與來電者信任的考量

「代理程式記憶體」主要由整合應用程式或其他信任的後端程式碼呼叫,而非由一般使用者直接呼叫。它不是一般使用者方面的安全界限,而且不會自行執行一般使用者認證或授權。套裝軟體信任呼叫程式為每個作業提供正確的 user_idagent_idthread_id 以及擷取範圍。

注意:整合應用程式負責認證一般使用者、授權存取,以及在呼叫「代理程式記憶體 API」之前衍生正確的 user_id 和範圍。呼叫者提供的 user_id 為範圍值,而非識別證明。

將 SDK 整合至代理應用程式時,請使用下列實務:

資料庫存取、綱要管理以及加密密碼的考量

「代理程式記憶體」使用呼叫程式提供的 Oracle AI Database 連線或集區。套裝程式不會建立或管理資料庫證明資料本身。它也不會代表呼叫程式建立、交涉或升級資料庫網路加密。

注意:

建議使用下列部署實務:

關於網路通訊和外部端點的考量

部署設定遠端 LLM 或內嵌提供者時,代理程式記憶體可與外部服務通訊。SDK 會透過設定的從屬端路徑轉寄提示和要求參數,但周圍的應用程式和部署仍需負責保護這些連線。

我們建議您:

關於資源耗盡向量的考量

記憶體工作流程可以隨著時間增加資料庫使用量、嵌入流量和 LLM 權杖使用量。這既適用於惡意過度使用,也適用於無辜的實作錯誤,例如過大訊息或過度廣泛的擷取模式。

使用這些控制項作為生產強化的一部分: