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

機械学習

エコジェンに会ってください:生物学者や生態学者のためにリアルな鳥の歌を生成するために設計された新しいディープラーニングのアプローチ

ディープラーニングの登場は、さまざまな分野に大きな影響を与え、さまざまな領域にその影響を広げています。注目すべき応用...

機械学習

「vLLMに会ってください:高速LLM推論とサービスのためのオープンソース機械学習ライブラリ」

大規模な言語モデル(LLM)は、プログラミングアシスタントやユニバーサルチャットボットなどの新しいアプリケーションを可能...

データサイエンス

ユーザーフィードバック - MLモニタリングスタックの欠けている部分

「AIモデルを数ヶ月もかけて実装し、何百万円も投資してみたけれど、誰も使ってくれないことって経験ありますか?採用の課題...

機械学習

「イギリスのテックフェスティバルが、クリエイティブ産業でAIを活用するスタートアップ企業を紹介する」

英国最大的技术节之一,企业和初创公司本周正展示他们最新的创新成果,举办研讨会,并庆祝位于英国西南部的技术生态系统的不...

データサイエンス

学ぶための勇気: L1&L2正則化の解明(パート3)

「‘MLの学びへの勇気:L1とL2正則化の解読’ 第3回目にお帰りなさい前回は、正則化の目的について掘り下げ、L1とL2の方法を解...

機械学習

このAI論文では、リーマン幾何学を通じて拡散モデルの潜在空間の理解に深入りします

人工知能や機械学習の人気が高まる中で、自然言語処理や自然言語生成などの主要なサブフィールドも高速に進化しています。最...