LangFlow 1.0 : Getting Started : Langflow キャンバス
作成 : クラスキャット セールスインフォメーション
作成日時 : 06/04/2024
* 本ページは、pre-release.langflow.org の以下のページを独自に翻訳して、適宜、補足説明したものです :
* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。
- 人工知能研究開発支援
- 人工知能研修サービス(経営者層向けオンサイト研修)
- テクニカルコンサルティングサービス
- 実証実験(プロトタイプ構築)
- アプリケーションへの実装
- 人工知能研修サービス
- PoC(概念実証)を失敗させないための支援
- お住まいの地域に関係なく Web ブラウザからご参加頂けます。事前登録 が必要ですのでご注意ください。
◆ お問合せ : 本件に関するお問い合わせ先は下記までお願いいたします。
- クラスキャット セールス・マーケティング本部 セールス・インフォメーション
- sales-info@classcat.com ; Website: www.classcat.com ; ClassCatJP
// –>
LangFlow 1.0 : Getting Started : Langflow キャンバス
Langflow キャンバス は Langflow の中心的なハブで、コンポーネントから新しいフローを組み立て、それらを実行し、そして結果を見ることができます。
キャンバスの感覚をつかむため、basic prompting フローを調べます。このフローを貴方自身で構築するか、”New Project” > “Basic prompting” を選択して事前ビルドされたフローを使用してキャンバスを開くことができます。
フロー、コンポーネント、コレクション、そしてプロジェクト
フロー は Langflow キャンバス内で組み合わせて接続されたコンポーネントのパイプラインです。
コンポーネント はフロー内の単一のビルディングブロックです。コンポーネントはその機能を定義する入力、出力、そしてパラメータを持ちます。
コレクション は貴方のデータベースで利用可能なフローのスナップショットです。コレクションはローカルストレージにダウンロード可能で、将来の使用のためにアップロードできます。
プロジェクト はコンポーネントからフローです。プロジェクトはコレクションの一部として保存できます。
例えば、OpenAI LLM は Basic prompting フローのコンポーネントで、フローはコレクションに保存できます。
フロー
フローは Langflow キャンバス内で組み合わせて接続されたコンポーネントのパイプラインです。
例えば、Basic prompting フローは 4 つのコンポーネントのパイプラインです :
このフローでは、OpenAI LLM コンポーネント は入力 (左側) を受け取り、出力 (右側) を生成します – この場合、Chat Input と Prompt コンポーネントから入力を受け取り、Chat Output コンポーネントへの出力を生成します。
コンポーネント
コンポーネントはフローのビルディングブロックです。それらは入力、出力、そしてそれらの機能を定義するパラメータから構成されます。これらの要素は LLM ベースのアプリケーションを構成する便利で単純な方法を提供します。コンポーネントとそれらがどのように動作するかについては LangChain ドキュメント で学習してください。
フロー作成プロセスの間に、コンポーネントの一つか両方の側に装着されたハンドル (色付けされた円) に気づくでしょう。これらのハンドルは他のコンポーネントに接続できる可用性を表します。接続の詳細を見るにはハンドル上でマウスをホバリングさせてください。
例えば、ConversationChain コンポーネントを選択した場合、オレンジ色の o と紫色の o 入力ハンドルを見るでしょう。それらは、このコンポーネントが入力として LLM とメモリコンポーネントを受け取ることを示しています。赤色のアスタリスク * は、そのタイプの入力が少なくとも一つは必要であることを意味します。
コンポーネントの右上隅に、コンポーネント状態アイコン () があります。キャンバスの右下で Playground をクリックすることでフローを構築します。
検証が完了したら、各検証済みコンポーネントのステータスは緑色 () になるはずです。デバッグするためには、コンポーネントステータスでマウスをホバリングさせて出力を見ます。
コンポーネント・パラメータ
コンポーネント設定ボタンをクリックすることで Langflow コンポーネントは編集できます。パラメータを隠して複雑性を減らし、実験用にキャンバスをクリーンに直感的に保つことができます。
コンポーネントメニュー
コンポーネントはそれぞれ少し違いますが、それらはすべて上部にこのようなメニューバーがあります。メニューオプションは Code, Save, Duplicate そして More です。
Code
Code ボタンはコンポーネントの Python コードを表示します。コードを変更して保存することができます。
Save
コンポーネントを再利用するために Saved コンポーネント・フォルダーに保存します。
Duplicate
キャンバスのコンポーネントを複製します。
More
Advanced – コンポーネントのパラメータを変更します。
Copy – コンポーネントをコピーします。
Share – コンポーネントを Langflow ストアで共有します。
Docs – コンポーネントのドキュメントを見る。
Delete – コンポーネントの削除。
複数のコンポーネントのグループ化
入出力ノードのないコンポーネントは再利用するために単一のコンポーネントにグループ化できます。これは (例えば、ベクトルデータベースを含む RAG のような) 大規模なフローを単一のコンポーネントに結びつけるために役立ち、キャンバスのスペースを節約できます。
- Shift キーを押しながらドラッグして、Prompt と OpenAI コンポーネントを選択します。
- Group を選択します。
- コンポーネントが単一のコンポーネントにマージされます。新しいコンポーネントを保存するには、Save を選択します。Saved コンポーネント・フォルダから再利用できるようになります。
Playground
Playground ボタンをクリックすることでフローを実行します。
詳細は、Playground をご覧ください。
API
API ボタンは API ウィンドウを開きます、そこでは Langflow は貴方のフローを外部アプリケーションに統合するためのコードを表示します。
Tweaks ウィンドウで呼び出しパラメータを変更し、Copy Code or Download ボタンをクリックし、そしてそれを使用したい場所にコードを貼り付けます。
curl
curl タブはフローへのクエリーをポストするためのサンプルコードを表示します。input_value を変更して入力メッセージを変更します。
curl -X POST \
http://127.0.0.1:7863/api/v1/run/f2eefd80-bb91-4190-9279-0d6ffafeaac4\?stream\=false \
-H 'Content-Type: application/json'\
-d '{"input_value": "is anybody there?",
"output_type": "chat",
"input_type": "chat",
"tweaks": {
"Prompt-uxBqP": {},
"OpenAIModel-k39HS": {},
"ChatOutput-njtka": {},
"ChatInput-P3fgL": {}
}}'
Result :
{"session_id":"f2eefd80-bb91-4190-9279-0d6ffafeaac4:53856a772b8e1cfcb3dd2e71576b5215399e95bae318d3c02101c81b7c252da3","outputs":[{"inputs":{"input_value":"is anybody there?"},"outputs":[{"results":{"result":"Arrr, me hearties! Aye, this be Captain [Your Name] speakin'. What be ye needin', matey?"},"artifacts":{"message":"Arrr, me hearties! Aye, this be Captain [Your Name] speakin'. What be ye needin', matey?","sender":"Machine","sender_name":"AI"},"messages":[{"message":"Arrr, me hearties! Aye, this be Captain [Your Name] speakin'. What be ye needin', matey?","sender":"Machine","sender_name":"AI","component_id":"ChatOutput-njtka"}],"component_display_name":"Chat Output","component_id":"ChatOutput-njtka"}]}]}%
Python API
Python API タブは Python HTTP リクエスト・ライブラリを使用して貴方のフローと相互作用するコードを表示します。
Python Code
Python Code タブは Langflow ランタイムを使用して貴方のフローの .json ファイルと相互作用するコードを表示します。
Chat Widget HTML
Chat Widget HTML タブは、貴方のフローと相互作用するために HTML の <body> で挿入できるコードを表示します。詳細は、Chat widget ドキュメント をご覧ください。
Tweaks
Tweaks タブはフローで利用可能なパラメータを表示します。パラメータの変更はすべてのウィンドウに渡りコードパラメータを変更します。例えば、Chat Input コンポーネントの input_value の変更はすべての API 呼び出しに渡るその値を変更します。
Collection
コレクションはデータベースで利用可能なフローのスナップショットです。
コレクションはローカルストレージにダウンロードして、将来的な使用のためにアップロードできます。
Project
Project はフローかコンポーネントです。保存されたプロジェクトを見るには、My Collection を選択します。
あなたのプロジェクトが表示されます。
Playground ボタンをクリックすると My Collection 画面からフローが実行されます。
画面の左上隅には、Download Collection, Upload Collection, そして New Project のオプションがあります。
Download Collection を選択してプロジェクトをローカルマシンに保存します。これはすべてのフローとコンポーネントを .json ファイルとしてダウンロードします。
Upload Collection を選択するとローカルマシンからフローかコンポーネントの .json ファイルをアップロードします。
New Project を選択して新しいプロジェクトを作成します。ブランク・キャンバスに加えて、スターター・プロジェクトも利用可能です。
プロジェクトオプション・メニュー
プロジェクト用のオプションを見るには、キャンバスの左上隅で、ドロップダウン・メニューを選択します。
New – 新しいプロジェクトを開始する。
Duplicate – 現在のフローを新しいプロジェクトとして複製する。
Settings – プロジェクトの名前や説明を変更する。
Import – ローカルマシンからフローの .json ファイルをアップロードする。
Export – 現在のプロジェクトを .json ファイルとしてローカルマシンにダウンロードする。
Undo or Redo – Undo or redo your last action.
以上