ホームページ >テクノロジー周辺機器 >AI >LangchainチュートリアルでLLMアプリケーションを構築する方法

LangchainチュートリアルでLLMアプリケーションを構築する方法

William Shakespeare
William Shakespeareオリジナル
2025-03-10 11:41:09924ブラウズ

OpenaiのGPT-3、Google’s Bert、MetaのLlamaなどの大規模な言語モデル(LLM)の機能は、マーケティングコンテンツやデータサイエンスコードから詩に至るまで、多様なタイプのテキストを生成することにより、さまざまな産業を変革しています。 CHATGPTはユーザーフレンドリーなチャットインターフェイスのために大きな注目を集めていますが、LLMSをさまざまなソフトウェアアプリケーションに統合することにより、LLMを活用するために多くの未開発の可能性が存在します。ここでは、Langchainを探索します。GPT。

などの大規模な言語モデルに基づいて、アプリケーションを構築するためのオープンソースPythonフレームワーク

langchainを使用してLangchainを使用したAIアプリケーションの構築の詳細については、LangchainとOpenai API AIコードを使用してマルチモーダルAIアプリケーションを構築します。

大規模な言語モデル(LLMS)は何ですか?

LLMは生成AIの一種です。生成的AIとそれがあなたの創造性を高める方法について学びたい場合は、生成AIを使用して生成AI革命の中であなたの創造性とポッドキャストを高めることについてブログをチェックしてください。また、大規模な言語モデルの概念に関する今後のコースに登録することもできます。 Langchainの紹介

Langchainは、大規模な言語モデル(LLM)を搭載したアプリケーションの開発を促進するために設計されたオープンソースフレームワークです。 LLM中心のアプリケーションの構築を簡素化する一連のツール、コンポーネント、およびインターフェイスを提供します。 Langchainを使用すると、言語モデルとの相互作用を管理し、さまざまなコンポーネントをシームレスにリンクし、APIやデータベースなどのリソースを組み込むのが楽になります。 Langchainの詳細については、データエンジニアリングとデータアプリケーションの別の記事をご覧ください。 

Langchainプラットフォームには、開発者がアプリケーションに埋め込むことができるAPIのコレクションが付属しており、すべてをゼロから構築することなく、言語処理機能を注入できるようにします。したがって、LangchainはLLMベースのアプリケーションを作成するプロセスを効率的に簡素化し、専門知識のスペクトル全体の開発者に適しています。 チャットボット、仮想アシスタント、言語翻訳ユーティリティ、センチメント分析ツールなどのアプリケーションは、すべてLLM駆動のアプリのインスタンスです。開発者はLangchainを活用して、特定のニーズに応えるオーダーメイドの言語モデルベースのアプリケーションを作成します。

継続的な進歩と自然言語処理のより広範な採用により、この技術の潜在的なアプリケーションは事実上無限になると予想されます。 Langchainのいくつかの注目すべき特性は次のとおりです

1。特定の要件を満たすための調整可能なプロンプト

2。高度な使用シナリオのためのチェーンリンクコンポーネントの構築

3。データ増強のためのモデルの統合と、GPTやHuggingface Hubなどの一流の言語モデル機能へのアクセス。

4。特定のニーズに合わせて混合とマッチングを可能にする汎用性の高いコンポーネント

5。コンテキストを操作して、精度とユーザーの満足度を強化するためのコンテキストを確立および導きます

python

でLangchainをセットアップします

PythonにLangchainをインストールするのは非常に簡単です。 PIPまたはCondaでインストールできます pip

を使用して

インストールします

Condaを使用して

インストールします

これにより、Langchainの基本的な必需品が設定されます。 Langchainの有用性の多くは、多様なモデルプロバイダー、データストアなどと統合されている場合に実現されます。

デフォルトでは、これらの統合に必要な依存関係はインストールに含まれていません。すべての依存関係をインストールするには、次のコマンドを実行できます。

pip install langchain
最後のオプションは、ソースからライブラリを構築することです。その場合、githubレポからプロジェクトをクローンできます。

環境のセットアップ
install langchain -c conda-forge

Langchainを使用するには、通常、さまざまなモデルプロバイダー、データストア、API、および同様のコンポーネントとの統合が必要です。統合と同様に、Langchainが機能するための適切で関連するAPIキーを提供する必要があります。これを達成するには、2つの方法があります

1。環境変数としてキーを設定します

pip install langchain[all]
環境変数を設定したくない場合は、openai LLMクラスを開始するときにOpenai_Api_keyという名前のパラメーターを介してキーを直接渡すことができます:

2。関連するクラス

にキーを直接セットアップします
pip install langchain
Langchainの重要なコンポーネント

Langchainは、柔軟性とモジュール性に重点を置いているため、際立っています。自然言語処理パイプラインを個別のコンポーネントに分解し、開発者がニーズに応じてワークフローを調整できるようにします。この適応性により、LangchainはさまざまなシナリオやセクターにわたってAIアプリケーションを構築するのに最適です。

コンポーネントとチェーン

Langchainでは、コンポーネントは言語処理パイプラインで特定の関数を実行するモジュールです。これらのコンポーネントは、センチメント分析、意図認識、応答生成モジュールを備えたカスタマーサービスチャットボットチェーンなど、テーラードワークフローの「チェーン」にリンクできます。

プロンプトテンプレート

プロンプトテンプレートは、チェーン全体の再利用可能な事前定義されたプロンプトです。これらのテンプレートは、特定の「値」を挿入することにより、動的で適応可能になります。たとえば、ユーザーの名前を要求するプロンプトは、特定の値を挿入することでパーソナライズできます。この機能は、動的リソースに基づいてプロンプトを生成するのに有益です。

ベクトルストア

これらは、埋め込みによる情報を保存および検索するために使用され、本質的にドキュメントの意味の数値表現を分析します。 VectorStoreは、これらの埋め込みの保管施設として機能し、セマンティックの類似性に基づいて効率的な検索を可能にします。

インデックスおよびレトリバー

インデックスは、モデルのトレーニングデータに関する詳細とメタデータを保存するデータベースとして動作します。また、レトリーバーはこのインデックスを特定の情報を迅速に検索します。これにより、コンテキストと関連情報を提供することにより、モデルの応答が向上します。

出力パーサー

出力パーサーが作用して、モデルによって生成された応答を管理および改良します。望ましくないコンテンツを排除したり、出力形式を調整したり、応答に追加のデータを補完したりできます。したがって、出力パーサーは、言語モデルの応答からJSONオブジェクトのような構造化された結果を抽出するのに役立ちます。

サンプルセレクター

Langchainのサンプルセレクターは、モデルのトレーニングデータから適切なインスタンスを特定するのに役立ち、生成された応答の精度と適切性を改善します。これらのセレクターは、特定の種類の例を支持したり、無関係な例を除外したりして、ユーザー入力に基づいて調整されたAI応答を提供するように調整できます。

エージェント

エージェントは、特定のユースケースのために特定のプロンプト、メモリ、およびチェーンを備えたユニークなLangchainインスタンスです。 Web、モバイル、チャットボットなど、さまざまなプラットフォームに展開して、幅広いオーディエンスに対応できます。

Langchainで言語モデルアプリケーションを構築する方法

Langchainは、Openai、Cohere、Hugging Faceなど、さまざまな言語モデルプロバイダーとインターフェースするために設計されたLLMクラスを提供します。 LLMの最も基本的な機能は、テキストを生成することです。文字列プロンプトを取得して出力を返すLangchainでアプリケーションを構築するのは非常に簡単です。
pip install langchain

output

>>> 「データをいじくり回すと何が得られますか?データサイエンティスト!」

上記の例では、OpenAIのText-ADA-001モデルを使用しています。 Huggingfaceのオープンソースモデルにそれを交換したい場合は、簡単な変更です。

HFアカウントからハグの顔のハブトークンIDを取得できます。
install langchain -c conda-forge

複数のプロンプトがある場合は、生成方法を使用してプロンプトのリストを一度に送信できます。

output
pip install langchain[all]

これは、Langchainを使用して作成できる最も簡単なアプリです。それは迅速なものを取り、それを選択した言語モデルに送信し、答えを返します。 「温度」など、制御できる多くのパラメーターがあります。温度パラメーターは、出力のランダム性を調整し、デフォルトでは0.7に設定されます。 LangchainのLLMSのプロンプトテンプレートの管理LangchainチュートリアルでLLMアプリケーションを構築する方法

llmsには独特のAPIがあります。自然言語でプロンプトを入力することは直感的に思えるかもしれませんが、実際には、LLMからの望ましい出力を達成するためにプロンプ​​トをある程度調整する必要があります。この調整プロセスは、プロンプトエンジニアリングと呼ばれます。適切なプロンプトができたら、他の目的のテンプレートとして使用することをお勧めします。 Langchainの

PROMPTTEMPLATEを使用すると、テンプレートを使用してプロンプトを生成できます。これは、複数の場所で同じプロンプトのアウトラインを使用したいが、特定の値が変更されている場合に役立ちます。

output

1。エッフェルの塔に登り、街の息をのむような景色を眺める
OPENAI_API_KEY="..."

2。セーヌ川沿いのロマンチックなクルーズをお楽しみください。川岸沿いの美しい建築を賞賛します3。ルーブル美術館を探索し、展示されている世界的に有名な芸術作品を賞賛するこのプロンプトを別の都市に再利用する場合は、user_input変数を変更するだけで済みます。私は今、それをパリからメキシコのカンクンに変更しました。出力がどのように変更されたかを確認してください:

output

1。ビーチでリラックス:カリブ海の白い砂浜と透き通った海をお楽しみください。

2。マヤの遺跡を探索してください:チチェン・イッツァ、トゥルム、コバなどの古代の考古学的な場所を訪れて、マヤの歴史と文化について学びます。 3。フードツアーに参加:カンクンのフードツアーに参加して、伝統的なフレーバーを味わって地元の料理について学びます。 LLMとプロンプトをマルチステップワークフローに組み合わせた

Langchainコンテキスト内でのチェーンは、LLMを他の要素と統合してアプリケーションを構築する行為を指します。いくつかの例が含まれます:

    2番目のLLMの入力として最初のLLMの出力を使用して、複数のLLMを順次組み合わせて順次組み合わせます(このセクションを参照)
  • LLMをプロンプトテンプレートと統合する
  • llmsを外部データと統合するなど、質問に答えるなど
  • チャット履歴のような長期メモリにLLMを組み込む
最初のLLMからの出力を2番目のLLMへの入力として使用する最初のシナリオの例を見てみましょう。

pip install langchain
output

この特定の例では、2つのコンポーネントを備えたチェーンを作成します。最初のコンポーネントは、特定の国に対応する最も人気のある都市をユーザーによる入力として特定する責任があります。対照的に、2番目のコンポーネントは、その特定の都市を訪れる観光客が利用できる上位3つのアクティビティまたはアトラクションに関する情報を提供することに焦点を当てています。 LangchainチュートリアルでLLMアプリケーションを構築する方法 Langchainでビルディングアプリケーションのより高度な概念を学びたい場合は、LangchainとGPTを使用したAIアプリケーションの構築に関するこのライブコースをご覧ください。

結論とさらなる学習

ほんの少し前、私たちは皆、ChatGptの印象的な能力に非常に感銘を受けました。しかし、景観は急速に進化しており、今ではLangchainのような新しい開発者ツールにアクセスでき、数時間で個人のラップトップに同様に注目に値するプロトタイプを作成することができます。 オープンソースのPythonフレームワークである

Langchainは、個人がLLMSを搭載したアプリケーションを作成できるようにします(言語モデルモデル)。このフレームワークは、多数の基礎モデルへの多用途のインターフェイスを提供し、プロンプトマネジメントを促進し、プロンプトテンプレート、追加のLLM、外部データ、エージェントを通じて他のツールなどの他のコンポーネントの中央ハブとして機能します(執筆時点)。

生成AIとLLMのすべての進歩に追いついている場合は、LangchainとGPT Webinarを使用した建物AIアプリケーションをチェックしてください。ここでは、Langchainを使用してAIアプリケーションを開発することの基本と、AIアプリケーションを構成する方法と、高性能のためにテキストデータを埋め込む方法を学びます。また、生成AIツールのランドスケープでチートシートを表示して、さまざまなセクターでの生成AIツール、そのアプリケーション、およびその影響のさまざまなカテゴリを探索することもできます。最後に、他の強力なツールについて学ぶためにトップオープンソースLLMSのリストをご覧ください。

以上がLangchainチュートリアルでLLMアプリケーションを構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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