LangFlow | LLMを使用してアプリケーションを開発するためのLangChainのUI

LangChainのUIは、LLMを使用してアプリケーションを開発するためのLangFlowです

イントロダクション

大規模言語モデルは世界中で大きな話題となっています。ChatGPT、GPT3、Bardなどの大規模言語モデルが登場することで、開発者はこれらのモデルを活用して新しい製品ソリューションを開発し続けています。新しいバージョンの大規模言語モデルや新しいモデルが毎日登場するため、これらに追いつくことは問題です。各大規模言語モデルのドキュメントを調べる必要があります。LangChainは、さまざまな大規模言語モデルにラップされたライブラリであり、作業を容易にします。さらに、LangChainに基づいたUIであるLangFlowは、直接アプリケーションを作成および操作できるようになり、作業がより簡単になりました。

学習目標

  • LangFlow UIの理解
  • LangFlowのインストールと操作
  • LangFlowの内部機能の理解
  • LangFlowを使用してアプリケーションを作成する
  • LangFlowを通じて作成したアプリケーションの共有

この記事は、Data Science Blogathonの一環として公開されました。

LangFlowとは何か、なぜLangFlowを使用するのか

LangFlowは、react-flowを使用して設計されたPythonパッケージであるLangChainに基づいたグラフィカルなUIです。LangChainは、大規模言語モデルを使用してアプリケーションを作成するためのPythonパッケージです。エージェント、大規模言語モデル、チェーン、メモリ、プロンプトなど、さまざまなコンポーネントで構成されています。開発者はこれらのブロックを連結させてアプリケーションを作成します。LangChainには、ほとんどの人気のある大規模言語モデルのラッパーが含まれています。しかし、LangChainを使用するには、アプリケーションを作成するためのコードを書く必要があります。コードを書くことは、時間がかかることもあり、エラーを引き起こすこともあります。

ここでLangFlowが登場します。LangFlowはLangChainに基づいたグラフィカルなUIです。LangChainで提供されるすべてのコンポーネントが含まれています。LangFlowはドラッグアンドドロップ機能を提供しており、コンポーネントをスクリーン上にドラッグして大規模言語モデルからアプリケーションを構築できます。さらに、誰でも使える豊富な例も含まれています。この記事では、このUIについて説明し、それを使用してアプリケーションを構築する方法を説明します。

Langflowを始めましょう

LangFlowとは何か、およびその機能の理解を深めるために、これからLangFlowについて詳しく見ていきましょう。LangFlow UIはJavaScriptとPythonの両方で利用できます。どちらかを選んで使用することができます。Pythonのバージョンを使用する場合、システムにPythonがインストールされている必要があり、LangChainライブラリも必要です。

LangFlowを使用するには、次のパッケージが必要です

pip install langchain
pip install langflow

上記のコマンドを使用して、LangflowパッケージとLangChainパッケージをインストールします。次に、以下のコマンドを使用してUIを起動します

python -m langflow

(または)

langflow

これでLangFlow UIが起動します。ローカルホストのポート番号7860で実行されています。この方法でLangFlowをインストールして使用することができます。

LangFlowの開発者であるLogSpace AIは、LangFlowをHuggingFaceのウェブサイトに直接デプロイしています。HuggingFaceのウェブサイトにアクセスするには、ここをクリックするか、Googleで検索してください。以下のような表示になります。[New Project]をクリックします。

[Create New Project]をクリックすると、LangFlow UIが表示されます。

ここで白いスペースがあり、コンポーネントをドラッグしてアプリケーションを作成します。左側にはコンポーネント(エージェント、チェーン、ローダーなど)が表示されます。コンポーネントをクリックすると、さまざまなタイプのコンポーネントが表示されます。その中から選択して白いスペースにドラッグします。白いスペースでは、さまざまなコンポーネントを組み合わせてアプリケーション全体を作成します。

LangFlow UIの理解

このセクションでは、LangFlowのUI、その要素、およびUIの動作について簡単に説明し、LangFlowを使用して迅速に大規模言語アプリケーションを構築する方法をより良く理解します。

上の写真では、LangFlow UIの右上セクションを見ることができます。アイコンの意味は理解できます。2番目のアイコンはエクスポートオプションを表しています。したがって、LangFlowを使用してアプリケーションを構築し、ローカルマシンにダウンロードしたい場合、アプリケーションの設定をJSONファイルに変換することでそれを行うことができます。エクスポートオプションをクリックすると、アプリケーションの情報を含むJSONファイルをダウンロードすることができます。今度は、友達が同じアプリケーションを構築したい場合、最初のオプションであるインポートをクリックし、それにJSONファイルを渡すだけでできます。

3番目のオプションは、アプリケーションをPythonコードに変換します。これにより、LangFlowのウェブサイトにアクセスする代わりに、ローカルシステムで直接作業することができます。

LangChainには多くの大規模な言語モデルのラッパーがあります。各大規模言語モデルにはそれぞれのAPIがあります。LangFlowでLLMを使用する場合、上記でAPIキーを追加するオプションが提供されます。それに加えて、使用する大規模言語モデルのタイプを選択するオプションもあります。

LangFlowを使用してシンプルなチャットアプリケーションを作成する

このセクションでは、LangFlow UIを使用してシンプルなチャットボットアプリケーションを作成します。このアプリケーションではOpenAIの大規模言語モデルを使用するため、Open APIキーが必要です。作成するアプリケーションは、ユーザーの質問に面白く答えるチャットボットです。

作成するアプリケーションには、大規模言語モデル、プロンプトテンプレート、およびそれらを接続するLLM Chainの3つの要素があります。まず、LangChainのOpenAIラッパーをUIの点線セクションにドラッグして開始しましょう。

OpenAI大規模言語モデルラッパー

Open AI大規模言語モデルラッパーは、LangFlowのLLMセクションで見つけることができます。これを白いセクションにドラッグアンドドロップします。ここでは、使用するモデルのタイプを選択します。今のところ、Davinciモードに設定します。モデルの創造性を示す温度は0.7に設定し、最大トークン数は256に設定します。Open APIキーのフィールドには、Open APIキーを提供する必要があります。その下のフィールドは空白のままにしておくことができます。

写真からわかるように、プロンプトテンプレートを白いセクションにドラッグアンドドロップしました。ここで、開発しているアプリケーションは面白く返信するシンプルなボットなので、プロンプトテンプレートを適切に書く必要があります。

プロンプトテンプレート

あなたはユーモラスな方法で人間のクエリに応答するAIボットです。

Human: {query}

AI:

最後の要素であるChain要素に進みましょう。LLM Chainは、OpenAIの大規模言語モデルとプロンプトテンプレートを結合する要素です。左側のUIのChainsセクションでLLMChainを見つけることができます。最後に、すべてを結びつける時間です。

上記の画像のように、PromptテンプレートをLLMChainのPromptに接続し、OpenAIのエンドをLLMChainのエンドに接続します。

さて、アプリケーションをテストする時間です。アプリケーションを実行するには、UIの右下にあるサンダーボルトアイコンをクリックします。OpenAIキーが有効であれば、各要素の上部、要素名の近くに緑の点が表示されます(最初は黄色です)。その後、サンダーボルトアイコンの下に青いチャットアイコンが表示されます。青いチャットアイコンをクリックします。

クリックすると、チャットウィンドウが開き、UIで提供されるLarge Language Modelとチャットすることができます。ボットに「お元気ですか?」と尋ねてみましょう。このためには、ボットが面白い返答をする必要があります。

ボットがPromptテンプレートに従って面白く応答したことが確認できます。JSONにエクスポートするだけで誰とでも共有できます。これはLangFlowとLangChainで達成できるサンプルの一つに過ぎません。

結論

LangFlow UIはPythonのLangChainフレームワークの上に構築されており、大規模な言語モデルを用いたアプリケーションを作成するために広く使用されています。UIのコンポーネントを見て、UIを使用してモデルを構築し、JSONファイルにエクスポートして別の人と共有する方法を見てきました。このUIを使用すると、ハイエンドなアプリケーションを作成する可能性が無限大です。

キーポイント

  • LangFlowはLLMを使用したアプリケーションを簡単に作成できるドラッグアンドドロップ機能を提供します。
  • LangFlow UIはPythonとJavaScriptの両方で利用可能です。
  • このUIでは、アプリケーションをJSONファイルに変換することができます。そのため、共有が容易です。
  • LangFlowにはPythonパッケージも付属しており、ユーザーはLangFlowで作成したアプリケーションを実行するために、JSONファイルへのパスを指定することができます。
  • LangFlowは非開発者が大規模な言語モデルを使用してアプリケーションを構築するのを容易にします。

よくある質問

この記事に表示されているメディアはAnalytics Vidhyaの所有物ではなく、著者の裁量で使用されています。

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

データサイエンス

PatchTST 時系列予測における画期的な技術革新

トランスフォーマーベースのモデルは、自然言語処理の分野(BERTやGPTモデルなど)やコンピュータビジョンなど、多くの分野で...

AIテクノロジー

ChatGPTが1歳になりました:バイラルなモバイルアプリと数百万ドルの収益!

2023年は盛りだくさんの一年でした。ChatGPTが1年を迎え、我々の日常生活における人工知能の境界を再定義してきました。ChatG...

データサイエンス

「LangChainエージェントを使用してLLMをスーパーチャージする方法」

「LangChainエージェントを使用すると、アプリケーション内でLarge Language Modelを拡張し、外部の情報源にアクセスしたり、...

機械学習

あなたのリスニングプレイリストに追加するためのトップ8のAIポッドキャスト

機械学習と人工知能の急速な進展する世界では、専門家や愛好家にとって最新の開発や見解にアップデートされることは重要です...

機械学習

このAIペーパーは、東京大学で深層学習を超新星シミュレーションの問題に応用しました

東京大学の研究者チームは、3D-Memory In Memory (3D-MIM) と呼ばれる深層学習モデルを開発しました。このモデルは、超新星(S...

人工知能

無料のAI製品写真ツール

全てのビジネスオーナーの皆様へ:高額な商品写真家に二度とお金を払う必要はありません!