共用方式為


使用適用於 PostgreSQL 的 Azure 資料庫建立 AI

Generative AI 是指一類 AI 演算法,可從現有的多媒體內容中學習併產生新內容。 產生的內容可以透過提示和微調等技術進行自訂。 產生 AI 演算法會套用特定的機器學習模型:

  • 用於生成文本的變壓器和遞迴神經網路(RNN)
  • 產生影像的衍生對抗網路 (GAN) 和變化自動編碼器 (VAE)

生成式 AI 被用於影像和音樂合成、醫療保健,以及文字自動完成、文字摘要及翻譯等常見任務。 產生式 AI 技術可啟用數據的功能,例如叢集和分割、語意搜尋和建議、主題模型、問答和異常偵測。

下列影片示範如何使用適用於 PostgreSQL 的 Azure 資料庫和 pgvector 擴充模組 搭配生成式 AI,以協助您瞭解本文中的概念。

OpenAI

OpenAI 是一家以在 AI 和機器學習領域開拓性工作而聞名的研究組織和技術公司。 其使命是確保人工智慧(AGI),其指的是高度自主的 AI 系統,可在最經濟上有價值的工作中超越人類,有利於所有人。 OpenAI 帶來了最先進的生成模型,如 GPT-3、GPT-3.5 和 GPT-4。

Azure OpenAI 是Microsoft服務供應專案,可協助使用 Azure 建置產生式 AI 應用程式。 Azure OpenAI 為客戶提供具有 OpenAI GPT-4、GPT-3、Codex、DALL-E 和 Whisper 模型的進階語言 AI,以及 Azure 的安全性和企業功能。 Azure OpenAI 與 OpenAI 共同開發 API,以確保相容性並使過渡順暢。

透過 Azure OpenAI,客戶可享有 Microsoft Azure 的安全性功能,同時執行與 OpenAI 相同的模型。 Azure OpenAI 提供私人網路、區域可用性,以及負責任 AI 內容篩選。

深入了解 Azure OpenAI

大型語言模型

大型語言模型 (LLM) 是一種 AI 模型,其會定型大量的文字數據,以瞭解併產生人類般的語言。 LLM 通常是以深度學習架構為基礎,例如轉換器。 他們以執行各種自然語言理解和產生工作的能力而聞名。 Azure OpenAI 服務和 OpenAI 的 ChatGPT 是 LLM 供應專案的範例。

LLM 的主要特性和功能包括:

  • 規模:就其架構所使用的參數數目而言,LLM 的規模非常龐大。 GPT-3 之類的模型包含從數億到數萬億個參數,讓它們能夠以語言擷取複雜的模式。
  • 預訓練:LLM 透過從互聯網中獲取的大量文字數據進行預訓練。 此預先定型可讓他們瞭解文法、語法、語意,以及廣泛的語言與世界知識。
  • 微調:預先訓練之後,可以根據具有較小工作特定資料集的特定工作或網域來微調 LLM。 此微調程式可讓它們適應更特製化的工作,例如文字分類、翻譯、摘要和問答。

GPT

GPT 代表 Generative Pretrained Transformer,它指的是 OpenAI 開發的一系列大型語言模型。 GPT 模型是預先定型來自因特網大量數據的神經網路,因此能夠理解和產生人類般的文字。

以下是主要 GPT 模型和其主要特性的概觀:

  • GPT-3:於 2020 年 6 月發行,以及 GPT 系列中著名的模型。 它有 1750 億個參數,使其成為存在的最大且最強大的語言模型之一。

    GPT-3 在廣泛的自然語言瞭解和產生工作中取得顯著的表現。 它可以執行文字完成、翻譯和像人一樣流暢回答問題等工作。

    GPT-3 分為各種模型大小,範圍從最小(1.25億個參數)到最大(1750億個參數)。

  • GPT-4:OpenAI 的最新 GPT 模型。 它有 1.76 萬億個參數。

向量

向量是一種數學概念,用於線性代數和幾何,以代表同時具有大小和方向的數量。 在機器學習的內容中,向量通常用來代表資料點或特性。

向量的主要屬性和作業包括:

  • 大小:向量長度或大小,通常表示為其常態,代表數據的大小。 這是非負數實數。
  • 方向:方向會指出它所代表之數量的方向或角度,相對於參考點或座標系統。
  • 元件:向量可以沿著不同的軸或維度分解成其元件。 在 2D 笛卡兒座標系統中,向量可以分別表示為 (xy),其中 xy 是沿著 x 軸和 y 軸的元件。 n 維度中的向量是 n 元組 ({x1, x2… xn})。
  • 加法和純量乘法:向量可以加在一起以形成新的向量,而且可以乘以純量(實數)。
  • 點產品和交叉產品:向量可以透過點產品(純量產品)和交叉產品(向量產品)合併。

向量資料庫

向量資料庫,也稱為向量資料庫管理系統(DBMS),是一種資料庫系統,其設計目的是要有效率地儲存、管理和查詢向量數據。 傳統關係資料庫主要處理數據表中的結構化數據,而向量資料庫則針對以向量表示的多維度數據點儲存和擷取優化。 這些資料庫適用於涉及相似度搜尋、地理空間資料、建議系統和叢集這類作業的應用程式。

向量資料庫的主要特性包括:

  • 向量儲存:向量資料庫會將數據點儲存為具有多個維度的向量。 每個維度都代表資料點的功能或屬性。 這些向量可以代表各種不同的數據類型,包括數值、類別和文字數據。
  • 有效率的向量運算:向量資料庫已針對執行向量運算進行優化,例如向量加法、減法、點產品和相似度計算(例如余弦相似度或 Euclidean 距離)。
  • 有效率的搜尋:有效率的索引編製機制對於快速擷取類似的向量至關重要。 向量資料庫使用各種編製索引機制來啟用快速擷取。
  • 查詢語言:向量資料庫提供針對向量作業和相似性搜尋量身打造的查詢語言和 API。 這些查詢語言可讓使用者有效率地表達其搜尋準則。
  • 相似度搜尋:向量資料庫在相似性搜尋中表現優異,讓用戶能夠尋找類似所提供查詢點的數據點。 在搜尋和建議系統中,此特性深具價值。
  • 地理空間數據處理:某些向量資料庫是針對地理空間數據所設計,因此非常適合位置服務、地理資訊系統(GIS)和地圖相關工作等應用程式。
  • 支援各種數據類型:向量資料庫可以儲存和管理各種類型的數據,例如向量、影像和文字。

PostgreSQL 可以透過 pgvector 延伸模組的協助來取得向量資料庫的功能。

嵌入技術

內嵌是機器學習和自然語言處理的概念,涉及在多維度空間中將物件(例如文字、檔或實體)表示為向量。

這些向量通常密集。 也就是說,它們具有大量的維度。 他們透過各種技術來學習,包括神經網路。 內嵌旨在擷取連續向量空間中物件之間的語意關聯性和相似性。

常見的內嵌類型包括:

  • Word:在自然語言處理中,文字內嵌會將文字表示為向量。 每個字組都會對應至高維度空間中的向量,其中具有類似意義或內容的字組會彼此接近。 Word2VecGloVe 是熱門的文字內嵌技術。
  • 文件:檔案內嵌會將檔表示為向量。 Doc2Vec 很適合用來建立檔內嵌。
  • 影像:影像可以表示為內嵌,以擷取物件辨識等工作的視覺功能。

內嵌是代表複雜、高維度數據的核心,以機器學習模型可以輕鬆地處理的形式呈現。 其可以根據大型資料集進行訓練,然後作為各種工作的功能來使用。 LLM 會使用它們。

PostgreSQL 可以使用 Azure AI 延伸模組 OpenAI 整合來取得產生向量內嵌的功能。

案例

Generative AI 在各種領域和產業都有廣泛的應用程式,包括技術、醫療保健、娛樂、金融、製造等。 以下是一些人們可以使用產生的 AI 來完成的一些常見工作:

  • 語意搜尋
    • Generative AI 可在數據上啟用語意搜尋,而不是語彙搜尋。 後者會尋找與查詢完全相符的結果,而語意搜尋會尋找符合搜尋意圖的內容。
  • 聊天機器人和虛擬助理:
    • 開發可參與自然內容感知對話的聊天機器人;例如,為客戶實作自助。
  • 建議系統:
    • 產生項目或使用者的內嵌或表示,以改善建議演算法。
  • 叢集和分割:
    • 生成式AI生成的嵌入向量可使聚類算法將數據聚類,以便類似的數據被分組在一起。 此叢集可啟用客戶分割等案例,讓廣告客戶根據其屬性以不同的方式鎖定客戶。
  • 內容產生:
    • 為聊天機器人、小說/詩歌創作和自然語言理解等應用程式產生人類般的文字。
    • 為圖形、娛樂和廣告建立逼真的影像、藝術品或設計。
    • 為電影、遊戲和行銷產生影片、動畫或視訊效果。
    • 產生音樂。
  • 翻譯:
    • 將文字從一種語言翻譯成另一種語言。
  • 摘要:
    • 摘要說明要擷取重要資訊的長篇文章或文件。
  • 資料增強:
    • 產生額外的數據範例,以擴充和改善機器學習模型的定型數據集。
    • 針對在真實世界中難以收集或成本昂貴的案例建立綜合資料,例如醫學影像。
  • 藥物發現:
    • 產生分子結構,並預測藥物研究的潛在藥物候選項目。
  • 遊戲開發:
    • 建立遊戲內容,包括關卡、角色和構造。
    • 產生真實遊戲內環境和景觀。
  • 資料去噪和補全
    • 產生乾淨的資料範例來清除雜訊資料。
    • 在資料集中填入遺漏或不完整的資料。