?オープンソースまたはカスタム AI モデルを使用して、モデル推論 API とマルチモデル サービング システムを構築します。 Slack コミュニティに参加してください!
BentoML は、AI アプリとモデル推論用に最適化されたオンライン サービス システムを構築するための Python ライブラリです。
BentoML をインストールします。
# Requires Python≥3.9
pip install -U bentoml
service.py
ファイルで API を定義します。
from __future__ import annotations
import bentoml
@ bentoml . service (
resources = { "cpu" : "4" }
)
class Summarization :
def __init__ ( self ) -> None :
import torch
from transformers import pipeline
device = "cuda" if torch . cuda . is_available () else "cpu"
self . pipeline = pipeline ( 'summarization' , device = device )
@ bentoml . api ( batchable = True )
def summarize ( self , texts : list [ str ]) -> list [ str ]:
results = self . pipeline ( texts )
return [ item [ 'summary_text' ] for item in results ]
サービス コードをローカルで実行します (デフォルトでは http://localhost:3000 で提供されます)。
pip install torch transformers # additional dependencies for local run
bentoml serve service.py:Summarization
これで、ブラウザー http://localhost:3000 から、または Python スクリプトを使用して推論を実行できるようになります。
import bentoml
with bentoml . SyncHTTPClient ( 'http://localhost:3000' ) as client :
summarized_text : str = client . summarize ([ bentoml . __doc__ ])[ 0 ]
print ( f"Result: { summarized_text } " )
BentoML サービス コードをデプロイするには、まずbentofile.yaml
ファイルを作成して、その依存関係と環境を定義します。 Bentfile オプションの完全なリストはここでご覧ください。
service : ' service:Summarization ' # Entry service import path
include :
- ' *.py ' # Include all .py files in current directory
python :
packages : # Python dependencies to include
- torch
- transformers
docker :
python_version : " 3.11 "
次に、次のいずれかの展開方法を選択します。
bentoml build
を実行して、必要なコード、モデル、依存関係構成を Bento (BentoML で標準化されたデプロイ可能な成果物) にパッケージ化します。
bentoml build
Docker が実行されていることを確認します。デプロイメント用の Docker コンテナー イメージを生成します。
bentoml containerize summarization:latest
生成されたイメージを実行します。
docker run --rm -p 3000:3000 summarization:latest
BentoCloud は、迅速かつ信頼性の高い GenAI 導入のためのコンピューティング インフラストラクチャを提供します。クラウド コンピューティング リソースを活用して BentoML 開発プロセスをスピードアップし、本番環境での BentoML のデプロイ、拡張、運用方法を簡素化するのに役立ちます。
個人的にアクセスするには、BentoCloud にサインアップしてください。エンタープライズでの使用例については、当社のチームにお問い合わせください。
# After signup, run the following command to create an API token:
bentoml cloud login
# Deploy from current directory:
bentoml deploy .
詳細な説明については、Hello World の例を参照してください。
サンプル コードと使用方法の詳細については、完全なリストを確認してください。
その他のチュートリアルとガイドについては、「ドキュメント」を参照してください。
コミュニティ Slack に参加してください。そこでは、何千人もの AI/ML エンジニアが互いに助け合い、プロジェクトに貢献し、AI 製品の構築について話し合います。
バグを報告したり、機能リクエストを提案したりするには、GitHub Issues を使用してください。
プロジェクトに貢献するにはさまざまな方法があります。
#bentoml-contributors
チャンネルでフィードバックを共有し、ロードマップ計画について話し合ってください。素晴らしい貢献者の皆様に感謝します!
BentoML フレームワークは、コミュニティによる製品の改善に役立つ匿名の使用状況データを収集します。 BentoML の内部 API 呼び出しのみがレポートされます。これには、ユーザー コード、モデル データ、モデル名、スタック トレースなどの機密情報は含まれません。使用状況の追跡に使用されるコードは次のとおりです。 --do-not-track
CLI オプションを使用して使用状況追跡をオプトアウトできます。
bentoml [command] --do-not-track
または、環境変数を設定します。
export BENTOML_DO_NOT_TRACK=True
Apache ライセンス 2.0