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

機械学習

FlashAttentionアルゴリズムの深い探求-パート3

私たちのFlash Attentionシリーズの第3部へようこそ!このセグメントでは、FlashAttention V1アルゴリズムの内部機能について...

機械学習

高性能意思決定のためのRLHF:戦略と最適化

はじめに 人間の要因/フィードバックからの強化学習(RLHF)は、RLの原則と人間のフィードバックを組み合わせた新興の分野で...

データサイエンス

ドメイン適応:事前に学習済みのNLPモデルの微調整

ドメイン適応のために事前学習済みNLPモデルの微調整方法を学びましょう特定の文脈でのパフォーマンスと精度を向上させますス...

AI研究

「UCLAの研究者たちは、広帯域の回折光学ニューラルネットワークに基づいて設計されたマルチスペクトルQPIシステムを紹介する」

量子位相イメージング(QPI)は、多くの科学および顕微鏡の分野での最先端のイメージング手法です。透明または半透明の材料を...

AIニュース

著者たちはAI企業に対して団結し、著作権保護された作品に対する尊重と報酬を求めます

著名な作家、マーガレット・アトウッド、ヴィエット・タン・グエン、フィリップ・プルマンなどの文学の巨匠たちが、人工知能...

AIテクノロジー

「2023年の最高の声クローニングソフトウェア10選」

はじめに 人工知能を使って人の声をコピーすることができるなんて、すごく驚きませんか?AIを利用した音声クローニングソフト...