通過 3 個簡單的步驟使用 RAGAS 評估您的 RAG 應用

Mondo 科技 更新 2024-02-26

在LLM和聊天機械人的世界裡,幻覺是我們最常遇到的問題。 幻覺通常通過兩種常用的技術來處理,這些技術針對特定任務進行了微調。

檢索增強生成。

在這兩個選項中,RAG系統更受個人歡迎。 但是,在構建 RAG 應用程式時,有許多選項可供選擇,如圖 1 所示

如您所見,在構建 RAG 應用程式時,有很多選項可供選擇。 但是,更重要的是選擇適合您最佳需求的一種。 這裡有乙個很棒的框架 - RAGAS:用於評估基於 RAG 的應用程式的檢索增強生成的自動評估。 這側重於指標驅動開發 (MDD),以提高 RAG 應用程式的效能

注意:我們將使用 Open AI 的 GPT-4 來評估準備好的資料,確保您準備好了 Open AI API 金鑰)使用首選的包管理器安裝包。在這裡,我使用 pip 來安裝和管理依賴項。

pip install -u -q ragas tqdm datasets
匯入已安裝的軟體包。
from ragas.metrics import ( answer_relevancy, faithfulness, context_recall, context_precision, context_relevancy, answer_correctness, answer_similarity)from ragas.metrics.critique import harmfulnessfrom ragas import evaluate
假設您已經有要評估的資料,如果沒有,請使用以下示例資料。 ( 可選 )。
git clone sample_ragas_dataset
使用從 Open AI Platform Dashboard 複製的 API 金鑰設定 API 金鑰環境變數。 在這裡,我通過 colab secret 傳遞變數。 因此,在執行裝置之前,請確保已將 API 金鑰值分配給金鑰變數。
import osfrom google.colab import userdataos.environ["openai_api_key"] = userdata.get('openai_api_key')
在這裡,我從 json 檔案載入資料。
from datasets import load_datasetragas_dataset = load_dataset('json', data_files='data.json')data = ragas_dataset['train']
使用從 ragas 匯入的指標評估包含列的資料集; 問題、答案、背景和基本事實。
result = evaluate( data, metrics=[ context_precision, faithfulness, answer_relevancy, context_recall, context_relevancy, answer_correctness, answer_similarity ],raise_exceptions=false)print(result)
我對示例資料集的評估結果如下:
使用 Plotly 將計算出的指標結果視覺化為雷達圖。 (如果您覺得其他劇集可能是本集固有的,請發表評論。 
import plotly.graph_objects as godata = fig = go.figure()fig.add_trace(go.scatterpolar( r=list(data.values())theta=list(data.keys())fill='toself', name='ensemble rag'))fig.update_layout( polar=dict( radialaxis=dict( visible=true, range=[0, 1] )showlegend=true, title='retrieval augmented generation - evaluation', width=800,)fig.show()
用於視覺化 RAG 評估指標的出色雷達圖。

Ragas 官方文件:

google colab:

原文鏈結:點讚並關注二師兄談話了解更多資訊,並閱讀我的簡短技術文章。

相關問題答案

    如何為您的網站評估和選擇正確的HTTPS身份驗證級別!

    在評估和選擇適合您的 HTTPS 認證級別時,需要考慮以下幾個因素 .型別和用途 您需要知道的第一件事是您的型別和用途。如果您只需要提供基本資訊呈現和 那麼較低階別的 https 身份驗證可能就足夠了。但是,如果您正在處理敏感的使用者資訊 例如付款 登入等 則更高階別的 HTTPS 身份驗證更合適。...

    通過HTTPS身份驗證保護您的客戶資料免遭盜竊!

    使用 HTTPS 身份驗證可確保客戶資料在傳輸過程中不會被盜。以下是 HTTPS 身份驗證如何保護客戶資料的幾個關鍵方面 .資料加密 HTTPS使用SSL TLS協議對資料進行加密,以確保資料在傳輸過程中不會被黑客和竊聽者竊取或篡改。這意味著即使有人攔截了資料包,也無法解密其內容。.身份驗證 HTT...

    如何將 iCloud 用於您的個人雲儲存解決方案

    iCloud 是 Apple 提供的一項雲儲存服務,可讓您隨時隨地訪問您的個人資料,例如電子郵件 筆記 文件等。以下是使用 iCloud 的基本步驟 第 步 登入 iCloud 首先,您需要使用Apple ID登入iCloud。如果您還沒有 Apple ID,您可以在 Apple 的官方 登入後,i...

    如何通過HTTPS身份驗證保護您的網站免受DDoS攻擊!

    使用 HTTPS 身份驗證可以提供一些保護,但它主要用於加密資料傳輸,而不是針對 DDoS 分布式拒絕服務 攻擊的特定防禦。但是,這裡有一些方法可以增強您對 DDoS 攻擊的 防禦 HTTPS 身份驗證 .增加網路頻寬 DDoS 攻擊通常會通過傳送大量請求來使目標 的伺服器過載,從而導致服務不可用。...

    解決常見平板,給您流暢體驗

    平板電腦作為一種極其便攜和多功能的電子裝置,在我們的生活中發揮著越來越重要的作用。但是,隨著使用時間的增加,我們不可避免地會遇到平板電腦的一些問題,例如卡頓 電池壽命縮短等。今天,我們將解決一些常見的平板電腦問題,並提供一些有效的處理方法,以便您可以繼續享受平板電腦帶來的便利和樂趣。首先,我們來處理...