使用 Oracle IntegrationOCI Generative AI 啟用低程式碼模組化 LLM 應用程式引擎

Oracle Integration 是一項完全託管的服務,可讓企業連線、擴充及自動化功能採用低程式碼或無程式碼方法,以快速將應用程式、業務流程、API 及資料現代化。Oracle Integration 具備視覺化開發體驗、預建整合和嵌入式最佳實務,可協調 API、應用程式、系統等,並啟用 AI 驅動和人工自訂應用程式和業務流程。

Oracle Cloud Infrastructure Generative AI ( OCI Generative AI) 是完全託管的服務,提供一組最先進、可自訂的大型語言模型 (LLM),涵蓋廣泛的文字產生、摘要、內嵌及交談完成使用案例。您可以使用操場 - 主控台中的介面來探索代管的預先訓練和自訂模型,而無需撰寫單行程式碼,或根據您自己在專屬 AI 叢集上的資料建立和託管自己的微調自訂模型。

Oracle IntegrationOCI Generative AI 服務與其他 OCI 服務 (例如 Oracle Cloud Infrastructure Streaming ( OCI Streaming 、Oracle 管理的 Kafka 服務)、 OCI 文件理解 (使用 REST API 呼叫進行光學字元辨識 (OCR)、文字擷取、索引鍵值擷取、表格擷取及文件分類) 結合在一起的無伺服器服務)、Oracle Cloud Infrastructure Language (使用 REST API 呼叫進行文字情感分析、具名實體識別的無伺服器服務,分類等)、 OCI Vision (使用 REST API 呼叫進行物件偵測和映像檔分類的無伺服器服務)、Oracle Cloud Infrastructure Data Science (資料科學團隊可以用來建置、訓練、訓練的無伺服器平台並使用 Oracle Integration 的原生轉接器和視覺化開發方法管理機器學習 - ML 模型) 和其他模型,可讓您啟用模組化、可擴展、可維護且安全的自訂 LLM 型應用程式。

架構

此參考架構提供啟用 AI 型、模組化及事件導向 LLM App 引擎的必要考量和建議,用途為:

  • 適用於 LLM 應用程式之資料載入器和查詢引擎流程的低程式碼或無程式碼方法,搭配 Oracle Integration 視覺協調工具和不同社交、生產力和業務資料通道的原生轉接器 (使用者輸入至 LLM 應用程式引擎,包括文件、影像、業務資料或查詢) 和來源 (LLM App 引擎使用的資料來源),以及 LLM App 引擎使用之不同 OCI 服務的原生轉接器 ( OCI Generative AI REST API、向量資料庫或商店、Oracle Cloud Infrastructure Language REST API、Oracle Cloud Infrastructure Data Science 自訂模型 REST 端點等)。這有助於快速設定您的 LLM 應用程式業務流程
  • 一種事件導向模式,可使用 OCI Streaming 服務 (Oracle 管理的 Kafka 服務) 和 Oracle Integration 中此 OCI 服務的原生轉接器,將文件、映像檔和業務資料通道和來源以及 LLM 應用程式引擎之資料載入器和查詢引擎模組的查詢通道脫鉤。這有助於啟用可擴充且效能優異的 LLM 應用程式。
  • 使用 Oracle Integration Connectivity Agent 與第三方雲端、內部部署應用程式、系統等等的專用連線,這是混合雲與多雲整合架構的關鍵支援配套。特別是在 LLM 應用程式中,其中文件、圖像、業務資料、使用者查詢可以來自這些系統,而您想要將文件和資料的傳輸保持在私密和安全。這有助於提升端對端 LLM 流程的安全性,使流量保持在專用網路中。
  • 在您的 LLM App 中使用原生 LLM 模型或微調自訂 LLM 模型作為 OCI 中的服務 (使用 Oracle Integration 雲端原生轉接器協調 OCI Generative AI 模型端點或 OCI 資料科學模型端點)。
  • 使用 LLM APP 引擎為您的 LLM 應用程式插入或拔除自己的使用者介面 (UI),或使用 Oracle Integration 或 Oracle APEX 下的 Visual App 產生器建立 UI 的低程式碼方法。

下圖說明此參照架構。



oci-lowcode-ai-arch-oracle.zip

低程式碼 LLM 應用程式引擎由 2 個主要區塊組成:

文件、映像檔及業務資料載入器
oci-generative-ai-llm-data-loader-arch.png 的描述如下
oci-generative-ai-llm-data-loader-arch.png 圖解描述

oci-generative-ai-llm-data-loader-arch-oracle.zip

  • 此區塊會先接收使用者透過社交 / 生產力管道 (例如 Whatsapp、Outlook、Gmail、Twitter 等) 新增的輸入文件、影像或業務資料、業務資料管道 (例如,內部部署的第三方或雲端 Web 應用程式、內容管理系統、第三方雲端儲存,例如 Microsoft Azure Cloud Storage、AWS S3、Google 雲端儲存、FTP、檔案伺服器、ERP、CX、HCM - 內部部署或 SaaS 應用程式等等)、自訂知識搜尋引擎 UI (例如,使用 Oracle Integration 底下的 Visual Builder 或 Oracle Database 底下的 Oracle APEX 建立的自訂 UI) 或使用 Oracle Integration Visual Orchestration Flows 和原生轉接器直接內建於 OCI Object Storage 貯體中。
  • 文件、影像或商業資料會根據輸入類型擷取。例如,對於影像物件,文字偵測可以使用 OCI AI Vision 服務,針對文件分類,擷取您可以使用 OCI AI 文件理解服務、特定類型的影像、您可以使用 OCI Functions 在偏好的程式設計語言中使用無伺服器函數的文件等等。
  • 文件、影像或業務資料可透過下列任一項來處理:
    • 使用 OCI AI 語言服務 (例如實體、關鍵字擷取、關鍵字詞組擷取、情感分析、個人識別資訊 /PII 偵測和混淆處理等) 擷取中繼資料,以進一步擷取相關內容 (例如啟用擷取擴增層代 (RAG) 等)。
    • 使用 OCI Generative AI 服務以 LLM 模型內嵌資料,以進一步擷取相關內容 (例如啟用擷取擴增層代 (RAG) 等等)。
    • 使用 OCI Generative AI 服務彙總具有 LLM 模型的資料,以進一步擷取相關內容 (例如,啟用「摘要索引」以搜尋多個文件,亦稱為「結構化階層擷取」等等)。
    • 將資料儲存在關聯式存放區,以進一步搜尋結構化資料 (例如 Oracle Database、Oracle Database Cloud Service、Autonomous Database、MySQL、PostgreSQL 等)。
    • 為「向量存放區」中的資料編製索引,以進一步搜尋非結構化資料 (例如,Vector、Summary、Keyword Indexes with OCI AI Vector Search、OCI Search Service with OpenSearch、Qdrant 等等)。

      注意:Oracle Database 23.4c 將提供新的 AI 向量相似性搜尋功能。

查詢引擎
oci-generative-ai-llm-query-engine-arch.png 的描述如下
oci-generative-ai-llm-query-engine-arch.png 圖解描述

oci-generative-ai-llm-query-engine-arch-oracle.zip

  • 此區塊會先透過 Social、Productivity Channel (例如 Whatsapp、Outlook、Gmail 等) 收到使用者的輸入查詢、業務資料通道 (例如第三方內部部署 / 雲端 Web 應用程式),等等) 或自訂「知識搜尋引擎 UI」(例如,使用 Oracle Integration Visual Orchestration Flows 和原生轉接器,使用 Oracle Integration 下的 Visual Builder 或 Oracle Database 下的 Oracle APEX 建立的自訂 UI)。
  • 查詢會使用 Oracle Integration 輸入查詢管線,其中可以透過下列任一項進行處理:
    • 使用 OCI Generative AI 服務篩選查詢,以避免提示資料隱碼。
    • 使用 OCI Generative AI 服務重新編寫或轉換查詢,以獲得更好的相關內容擷取。
    • 使用 OCI Generative AI 以查詢引擎選取器遞送查詢,以決定如何以資料彙總方式執行查詢,作為特定內容擷取。
    • 如果需要交談記憶體的交談完成使用案例,請使用 OCI Cache with Redis 從交談歷史記錄存放區擷取交談歷史記錄。
    • 使用 OCI Generative AI 服務內嵌查詢,以進行相關內容擷取使用案例 (例如啟用擷取擴增層代 (RAG) 等等)。
    • 使用 OCI Generative AI 服務遞送相關內容擷取程式,以決定要從哪些資料來源取得資料以回答輸入查詢。
    • 擷取相關相關資訊環境資料以從向量存放區 (例如,OCI AI 向量搜尋、OCI Search Service with OpenSearch、Qdrant 等) 回答查詢,以擷取擴增層代 (RAG) 使用案例、關聯式存放區 (例如 Oracle Database、Oracle Database Cloud Service、Autonomous Database、MySQL、PostgreSQL 和以此類推) 搜尋結構化業務資料,或 Social、Productivity 和 Business Data Sources (例如 Twitter、Outlook、Gmail、ERP/HCM/CX Apps 等等) 以依需求搜尋業務資料,Oracle Integration 使用原生轉接器進行所有協調以連線至這些資料來源。
    • 使用在 OCI 資料科學中部署並公開的 Re-Rank 模型對擷取的相關相關資訊環境資料進行排名,以最佳化搜尋。
    • 使用 OCI Generative AI 服務功能產生查詢的最終答案,以進行彙總、產生及交談完成。

此架構具有下列元件:

  • Oracle Integration

    Oracle Integration 是一個完全託管的服務和低程式碼企業連線、擴充和自動化平台,可快速將應用程式、業務流程、API 和資料現代化。開發人員和雲端架構師可以透過視覺化開發體驗、預建整合和嵌入式最佳實務,將 SaaS 和內部部署應用程式連線速度提高 6 倍。Oracle Integration 可讓您原生存取 Oracle Cloud ERP、HCM 和 CX 中的事件。連接應用程式特定的分析孤島,以簡化請購到收貨、招募到付款、從潛在客戶到收到發票及其他關鍵流程。最後,為您的 IT 和企業領導者提供端到端的能見度。

  • OCI 世代 AI

    Oracle Cloud Infrastructure (OCI) Generative AI 是一項完全託管的服務,可透過 API 順暢地將這些多功能語言模型整合至各種使用案例,包括撰寫協助、摘要及交談。OCI Generative AI 服務包括下列基礎模型:

    • 層代:提供從文字產生文字或擷取資訊的指示。
    • 彙總:使用指示的格式、長度和語調來彙總文字。
    • 內嵌:將文字轉換成要在應用程式中用於語意搜尋、文字分類或文字叢集的向量內嵌。
  • OCI 文件理解

    OCI 文件理解是一項 AI 服務,可讓開發人員透過 API 和命令行介面工具,從文件檔案擷取文字、表格和其他關鍵資料。透過 OCI 文件理解,您可以使用預先建立的 AI 模型將繁瑣的業務處理工作自動化,並自訂文件擷取以滿足特定產業的需求。

  • Oracle Cloud Infrastructure Language

    OCI Language 是無伺服器和多租用戶服務,可使用 REST API 呼叫進行存取。它提供經常重新訓練和監控的預先訓練模型,為您提供最佳結果。語言提供您人工智慧和機器學習功能,以偵測非結構化文字中的語言。此外,它還提供其他工具,協助您進一步取得文字的洞察分析。

  • OCI 視覺

    OCI Vision 是一項 AI 服務,可大規模執行深度學習的影像分析。有了立即可用的預建模型,開發人員無需機器學習 (ML) 專長,即可輕鬆在應用程式中建立影像辨識和文字辨識。對於特定產業使用案例,開發人員可以使用自己的資料自動訓練自訂視覺模型。這些模型可用來偵測製造中的視覺異常、從文件擷取文字以自動化業務工作流程,以及標記影像中的項目以盤點產品或出貨。除了取得預先訓練模型的存取權之外,開發人員還可以建立沒有資料科學專業知識的自訂模型,或管理自訂模型基礎架構。

  • 物件儲存

    物件儲存可讓您快速存取各種內容類型的大量結構化和非結構化資料,包括資料庫備份、分析資料,以及豐富的內容 (例如影像和影片)。您可以安全地儲存資料,然後直接從網際網路或雲端平台內擷取資料。您可以無縫擴充儲存體,而不會發生任何效能或服務可靠性的降低情況。針對快速、立即且經常存取的「熱」儲存體,使用標準儲存體。將封存儲存用於保留很長一段時間、極少或極少存取的「冷」儲存。

  • 資料科學

    Oracle Cloud Infrastructure Data Science 是一個完全受管理的無伺服器平台,資料科學團隊可以用來在 Oracle Cloud Infrastructure (OCI) 上建置、訓練及管理機器學習 (ML) 模型。它可以輕鬆與其他 OCI 服務整合,例如 Oracle Autonomous Data WarehouseOracle Cloud Infrastructure Object Storage 等。您可以建立和評估高品質的機器學習模型,透過讓企業信任的資料快速運作,提高業務彈性,並且可以更輕鬆地部署 ML 模型來支援資料導向的業務目標。

  • OCI 搜尋服務與 OpenSearch

    OCI Search Service with OpenSearch 是以 Oracle 管理的服務形式提供的洞察分析引擎。在不停機的情況下,Oracle 會自動修補、更新、升級、備份和調整服務的大小。客戶可以快速儲存、搜尋及分析大量資料,並近乎即時地查看結果。

  • 含 Redis 的 OCI 快取

    Oracle Cloud Infrastructure Cache with Redis 是一款全方位的託管記憶體式快取解決方案,以開源 Redis 的基礎打造。這項完全託管的服務可加速資料讀取和寫入,大幅提升應用程式回應時間和資料庫效能,以改善客戶體驗。

  • APEX 服務

    Oracle APEX Application Development (APEX) 是低程式碼開發平台,可讓您建立可擴充、功能豐富、安全且可部署到 Oracle Database 安裝位置的企業 App。您不需要是各種技術的專家,就能提供精密的解決方案。APEX 服務包含內建功能,例如使用者介面主題、導覽控制項、表單處理程式,以及可加速應用程式開發的彈性報表。

  • Oracle Database 23 (AI 向量搜尋)

    Oracle Database 23c 為尋求建構新微服務、圖形、文件和關聯式 applications.Oracle 的開發人員提供了最完整且簡單的融合式資料庫。該計畫宣布了使用 AI 向量將語意搜尋功能新增至 Oracle Database 23c 的計畫。稱為「AI 向量搜尋」的功能集合包括新的向量資料類型、向量索引和向量搜尋 SQL 運算子,可讓 Oracle Database 將文件、影像和其他非結構化資料的語意內容儲存為向量,並使用這些運算子以快速執行相似性查詢。如需詳細資訊,請參閱「瀏覽更多」區段中的「新聞稿」連結。

  • 串流處理

    Oracle Cloud Infrastructure 串流處理提供完全管理、可擴展且持久的儲存解決方案,可讓您擷取連續的大量資料串流,並即時加以使用及處理。您可以使用「串流處理」來擷取大量資料 (例如應用程式日誌、作業遙測、Web 按一下串流資料);或用於在發布 / 訂閱訊息傳遞模型中以持續且循序方式產生及處理資料的其他使用案例。

  • 事件

    Oracle Cloud Infrastructure 服務會發出事件,這些事件是描述資源變更的結構化訊息。系統會發出事件來建立、讀取、更新或刪除 (CRUD) 作業、資源週期狀態變更,以及影響雲端資源的系統事件。

  • 功能

    Oracle Cloud Infrastructure Functions 是一個完全託管的多租戶,可高度擴展,隨選 Functions-as-a-Service (FaaS) 平台。它由 Fn Project 開放原始碼引擎提供技術支援。函數可讓您部署程式碼,並直接呼叫或觸發程式碼以回應事件。Oracle Functions 使用 Oracle Cloud Infrastructure Registry 中代管的 Docker 容器。

  • API 閘道

    Oracle API Gateway 可讓您發布內含可從您網路存取之專用端點的 API,以及在必要時對公用網際網路公開的 API。端點支援 API 驗證、要求與回應轉換、CORS、認證與授權,以及要求限制。

  • Web 應用系統防火牆 (WAF)

    Oracle Cloud Infrastructure Web Application Firewall (WAF) 是一種與付款卡產業 (PCI) 相容、以區域為基礎的邊緣強制實行服務,連附至強制點,例如負載平衡器或 Web 應用程式網域名稱。WAF 可保護應用程式免於惡意和非必要網際網路流量的危害。WAF 可以保護任何連結網際網路的端點,對客戶的所有應用系統強制實施一致的規則。

  • 地區

    Oracle Cloud Infrastructure 區域是包含一或多個資料中心 (稱為可用性網域) 的本地化地理區域。區域與其他區域無關,且遠距離可加以區分 (跨國家,甚至是大陸)。

  • 虛擬雲端網路 (VCN) 和子網路

    VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。就像傳統資料中心網路一樣,VCN 可讓您完整控制網路環境。VCN 可以有多個非重疊的 CIDR 區塊,您可以在建立 VCN 之後加以變更。您可以將 VCN 分割成子網路,子網路可以限定為區域或可用性網域。每個子網路都是由不與 VCN 中其他子網路重疊的連續位址範圍所組成。您可以在建立子網路後變更其大小。子網路可以是公用或專用。

建議

使用下列建議作為起點。您的需求可能與此處描述的架構不同。
  • 維護和高可用性

    參考架構僅使用 Oracle 管理的 PaaS 服務。您不需要使用此解決方案來安裝、修補、更新或升級軟體。適用於:Oracle IntegrationOCI Generative AIOCI Document UnderstandingOCI VisionOracle Cloud Infrastructure LanguageOracle Cloud Infrastructure Data ScienceOCI Object StorageOCI EventsOCI StreamingOCI FunctionsOCI API GatewayOracle Cloud Infrastructure Web Application Firewall

    唯一可以要求注意的元件是安裝在運算執行處理中的 Oracle Integration Connectivity Agent,可存取位於專用網路中的 OCI OpenSearch 叢集、Autonomous Database 等資源。遵循 Oracle Integration 文件中的指導方針,讓 Oracle Integration Connectivity Agent 易於維護且具有高可用性。

  • 擴展性和大小

    此參考架構使用 PaaS 服務,且可立即擴充至其包含的大部分服務。請注意,OCI OpenSearch 叢集以及 OCI Cache with Redis 叢集不會自動縱向擴展和縮減 (僅限手動)。因此,根據您的使用案例,需要正確調整解決方案。

  • 連線

    OCI 內的所有連線應透過專用網路建立:

    • 您可以使用 Oracle Integration 中的專用端點選項或連線代理程式,連線至專用 OCI 服務,例如 OCI Streaming 、Oracle Autonomous Database、Oracle Database、Oracle Database Cloud Service 等等。
    • 連線至專用服務的 Oracle Integration Connectivity Agent (例如 OCI OpenSearch 叢集)、 OCI Cache with Redis 叢集等等) 應安裝在部署這些服務的相同專用子網路內的 OCI VM 中。
    • 您建立的 OCI 串流 Kafka 串流或主題應與部署於專用端點的串流集區 (與 OCI VCN 中的專用子網路關聯) 關聯。如果 OCI Streaming Private Kafka Streams 或主題 (例如文件和映像檔擷取結果主題) (請參閱上面的邏輯區塊 文件、映像檔及業務資料載入器 ),它們會從 OCI Events 接收 OCI 文件瞭解擷取結果檔案描述資料,您可以運用 OCI Functions 與 OCI Events,將訊息傳遞給專用串流端點。
    • 連線至第三方內部部署或雲端服務 (例如 Azure SQL 資料庫) 的連線代理程式應安裝在部署這些外部服務之相同專用子網路內的 VM 中。
  • 限制對 Oracle Integration 執行處理的存取

    設定 Oracle Integration 允許清單 (之前為白名單),以限制可存取您 Oracle Integration 執行處理的網路。只有來自特定 IP 位址的使用者、系統、無類別網域間路由 (CIDR) 區塊,以及您指定的虛擬雲端網路,才能存取 Oracle Integration 執行處理。

    在此參考架構中,Oracle Integration 允許清單會限制對 Oracle Integration 執行處理的存取,只允許部署在 OCI、Oracle SaaS Apps、非 Oracle Cloud、內部部署 Web、Saas、雲端應用程式以及與代管 Oracle Integration Connectivity Agent 之 VM 相關聯的 VCN OCID 起始的要求。

注意事項

建置此參照架構時,請考量下列各點。

  • 安全

    OCI Generative AI 中的專用 AI 叢集是運算資源,可用來微調自訂 LLM 模型或代管自訂 LLM 模型的端點。叢集專供您的模型使用,不會與其他租用戶共用。使用自訂模型 OCI Generative AI 可讓您使用自己的資料調整模型。否則,您可以透過使用 OCI Generative AI 隨選模型、Vector Store (例如,OCI Vector Search、Open Search 等等) 等技術,導入結合內嵌、索引等的擷取擴增層 (RAG) 來使用自己的資料。

    使用 Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 原則控制可存取雲端資源的人員 (例如 Oracle Integration、OCI Language、OCI Vision、OCI Generative AI 服務、OCI Streaming、OCI Compute 執行處理等等),以及可執行的作業。若要保護資料庫密碼或任何其他加密密碼,請考慮使用 OCI 保存庫服務。

    文件和映像檔都儲存在私有 OCI Object Storage 貯體中。當使用者在「知識搜尋引擎 UI」內按一下文件時,會建立含短期的暫時連結。使用 Oracle Cloud Infrastructure Web Application Firewall (WAF) 篩選和規則,保護透過 OCI API 閘道公開的 Oracle Integration REST 觸發協調流程,免於遭受 DDO 攻擊、SQL 資料隱碼繫線等惡意攻擊。

  • 擴展性

    建立 OCI 串流串流或主題時,管理員可指定其計畫使用的串流數目。您可以為每個「業務網域」建立串流 (例如,InvoiceStream、PurchaseOrderStream 等等)。管理員也會指定計畫在每個「串流」或「主題」使用的分割區。分割區可讓您將訊息分割至多個節點,以便讓多個用戶以平行方式從串流、主題讀取 (在此情況下,您可以在 Oracle Integration 中有多個相同用戶整合流程的複製項,每個複製項使用 OCI Streaming 轉接器作為觸發程式,從串流或主題的不同分割區讀取。

    建立 Oracle Integration 執行處理時,管理員可指定計畫用於每個執行處理的訊息套件數目。

  • 資源限制

    請考慮租用戶的最佳做法、依服務區分的限額以及區間配額。

認可

  • Author: Juan Carlos González Carrero
  • Contributors: Bob Peulen, Alexandru Negrea