LangServe 0.2 : 概要

LangServe 0.2 : 概要

作成 : クラスキャット セールスインフォメーション
作成日時 : 07/07/2024

* 本ページは、github : langchain-ai/langserve の以下のページを独自に翻訳してまとめ直したものです :

* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。

 

クラスキャット 人工知能 研究開発支援サービス ⭐️ リニューアルしました 😉

クラスキャット は人工知能に関する各種サービスを提供しています。お気軽にご相談ください :

  • 人工知能導入個別相談会(無償)実施中! [詳細]

  • 人工知能研究開発支援 [詳細]
    1. 自社特有情報を含むチャットボット構築支援
    2. 画像認識 (医療系含む) / 画像生成

  • PoC(概念実証)を失敗させないための支援 [詳細]

お問合せ : 本件に関するお問合せは下記までお願いします。

  • クラスキャット セールス・インフォメーション
  • sales-info@classcat.com
  • ClassCatJP

 

 

LangServe 0.2 : 概要

LangServe は、開発者が LangChain の runnable と chain を REST API として配備するのに役立ちます。このライブラリは FastAPI と統合され、データ検証のために pydantic を使用しています。

更に、サーバ上に配備された runnable を呼び出すために使用できるクライアントも提供します。JavaScript クライアントは LangChain.js で利用可能です。

 

特徴

  • 入出力スキーマは LangChain オブジェクトから自動的に推論され、すべての API 呼び出しで強制され、詳細なエラーメッセージを含みます。

  • JSONSchema と Swagger を使用した API docs ページ (サンプルのリンクを挿入)

  • 単一サーバ上で多くの同時リクエストをサポートをする、効率的な /invoke, /batch と /stream エンドポイント。

  • チェイン/エージェントからのすべての (or 一部の) 中間ステップをストリーミングするための /stream_log エンドポイント。

  • 0.0.40 から新たに /stream_events をサポート、これは /stream_log の出力を解析する必要なくストリーミングを簡単にします。

  • ストリーミング出力と中間ステップを備えた、/playground/ のプレイグラウンド・ページ。

  • LangSmith への組み込みの (オプション) トレース、API キーを追加するだけです (手順 参照)。

  • FastAPI, Pydantic, uvloop と asyncio のような、実績あるオープンソースの Python ライブラリですべて構築されています。

  • クライアント SDK を使用して、ローカルで動作している Runnable であるかのように LangServe サーバを呼び出します (または HTTP API を直接呼び出します)。

  • LangServe Hub

 

インストール

クライアントとサーバの両方のためには :

pip install "langserve[all]"

または、クライアントコードのために :

pip install "langserve[client]"

、そしてサーバコードのために :

pip install "langserve[server]"

 

LangChain CLI 🛠️

LangChain CLI を使用して LangServe プロジェクトを素早くブートストラップします。

langchain CLI を使用するには、langchain-cli の最新版がインストールされていることを確認してください。”pip install -U langchain-cli” でインストールできます。

 

セットアップ

Note : 依存関係管理に poetry を使用します。その詳細は poetry doc に従ってください。

  1. langchain cli コマンドを使用して新しい app を作成します。
    langchain app new my-app
    

     

  2. add_routes 内に runnable を定義します。server.py に進み編集します :
    add_routes(app. NotImplemented)
    

     

  3. poetry を使用して 3rd パーティのパッケージ (e.g., langchain-openai, langchain-anthropic, langchain-mistral 等) を追加します。
    poetry add [package-name] // e.g `poetry add langchain-openai`
    

     

  4. 関連する環境変数をセットアップします。例えば :
    export OPENAI_API_KEY="sk-..."
    

     

  5. Serve your app :
    poetry run langchain serve --port=8100
    

 

以上