本番環境で AI/ML モデルを提供する最も簡単な方法
一度書いたらどこでも実行可能:開発と運用で同じように動作するモデル サーバーを使用して、モデル コード、重み、および依存関係をパッケージ化してテストします。
高速な開発者ループ:ライブ リロード サーバーからの高速フィードバックを使用してモデルを実装し、バッテリーを備えたモデル提供環境を使用して Docker と Kubernetes の構成をスキップします。
すべての Python フレームワークのサポート: transformers
やdiffusers
からPyTorch
やTensorFlow
、 TensorRT
やTriton
まで、Truss はあらゆるフレームワークで作成および提供されるモデルをサポートします。
以下のような人気のあるモデルについては、「トラス」を参照してください。
ラマ2 7B (13B) (70B)
安定拡散XL
ささやき
他にも数十の例があります。
以下を使用してトラスをインストールします。
pip install --upgrade truss
簡単な例として、オープンソースのtransformers
パッケージからテキスト分類パイプラインをパッケージ化します。
まず、次の端末コマンドを使用してトラスを作成します。
truss init テキスト分類
プロンプトが表示されたら、トラスにText classification
のような名前を付けます。
次に、新しく作成したディレクトリに移動します。
cd テキスト分類
トラス内の 2 つの必須ファイルのうちの 1 つはmodel/model.py
です。このファイルには、パッケージ化している ML モデルとそれを実行しているモデル サーバー間のインターフェイスであるModel
クラスを記述します。
Model
クラスに実装する必要があるメンバー関数が 2 つあります。
load()
モデルをモデル サーバーにロードします。これは、モデル サーバーが起動またはパッチ適用されるときに 1 回だけ実行されます。
predict()
モデル推論を処理します。モデルサーバーが呼び出されるたびに実行されます。
テキスト分類モデルの完全なmodel/model.py
は次のとおりです。
トランスフォーマーから import Pipelineclass Model:def __init__(self, **kwargs):self._model = Nonedefload(self):self._model = Pipeline("text-classification")def detect(self, model_input):return self._model (モデル入力)
Truss のもう 1 つの重要なファイルはconfig.yaml
で、これはモデル提供環境を構成します。構成オプションの完全なリストについては、構成リファレンスを参照してください。
パイプライン モデルは、Transformers と PyTorch に依存しています。これらの依存関係は、Truss 構成で指定する必要があります。
config.yaml
で、 requirements
行を見つけます。空のリストを次のように置き換えます。
要件: - トーチ==2.0.1 - トランス==4.30.0
他の構成は必要ありません。
Truss は、実稼働環境で ML モデルを実行するためのインフラストラクチャを提供する Baseten によって保守されています。モデルのリモート ホストとして Baseten を使用します。
AWS SageMaker をはじめ、他のリモートも近日公開予定です。
Baseten リモートを設定するには、Baseten API キーが必要です。 Baseten アカウントをお持ちでない場合でも、心配する必要はありません。アカウントにサインアップするだけで、開始するために大量の無料クレジットが発行されます。
truss push
を実行するプロンプトが表示されたら Baseten API キーを貼り付ける準備ができたら、モデルをデプロイできます。
トラスプッシュ
Baseten のモデル ダッシュボードからモデルのデプロイを監視できます。
モデルのデプロイが完了したら、ターミナルからモデルを呼び出すことができます。
呼び出し
truss detect -d '「トラスは素晴らしいです!」'
応答
[ {"ラベル": "ポジティブ","スコア": 0.999873161315918 } 】
Truss は Baseten によって支援されており、世界中の ML エンジニアと協力して構築されています。 Stephan Auerhahn @ testing.ai と Daniel Sarfati @ Salad Technologies の貢献に心より感謝いたします。
私たちは、寄稿者のガイドと行動規範に従って、寄稿を熱心に歓迎します。