はじめに

8月の「CDLE All Hands 2023」で、松尾理事長がお話されていた「LangChain」について、遅ればせながらその概要についてまとめましたので共有させていただきます。
他の会員の方もこのLangChainについてブログを記載されてますので、あわせてご確認いただければと思います。
LangChain-CDLE.png 1.39 MB

LangChainとは

LangChainは、LLMを使ったアプリケーションを実装するためのフレームワークになります。このツールを使う事で簡単にLLMアプリが作れる?!
LangChainとは.png 95.3 KB
主要な6つの機能があります。
主な機能.png 106.51 KB
いくつか紹介します。(他の機能については添付の資料を参照ください。)

Prompts

「Prompts」には以下の4つの機能があります。
image.png 235.89 KB
「Prompt Templates」について
image.png 68.7 KB「Example Selectors」について
image.png 64.85 KB
「Output Parsers」について
image.png 385.14 KB

Indexes

特定のドキュメントの内容について質問を行える「indexes」機能。
Vector storesと呼ばれるデータベースにドキュメントを追加し、質問に関する文章をデータベースから検索し、関連文章と共にLLMモデルから回答を得ます。
image.png 216.83 KB
「indexes」をPythonコードで実装します。
以下のように、僅か数行でドキュメントを取り込みデータベース化し、ドキュメント内検索を行います。
会社に埋もれた資料をデータベース化しておくことでいつでも必要な文章を検索できます。
image.png 101.67 KB

Agents

そして、LangChainの目玉機能である「Agents」について。
エージェントには様々なツールが登録されており、そのツールをエージェントが必要に応じて選択し、質問内容に対して自動で決定・実行・推測を行い回答を導き出すという優れもの。独自のツールを登録することもできるので、活用の幅が広がりますね。
image.png 96.63 KBimage.png 180.44 KB
そして、その使い方はとても簡単。
以下の数行がエージェントの実装となります。使いたい「ツール」を設定して、タイプを選択するだけ。今回はGoogle検索を行う「serpapi」を使って「今の日本の首相」について質問してみました。するとエージェントは2回の検索を行い、今の日本の首相が「岸田文雄さん」である事を最終判断しました。
image.png 169.27 KB

おまけ

LangChainについてもっと詳しく知りたい方は以下のUDEMY講座をご確認ください。 
講座内ではLangChainを活用しAWSを使ってLINE Bot開発を行いますので、LLMのアプリケーション実装をより体感いただけるのではないかと思います。
講座内ではLangChainの概要を説明し、6つの機能の使い方をハンズオン形式で解説、そしてエージェントを使ったLINE Bot開発もハンズオン形式で実施しております。AWSに触れてみたい方もお勧めの講座です。
以下のリンクからご登録ください。