ホームページ テクノロジー周辺機器 AI ラグパフォーマンスを改善する方法:5つの重要なテクニックを使用して

ラグパフォーマンスを改善する方法:5つの重要なテクニックを使用して

Mar 07, 2025 am 09:22 AM

検索拡張生成(RAG)は、外部データを組み込むことにより、大規模な言語モデル(LLM)の精度と信頼性を大幅に向上させます。これにより、回答がコンテキスト化され、再訓練なしで更新が可能になります。 ただし、RAGは普遍的に効果的ではありません。この記事では、堅牢なラグパイプラインの構築を詳述し、制限を調査し、ソリューションを提供しています。

Openai Fundamentals(簡単に言及し、拡張する必要はありません) Openai APIの使用について詳しく知ります。 今すぐ開始

ragの仕組み:

(llamaindexドキュメントからの画像)

How to Improve RAG Performance: 5 Key Techniques with Examples

ラグパイプラインは、インデックス、検索、および生成の3つの段階で構成されています。

インデックス作成:

データ(さまざまな形式)がクリーニングされ、プレーンテキストに変換され、管理可能なピースに充電され、埋め込みモデルを使用して数値ベクター(埋め込み)に変換されます。 これらの埋め込みとチャンクは、効率的な検索のためにインデックスが付けられています

  • 検索:ユーザークエリは、同じ埋め込みモデルを使用してベクトル化されます。 このシステムは、クエリベクトルとインデックス付きチャンクベクトル間の類似性スコアを計算し、最も類似したチャンクの上部Kを取得します。

  • 生成:

    クエリと取得したチャンクは、プロンプトにフォーマットされ、回答生成のためにLLMに供給されます。

  • ぼろきれの制限:
  • 各段階に課題が存在します:

  • インデックス作成:
ノイズの多いデータは、役に立たないLLM応答につながります。

検索:

システムは常に関連するチャンクを取得するとは限りません

世代:
    良い検索があっても、LLMは誤った回答を幻覚させる可能性があります。
  • ラグパフォーマンスの改善:
  • 3つの重要な戦略は、これらの制限に対処します:チャンク、再ランク、クエリ変換。 以下は、Wikipediaエントリに関する質問に答えるためにLlamaindexとOpenai APIを使用してこれらを示しています(Emma Stone、Ryan Gosling、La La Land)。
  • ベースラインラグシステム:
  • 必要なパッケージをインストール:
OpenAI APIキーを設定します:

ウィキペディアのデータをロードしてインデックスを構築します:

コンテキストベースの回答を確保するためのプロンプトテンプレートを作成します:

(簡潔にするために、初期クエリとサブパーレスポンスは省略されています。焦点は改善戦略にあります。)

チャンキングで改善:
!pip install llama-index openai wikipedia
ログイン後にコピー

検索を最適化するには、
import os
os.environ["OPENAI_API_KEY"] = "YOUR_OPENAI_API_KEY"
ログイン後にコピー
および

を調整します

from llama_index.core import (VectorStoreIndex, ServiceContext, download_loader)
WikipediaReader = download_loader("WikipediaReader")
loader = WikipediaReader()
pages = ['Emma_Stone', 'La_La_Land', 'Ryan_Gosling']
documents = loader.load_data(pages=pages, auto_suggest=False, redirect=False)

from llama_index.llms import OpenAI
from llama_index.embeddings import OpenAIEmbedding, OpenAIEmbeddingModelType
gpt3 = OpenAI(temperature=0, model="gpt-3.5-turbo-instruct", api_key=os.environ["OPENAI_API_KEY"])
embed_model = OpenAIEmbedding(model=OpenAIEmbeddingModelType.TEXT_EMBED_ADA_002, api_key=os.environ["OPENAI_API_KEY"])
service_context_gpt3 = ServiceContext.from_defaults(llm=gpt3, chunk_size=256, chunk_overlap=0, embed_model=embed_model)
index = VectorStoreIndex.from_documents(documents, service_context=service_context_gpt3)
retriever = index.as_retriever(similarity_top_k=3)
ログイン後にコピー
再ランキングで改善:

(flagembeddingrerankerとrankgptrerankのコードの例は簡潔に省略されていますが、説明は残っています)

  • flagembeddingReranker:hugge慢な顔の再ランクモデル(例えば、BAAI/bge-reranker-base)を使用して、チャンク関連性を改善します。 ハグするフェイスアクセストークンが必要です。

  • rankgptrerank:llm(例えば、gpt-3.5-turbo-0125)を使用して、セマンティック理解に基づいて検索されたチャンクを再ランクします。

  • クエリ変換により改善:

(HydeおよびMulti-Stepクエリ変換のコード例は簡潔にするために省略されていますが、説明は残っています)

hyde(仮説文書の埋め込み):

仮説的な答えを生成し、クエリと仮想の回答の両方に埋め込みを作成し、これらの埋め込みに最も近いドキュメントを取得します。
  • マルチステップクエリ変換:複雑なクエリをよりシンプルなサブQuerieに分解して、より効果的な処理を行います。

  • 結論: この記事では、ぼろきれのパフォーマンスを向上させるためのいくつかの手法を紹介しました。最適なアプローチは、特定のアプリケーションと望ましい結果に依存します。 RAGのさらなる調査は、[こちらのコードビデオへのリンク]で見つけることができます。

以上がラグパフォーマンスを改善する方法:5つの重要なテクニックを使用しての詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Meta Llama 3.2を始めましょう - 分析Vidhya Meta Llama 3.2を始めましょう - 分析Vidhya Apr 11, 2025 pm 12:04 PM

メタのラマ3.2:マルチモーダルとモバイルAIの前進 メタは最近、ラマ3.2を発表しました。これは、モバイルデバイス向けに最適化された強力なビジョン機能と軽量テキストモデルを特徴とするAIの大幅な進歩です。 成功に基づいてo

10生成AIコーディング拡張機能とコードのコードを探る必要があります 10生成AIコーディング拡張機能とコードのコードを探る必要があります Apr 13, 2025 am 01:14 AM

ねえ、忍者をコーディング!その日はどのようなコーディング関連のタスクを計画していますか?このブログにさらに飛び込む前に、コーディング関連のすべての問題について考えてほしいです。 終わり? - &#8217を見てみましょう

AVバイト:Meta' s llama 3.2、GoogleのGemini 1.5など AVバイト:Meta' s llama 3.2、GoogleのGemini 1.5など Apr 11, 2025 pm 12:01 PM

今週のAIの風景:進歩、倫理的考慮、規制の議論の旋風。 Openai、Google、Meta、Microsoftのような主要なプレーヤーは、画期的な新しいモデルからLEの重要な変化まで、アップデートの急流を解き放ちました

GPT-4o vs Openai O1:新しいOpenaiモデルは誇大広告に値しますか? GPT-4o vs Openai O1:新しいOpenaiモデルは誇大広告に値しますか? Apr 13, 2025 am 10:18 AM

導入 Openaiは、待望の「Strawberry」アーキテクチャに基づいて新しいモデルをリリースしました。 O1として知られるこの革新的なモデルは、推論能力を強化し、問題を通じて考えられるようになりました

ビジョン言語モデル(VLM)の包括的なガイド ビジョン言語モデル(VLM)の包括的なガイド Apr 12, 2025 am 11:58 AM

導入 鮮やかな絵画や彫刻に囲まれたアートギャラリーを歩くことを想像してください。さて、各ピースに質問をして意味のある答えを得ることができたらどうでしょうか?あなたは尋ねるかもしれません、「あなたはどんな話を言っていますか?

ラマ3.2を実行する3つの方法-Analytics Vidhya ラマ3.2を実行する3つの方法-Analytics Vidhya Apr 11, 2025 am 11:56 AM

メタのラマ3.2:マルチモーダルAIパワーハウス Metaの最新のマルチモーダルモデルであるLlama 3.2は、AIの大幅な進歩を表しており、言語理解の向上、精度の向上、および優れたテキスト生成機能を誇っています。 その能力t

PIXTRAL -12B:Mistral AI'の最初のマルチモーダルモデル-Analytics Vidhya PIXTRAL -12B:Mistral AI'の最初のマルチモーダルモデル-Analytics Vidhya Apr 13, 2025 am 11:20 AM

導入 Mistralは、最初のマルチモーダルモデル、つまりPixtral-12B-2409をリリースしました。このモデルは、Mistralの120億個のパラメーターであるNemo 12bに基づいて構築されています。このモデルを際立たせるものは何ですか?これで、画像とTexの両方を採用できます

SQLに列を追加する方法は? - 分析Vidhya SQLに列を追加する方法は? - 分析Vidhya Apr 17, 2025 am 11:43 AM

SQLの変更テーブルステートメント:データベースに列を動的に追加する データ管理では、SQLの適応性が重要です。 その場でデータベース構造を調整する必要がありますか? Alter Tableステートメントはあなたの解決策です。このガイドの詳細は、コルを追加します

See all articles