ホームページ >テクノロジー周辺機器 >AI >動作中の是正布(岩石)

動作中の是正布(岩石)

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌オリジナル
2025-03-13 10:37:08402ブラウズ

検索された生成(RAG)は、情報検索を組み込むことにより、大規模な言語モデル(LLM)を強化します。これにより、LLMは外部の知識ベースにアクセスできるようになり、より正確で最新の、および文脈的に適切な応答が得られます。高度なぼろきれの手法である是正ぼろきれ(CRAG)は、取得された文書の自己反省と自己評価メカニズムを導入することにより、精度をさらに強化します。

主要な学習目標

この記事では:

  • CRAGのコアメカニズムとWeb検索との統合。
  • バイナリスコアリングとクエリの書き換えを使用したCRAGのドキュメント関連評価。
  • 岩山と伝統的なぼろきれの重要な区別。
  • Python、Langchain、およびTavilyを使用した実践的なクラッグの実装。
  • 検索と応答の精度を最適化するために、評価者、クエリライター、およびWeb検索ツールを構成する実用的なスキル。

Data Science Blogathonの一部として公開されています。

目次

  • クラッグの根本的なメカニズム
  • クラッグ対伝統的なぼろきれ
  • 実用的な岩山の実装
  • クラッグの課題
  • 結論
  • よくある質問

クラッグの根本的なメカニズム

CRAGは、Web検索を検索プロセスと生成プロセスに統合することにより、LLM出力の信頼性を高めます(図1を参照)。

ドキュメント取得:

  • データの摂取:関連するデータはインデックス化されており、Web検索ツール(Tavily AIなど)がリアルタイムデータ取得のために構成されています。
  • 初期検索:ユーザーのクエリに基づいて、ドキュメントは静的な知識ベースから取得されます。

関連性評価:

評価者は、取得されたドキュメントの関連性を評価します。文書の70%以上が無関係であるとみなされる場合、是正措置が開始されます。それ以外の場合、応答生成が進行します。

Web検索統合:

ドキュメントの関連性が不十分な場合、CragはWeb検索を使用します。

  • クエリの改良:元のクエリは、Web検索結果を最適化するように変更されています。
  • Web検索の実行: Tavily AIなどのツールは追加データを取得し、現在および多様な情報へのアクセスを保証します。

応答生成:

CRAGは、初期検索とWeb検索の両方からのデータを合成して、コヒーレントで正確な応答を作成します。

動作中の是正布(岩石)

クラッグ対伝統的なぼろきれ

CRAGは、検証なしで検索されたドキュメントに依存している従来のぼろとは異なり、取得した情報を積極的に検証および改良します。 CRAGは、多くの場合、リアルタイムのWeb検索を組み込んでおり、静的な知識ベースへの従来のRagの依存とは異なり、最新情報へのアクセスを提供します。これにより、高精度とリアルタイムのデータ統合が必要なアプリケーションにCragが理想的になります。

実用的な岩山の実装

このセクションでは、Python、Langchain、およびTavilyを使用した岩山の実装について詳しく説明しています。

ステップ1:ライブラリのインストール

必要なライブラリをインストールする:

 !ピップインストールTiktoken Langchain-Openai Langchainhub Chromadb Langchain Langgraph tavily-python
!PIPインストール-QuPypdf langchain_community

ステップ2:APIキー構成

APIキーを設定します:

 OSをインポートします
os.environ ["tavily_api_key"] = ""
os.environ ["openai_api_key"] = ""

ステップ3:ライブラリの輸入

必要なライブラリをインポートします(Brevityのために省略されていますが、元の例と同様)。

ステップ4:チャンクおよびレトリーバーの作成を文書化します

(Brevityのためにコードは省略されていますが、PYPDFLOADER、recursIveCharacterTextSplitter、OpenAiemBedings、およびChromaを使用して、元の例と同様)。

ステップ5:ラグチェーンのセットアップ

(Brevityのためにコードは省略されていますが、元の例と同様に、 hub.pull("rlm/rag-prompt")およびChatOpenAI使用しています)。

ステップ6:評価者のセットアップ

(Brevityのためにコードは省略されていますが、元の例と同様に、 Evaluatorクラスを定義し、評価のためにChatOpenAI使用しています)。

ステップ7:クエリライターのセットアップ

(Brevityのためにコードは省略されていますが、元の例と同様に、 ChatOpenAIを使用してクエリの書き換えに)。

ステップ8:Web検索セットアップ

langchain_community.tools.tools.tavily_search Import tavilysearchresultsから
web_search_tool = tavilysearchresults(k = 3)

ステップ9-12:ランググラフワークフローのセットアップと実行

(Brevityのために省略されたコードですが、概念的には元の例と類似して、 GraphState 、Function Nodes( retrievegenerateevaluate_documentstransform_queryweb_search )を定義し、 StateGraphを使用して接続します。)従来のRAGとの最終出力と比較も概念的に似ています。

クラッグの課題

Cragの有効性は、評価者の精度に大きく依存します。弱い評価者はエラーを導入できます。スケーラビリティと適応性も懸念事項であり、継続的な更新とトレーニングが必要です。 Web検索統合は、偏った情報または信頼できない情報のリスクを導入し、堅牢なフィルタリングメカニズムを必要とします。

結論

クラッグにより、LLM出力の精度と信頼性が大幅に向上します。リアルタイムのWebデータで取得した情報を評価および補足する能力により、高精度と最新の情報を要求するアプリケーションにとって価値があります。ただし、評価者の精度とWebデータの信頼性に関連する課題に対処するには、継続的な改良が重要です。

キーテイクアウト(オリジナルに似ていますが、簡潔さのために言い換えられます)

  • CRAGは、現在の関連情報のWeb検索を使用してLLM応答を強化します。
  • その評価者は、応答生成のための高品質の情報を保証します。
  • クエリ変換は、Web検索結果を最適化します。
  • RAGとは異なり、RAGはリアルタイムのWebデータを動的に統合します。
  • クラッグは情報を積極的に検証し、エラーを減らします。
  • CRAGは、高精度とリアルタイムデータを必要とするアプリケーションに有益です。

よくある質問(オリジナルに似ていますが、簡潔さのために言い換えられます)

  • Q1:岩山とは何ですか? A:正確性と信頼性の向上のためにWeb検索を統合する高度なRAGフレームワーク。
  • Q2:クラッグ対伝統的なぼろきれ? A:CRAGは、取得した情報を積極的に検証および改良します。
  • Q3:評価者の役割? A:ドキュメントの関連性の評価と修正のトリガー。
  • Q4:文書が不十分ですか? A:Web検索付きのCrag Supplements。
  • Q5:信頼できないWebコンテンツの処理? A:高度なフィルタリング方法が必要です。

(注:画像は変更されておらず、元の入力のように含まれています。)

以上が動作中の是正布(岩石)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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