LangChain とは?
LangChain は、言語モデルを活用したアプリケーションを開発するためのフレームワークです。これにより、次のようなアプリケーションを実現できます。- コンテキストを認識できる: LangChain は、言語モデルをコンテキストのソース(プロンプト指示、few-shot の例、応答の根拠となるコンテンツなど)に接続します。
- 推論できる: LangChain により、言語モデルは推論できます。提供されたコンテキストに基づいてどのように回答するかを判断したり、どのアクションを実行するかを決定したりできます。
前提条件
始める前に、次のものが揃っていることを確認してください。- Novita AI LLM API Key:
- Novita AI のウェブサイトにアクセスして、アカウントを作成します。
-
ログイン後、Key Management ページに移動して API Key を生成します。このキーは、Novita AI のモデルを LangChain に接続するために必要です。

- Node.js、JavaScript、および環境変数の使用方法に関する基本的な理解。
統合
Step 1: API キーを設定する
ほとんどの環境では、環境変数NOVITA_API_KEY を次のように設定します。
your-api-key を、Novita AI から取得した実際のキーに置き換えてください。
Step 2: 必要なパッケージをインストールする
Novita AI を LangChain と統合するには、Novita AI 統合を含む@langchain-community パッケージをインストールする必要があります。
必要なパッケージをインストールするには、次のいずれかのコマンドを選択してください。
npm を使用する場合:
Step 3: Novita AI モデルをインスタンス化する
必要なパッケージをインストールしたら、ChatNovitaAI クラスを使用して Novita AI モデルをインスタンス化できます。
以下は、その方法を示す例です。
Step 4: チャット補完のためにモデルを呼び出す
モデルをインスタンス化したら、メッセージを指定して呼び出すことで、チャット補完を生成できます。 メッセージを送信し、応答を取得する例を以下に示します。Step 5: モデルをプロンプトテンプレートとチェーンする
LangChain では、モデルをプロンプトテンプレートとチェーンすることで、強力なワークフローを作成できます。これは、複数の入力に対して同じ形式を再利用したい場合に特に便利です。 以下は、言語間翻訳用のカスタムプロンプトテンプレートと Novita AI モデルをチェーンする例です。Step 6: ワークフローをカスタマイズする
ユースケースに応じて、temperature を変更したり、メッセージを追加したり、その他のパラメータを調整したりできます。LangChain は非常に柔軟で、複数のプロンプトをチェーンしたり、条件分岐ロジックを追加したり、異なるモデルを扱ったりすることで、複雑なインタラクションを設計できます。Novita AI と LangChain による関数呼び出し
Novita AI の LLM API で関数呼び出し(またはツール使用)を実装するには、LangChain を便利なフレームワークとして利用できます。この例では、モデルが関数呼び出しを通じて加算と乗算を実行できる、シンプルな数学アプリケーションを作成します。 💡 このガイドでは利便性のために LangChain を使用していますが、関数呼び出しの実装に特定のフレームワークは必要ありません。重要なのは、モデルが関数を理解し、正しく呼び出せるように適切なプロンプトを設計することです。ここでは実装を効率化するために LangChain を使用しています。前提条件
まず、必要なパッケージをインストールします。環境のセットアップ
プロジェクトルートに.env ファイルを作成し、Novita AI API キーを追加します。
実装手順
- ツールを定義する
@tool デコレーターを使用して、2 つのシンプルな数学ツールを作成しましょう。
- ツール実行関数を作成する
- LangChain パイプラインをセットアップする
- メイン処理関数を作成する
- 使用例