部署多雲端生成式 AI 檢索增強生成 (RAG)
在 Oracle Cloud Infrastructure 和 Microsoft Azure 等多雲端解決方案中使用 OCI Generative AI 和 Oracle Integration 來查詢相關的組織資料,並使用它提供高度情境化的答案。
在 RAG 架構中,Oracle Integration 可以扮演資料協調器的角色,確保所有相關資料來源都可進行擷取。然後,Oracle Cloud Infrastructure Generative AI Agents 會接手這些資料,以利用這些資料提供情境豐富的答案。
OCI GenAI 代理程式會透過內嵌擷取的文件,並透過查詢大型語言模型 (LLM) 來增強其產生的回應,來處理資料以提供內容回應。
因此,雖然這兩個角色都涉及資料生命週期,但其角色在建置多雲端 RAG 架構方面卻是相互補充的。
這種多雲端 RAG 方法提供:
- 多雲端彈性:此架構整合了多個雲端平台 (OCI 和 Azure),讓企業內的資料環境能夠適應變化。
- 高效能連線:適用於 Microsoft Azure 的 Oracle Interconnect 可確保在雲端環境之間快速、安全且可靠的資料傳輸。
- 動態內容產生:代理程式會從不同的來源提取最新資訊,確保 LLM 回應正確且相關。
- 內嵌文件搜尋:透過使用內嵌和語意搜尋, OCI GenAI 代理程式可以根據內容提供更深入的洞察分析,而不只是關鍵字相符項目。
架構
此多雲端解決方案從 Microsoft Azure 和 Oracle Cloud Infrastructure (OCI) 獲得資料,讓 Oracle Cloud Infrastructure Generative AI Agents 存取更廣泛的最新資訊。
OCI GenAI 專員和 Oracle Integration 共同支援擷取、擴增和產生 (RAG) 服務,以提供高度情境化的結果。
OCI GenAI 專員特別注重使用生成式 AI 來回應使用者查詢,方法是從知識庫或文件擷取相關資訊來產生答案。代理程式運用進階 AI 技術、內嵌項目和文件區塊來瞭解及產生相關內容,提供豐富的內容感知回應:
- 擷取:從知識來源擷取相關資料,通常透過進階混合搜尋,結合詞彙與語意搜尋。
- 擴增:使用擷取的資料來提供查詢內容,確保生成式 AI 模型具有必要資訊。
- 產生:使用大型語言模型 (LLM) 對使用者問題產生內容回應,通常由先前步驟中擷取的資料增強。
另一方面,Oracle Integration 提供連接各種應用程式和系統的整合服務,允許跨多個環境協調資料流程:
- 擷取:使用連線代理程式以專用方式連線至 Azure 或其他超大規模計算器上的各種資料來源或服務 (資料庫、REST API、雲端儲存等等),協助從不同來源擷取資料。
- 協調 / 增強:協調工作流程並整合來自多個來源的資料、透過預先設定或動態轉換強化資料以增強程序。
- 管理資料流程:與 RAG 代理程式不同,Oracle Integration 不著重於從資料產生回應,而是啟用系統與應用程式之間的資料順暢移動和轉換,確保所有相關資料都可用於不同的服務。
功能領域 | OCI GenAI 代理程式 | Oracle Integration |
---|---|---|
目的 | 旨在透過擷取資料、增強資料,以及使用 LLM 產生回應來提供 AI 驅動的回應。 | 專為整合及協調多個應用程式的資料而設計,可提供無縫的資料連線能力,但不具備 LLM 驅動的產生功能。 |
資料處理 | 使用資料以內容感知方式產生自然語言回應。 | 處理應用程式之間的資料流,作為系統之間的橋接器,而不會以與 LLM 相同的方式產生內容。 |
生成能力 | 擁有生成式 AI 功能,並使用 LLM 產生對話回應或其他輸出。 | 沒有生成式 AI 功能,可用於跨服務連接、擷取及轉換資料。 |
下圖說明整個架構的資料流程:
multicloud-genai-rag-process-oracle.zip
- 使用者會根據實作與 Oracle Digital Assistant 或 OCI GenAI 代理程式互動,以傳遞使用者查詢與提示。
- Oracle Integration 協調不同元件之間的呼叫:從資料來源提取、處理文件擷取,以及傳送下游使用者提示。
- 資料來源包括:
- Oracle Interconnect for Microsoft Azure 提供 OCI 與 Azure 之間的高頻寬連結,用於文件儲存庫、Oracle Database@Azure 等。
- 本機檔案儲存庫提供內部部署檔案或本機檔案以供擷取。
- OCI 服務,例如 Oracle Fusion Cloud Enterprise Resource Planning 。
- 委派子網路中的 Oracle Database@Azure 可在 Azure 上跨 Oracle 管理的服務共用資料。
- 您可以使用下列不同方式實作文件擷取、分區和內嵌程序:
- Oracle Integration (使用內嵌的 JavaScript 或自訂程式庫) 會執行分塊,並呼叫 OCI Generative AI 進行內嵌。
- OCI Functions 會接收文件、分區,然後呼叫 OCI Generative AI 進行內嵌。
- Oracle Autonomous Database 23ai 使用向量功能執行分區和內嵌。
標準結果是一組在多雲端相關資訊環境中完全管理的區塊文字加上向量內嵌項目。
- 磁區與區塊儲存在 Oracle Autonomous Database 23ai 中:
- 一般的方法是將內嵌儲存在 Oracle Autonomous Database 23ai 的向量索引中。
- 區塊文字本身也可以直接儲存在資料庫 CLOB 中 (用於快速擷取),或作為指向 OCI Object Storage 或 Azure Data Lake 中區塊文字的參照。
- OCI Object Storage 可視需要儲存原始文件,但如果您在資料庫中查詢向量儲存,則不需要將內嵌保留在那裡。
- 當使用者提示問題時, OCI GenAI 代理程式 (或 Digital Assistant) 會呼叫 Oracle Autonomous Database 23ai,以使用使用者提示的內嵌來執行向量相似性搜尋,以根據向量相似性分數來識別最佳相符的區塊。
- OCI Generative AI 會產生問題和文件區塊的內嵌項目,並使用 LLM 模型產生回應,提供內容豐富的答案。區塊擷取和 LLM 回應也取決於實作:
- 如果區塊文字儲存在資料庫中,則可以直接擷取。
- 如果只儲存參照,系統會從 OCI 物件儲存、Azure 資料湖或其他儲存區域快速擷取實際的區塊內容。
- 接著,相關區塊會饋送至 OCI Generative AI 中的 LLM,以及使用者原始的提示,以產生內容豐富的回應。
- 最終答案是由 Oracle Digital Assistant 或 OCI GenAI 代理程式介面傳回,視使用者連線的前端而定。
下圖說明架構:
多雲 -genai-rag-architecture-oracle.zip
- Microsoft Azure 區域
Azure 區域是一個地理區域,其中有一或多個實體 Azure 資料中心 (稱為可用性區域)。區域獨立於其他區域,而廣大的距離可以將其分開 (跨國家或大陸)。
Azure 和 OCI 區域都是本地化的地理區域。對於 Oracle Database@Azure,Azure 區域會連線至 OCI 區域,而 Azure 中的可用性區域 (AZ) 則會連線至 OCI 中的可用性網域 (AD)。選擇 Azure 和 OCI 區域組可將距離和延遲降到最低。
- Microsoft Azure 可用性區域
可用性區域是區域內實體獨立的資料中心,旨在提供高可用性和容錯能力。可用性區域已足以與其他可用性區域建立低延遲連線。
- Microsoft Azure 虛擬網路
Microsoft Azure Virtual Network (VNet) 是 Azure 中專用網路的基礎建立區塊。VNet 可讓許多類型的 Azure 資源 (例如 Azure 虛擬機器 (VM) 安全地相互通訊、網際網路和內部部署網路。
- Microsoft Azure 委派子網路
子網路委派可讓您將受管理的服務 (特別是平台即服務 (PaaS) 服務) 直接插入您的虛擬網路中。委派子網路可以是虛擬網路內外部管理服務的本位目錄,如此即使是外部 PaaS 服務,外部服務仍可作為虛擬網路資源。
- Microsoft Azure 資料湖儲存體
資料湖儲存是雲端型企業資料湖解決方案。其設計目的是以任何格式儲存大量資料,並促進大數據分析工作負載。您可以使用它在單一位置擷取任何類型和擷取速度的資料,以便使用各種架構輕鬆存取和分析。
- Microsoft Azure Synapse Analytics
Azure Synapse Analytics 將資料儲存和處理的集中式服務與可擴充的連結服務架構結合,讓您能夠整合常用的資料儲存、處理平台和視覺化工具。
Oracle Cloud Infrastructure 提供下列元件:
- 地區
Oracle Cloud Infrastructure 區域是一個本地化地理區域,其中包含一或多個稱為可用性網域的資料中心。區域獨立於其他區域,而廣大的距離可以將其分開 (跨國家或大陸)。
- 可用性網域
可用性網域是區域內的獨立獨立資料中心。每個可用性網域中的實體資源會與其他可用性網域中的資源隔離,以提供容錯能力。可用性網域不會共用基礎架構,例如電源或冷卻系統,也不會共用內部可用性網域網路。因此,一個可用性網域的故障不應影響該區域中的其他可用性網域。
- 虛擬雲端網路 (VCN) 和子網路
VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。與傳統的資料中心網路一樣,VCN 可讓您控制網路環境。VCN 可以有多個非重疊的 CIDR 區塊,您可以在建立 VCN 之後變更。您可以將 VCN 區隔成子網路,此子網路可以設定區域範圍或可用性網域。每個子網路都是由連續的位址範圍組成,這些位址不會與 VCN 中的其他子網路重疊。您可以在建立子網路後變更其大小。子網路可以是公用或專用。
- 路由表
虛擬路由表包含將流量從子網路路由到 VCN 外部目的地 (通常是透過閘道) 的規則。
- 安全清單
您可以為每個子網路建立安全規則,以指定必須允許進出子網路的來源、目的地和流量類型。
- 生成式 AI
Oracle Cloud Infrastructure Generative AI 是一個完全受管理的 OCI 服務,提供一組最先進、可自訂的大型語言模型 (LLM),其中涵蓋廣泛的文字產生、摘要、語意搜尋等使用案例。您可以使用遊樂場試用立即可用的預先訓練模型,或根據專屬 AI 叢集上的自己資料建立和託管自己的微調自訂模型。
- 整合
Oracle Integration 是一個完全受管理的預先設定環境,可讓您整合雲端和內部部署應用程式、將業務流程自動化,以及開發視覺應用程式。它使用符合 SFTP 規範的檔案伺服器來儲存和擷取檔案,並透過使用數百個轉接器和處方組合與 Oracle 和第三方應用程式連線,讓您與企業對企業交易夥伴交換文件。
- 物件儲存
OCI Object Storage 可讓您快速存取任何內容類型的大量結構化和非結構化資料,包括資料庫備份、分析資料,以及影像和影片等豐富內容。您可以直接從網際網路或雲端平台內安全地儲存資料。您可以擴展儲存體,而不會發生任何效能或服務可靠性的降低問題。
針對您需要快速、立即和經常存取的「熱」儲存,使用標準儲存。針對長時間保留且極少或極少存取的「冷」儲存,使用封存儲存。
- 功能
Oracle Cloud Infrastructure Functions 是一個完全受管理的多租戶、高度可擴展、隨選、函數即服務 (FaaS) 平台。由 Fn Project 開放原始碼引擎提供技術支援。OCI 函數可讓您部署程式碼,並直接呼叫程式碼或觸發程式碼以回應事件。OCI Functions 使用 Oracle Cloud Infrastructure Registry 中代管的 Docker 容器。
- 分析
Oracle Analytics Cloud 是可擴展且安全的公有雲服務,為業務分析師提供現代化的 AI 自助服務分析功能,以進行資料準備、視覺化、企業報告、增強分析,以及自然語言處理和生成。透過 Oracle Analytics Cloud ,您還可以獲得靈活的服務管理功能,包括快速設定、輕鬆調整規模和修補,以及自動化生命週期管理。
- 數位助理
Oracle Digital Assistant 是一個可供您為使用者建立及部署數位助理的平台。透過 Oracle Digital Assistant ,您可以透過文字、聊天和語音介面,為業務應用程式建立 AI 驅動的介面 (或聊天機器人)。每個數位助理都有一系列一或多個專業技能,可協助使用者以自然語言對話完成各種任務。例如,個人數位助理可能具備著重於特定類型任務的技能,例如追蹤存貨、提交工時卡及建立費用報表。
- 自治式資料庫
Oracle Autonomous Database 是一個完全受管理的預先設定資料庫環境,可用於交易處理和資料倉儲工作負載。您不需要設定或管理任何硬體,也不需要安裝任何軟體。Oracle Cloud Infrastructure 可處理資料庫的建立、備份、修補、升級和調校。