瞭解 Azure OpenAI 的檢索增強生成(RAG)

已完成

搭配 Azure OpenAI 的 RAG 可讓開發人員使用支援的 AI 聊天模型,以參考特定的資訊來源來建立響應的基礎。 新增這項資訊可讓模型參考所提供的特定數據及其預先定型的知識,以提供更有效的回應。

Azure OpenAI 可將預先定型的模型連線到您自己的數據源,以啟用RAG。 數據上的 Azure OpenAI 會利用 Azure AI 搜尋服務的搜尋功能,將相關數據區塊新增至提示字元。 一旦您的數據位於 AI 搜尋索引中,數據上的 Azure OpenAI 就會執行下列步驟:

  1. 接收使用者提示。
  2. 判斷提示的相關內容和意圖。
  3. 使用該內容和意圖查詢搜尋索引。
  4. 在 Azure OpenAI 提示字元中插入搜尋結果區塊,以及系統訊息和使用者提示字元。
  5. 將整個提示傳送至 Azure OpenAI。
  6. 傳回回應和數據參考 (如果有任何) 給使用者。

根據預設,數據上的 Azure OpenAI 會鼓勵但不需要模型只使用您的數據來回應。 連接您的數據時,可以取消選取此設定,這可能會導致模型選擇使用其預先定型的知識來取代您的數據。

微調與RAG

微調是一種技術,用來透過使用其他定型數據的數據集來定型現有的基礎模型,例如 gpt-35-turbo 建立自定義模型。 微調可能會導致比提示工程更高質量的要求、在大於提示的範例上自定義模型,並讓使用者提供較少的範例以取得相同的高質量回應。 不過,微調的程式既昂貴又耗費時間,而且應該只用於必要使用案例。

在數據上使用 Azure OpenAI 的 RAG 仍會使用無狀態 API 來連線到模型,以移除使用您的數據定型自定義模型的需求,並簡化與 AI 模型的互動。 AI 搜尋會先尋找有用的信息來回應提示,然後將該資訊新增至提示做為地面數據,然後 Azure OpenAI 會根據該資訊形成回應。