幅広い業界における生成 AI アプリケーションの成功は、競合他社の成果を再現して超えたり、新しくエキサイティングなユースケースを解決しようとしている世界中の企業の注目と関心を集めています。 これらの顧客は、生成型 AI イノベーションを推進するエンジンとして、TII Falcon、Stable Diffusion XL、OpenAI の GPT-3.5 などの基盤モデルを検討しています。
Foundation モデルは、トレーニングされた膨大な量の非構造化データのおかげで、人間のようなコンテンツを理解して生成できる生成 AI モデルのクラスです。 これらのモデルは、画像生成、翻訳、質問応答など、さまざまなコンピューター ビジョン (CV) および自然言語処理 (NLP) タスクに革命をもたらしました。 これらは多くの AI アプリケーションの構成要素として機能し、高度なインテリジェント システムの開発において重要なコンポーネントとなっています。
ただし、基盤モデルの展開には、特にコストとリソース要件の点で、重大な課題が伴う場合があります。 これらのモデルは、そのサイズが多くの場合、数億から数十億のパラメーターに及ぶことで知られています。 サイズが大きいため、強力なハードウェアや大量のメモリ容量を含む広範な計算リソースが必要になります。 実際、基礎モデルを展開するには、計算負荷を効率的に処理するために、通常、少なくとも 40 つ (多くの場合はそれ以上) の GPU が必要です。 たとえば、TII Falcon-5.12B Instruct モデルはメモリに正常にロードされるために少なくとも ml.g24xlarge インスタンスを必要としますが、より大きなインスタンスで最高のパフォーマンスを発揮します。 その結果、これらのモデルの導入と保守の投資収益率 (ROI) が低すぎて、特に開発サイクル中や急激なワークロードの場合には、ビジネス価値を証明できない可能性があります。 これは、長時間 (場合によっては 7 時間 XNUMX 日) のセッションで GPU を利用したインスタンスを使用することによるランニング コストが原因です。
今年初めに発表しました アマゾンの岩盤、Amazon および生成 AI パートナーの基盤モデルにアクセスするためのサーバーレス API。 現在プライベート プレビュー段階ですが、サーバーレス API を使用すると、エンドポイントを自分でデプロイすることなく、Amazon、Anthropic、Stability AI、AI21 の基盤モデルを使用できます。 ただし、Hugging Face などのコミュニティのオープンソース モデルは大幅に成長しており、そのすべてが Amazon Bedrock を通じて利用できるようになっているわけではありません。
この投稿では、これらの状況をターゲットにし、大規模な基礎モデルをデプロイすることで高コストのリスクを伴う問題を解決します。 アマゾンセージメーカー 非同期エンドポイント から Amazon SageMaker ジャンプスタート。 これにより、アーキテクチャのコストを削減でき、リクエストがキューにある場合にのみ有効期間が短いエンドポイントを実行できるようになり、サービスを待機しているリクエストが存在しない場合はゼロにスケールダウンできます。 これは多くのユースケースにとって素晴らしいことのように思えます。 ただし、ゼロにスケールダウンしたエンドポイントでは、推論を実行できるようになるまでにコールド スタート時間が発生します。
ソリューションの概要
次の図は、ソリューションアーキテクチャを示しています。
私たちが導入するアーキテクチャは非常に単純です。
- ユーザー インターフェイスはノートブックであり、Streamlit または同様のテクノロジーに基づいて構築された Web UI に置き換えることができます。 私たちの場合、ノートブックは Amazon SageMakerスタジオ ノートブック。PyTorch 5 Python 2.0 CPU カーネルを備えた ml.m3.10.large インスタンス上で実行されます。
- ノートブックは、SageMaker Python SDK、AWS SDK for Python (Boto3)、LangChain の XNUMX つの方法でエンドポイントにクエリを実行します。
- エンドポイントは SageMaker 上で非同期的に実行されており、エンドポイント上に Falcon-40B Instruct モデルをデプロイします。 これは現在、命令モデルの点で最先端のものであり、SageMaker JumpStart で利用できます。 単一の API 呼び出しで、モデルをエンドポイントにデプロイできます。
SageMaker 非同期推論とは
SageMaker 非同期推論は、リアルタイム エンドポイント、バッチ推論、およびサーバーレス推論とともに、SageMaker の XNUMX つのデプロイメント オプションの XNUMX つです。 さまざまな展開オプションの詳細については、次を参照してください。 推論用のモデルをデプロイする.
SageMaker の非同期推論は、受信リクエストをキューに入れて非同期で処理するため、このオプションは最大 1 GB までの大きなペイロード サイズ、長い処理時間、およびほぼリアルタイムのレイテンシー要件を持つリクエストに最適です。 ただし、大規模な基礎モデルを扱う場合、特に概念実証 (POC) または開発中に提供される主な利点は、リクエストがない場合にインスタンス数をゼロにスケールインするように非同期推論を構成できる機能です。プロセスを実行し、コストを節約します。 SageMaker 非同期推論の詳細については、以下を参照してください。 非同期推論. 次の図は、このアーキテクチャを示しています。
非同期推論エンドポイントをデプロイするには、 AsyncInferenceConfig
物体。 作成する場合 AsyncInferenceConfig
引数を指定しない場合、デフォルト S3OutputPath
なります s3://sagemaker-{REGION}-{ACCOUNTID}/async-endpoint-outputs/{UNIQUE-JOB-NAME}
および S3FailurePath
なります s3://sagemaker-{REGION}-{ACCOUNTID}/async-endpoint-failures/{UNIQUE-JOB-NAME}
.
SageMaker JumpStart とは
私たちのモデルは、事前トレーニングされたモデル、ソリューション テンプレート、サンプル ノートブックを提供することで機械学習 (ML) の取り組みを加速する SageMaker の機能である SageMaker JumpStart から来ています。 これにより、さまざまな問題タイプに対応する幅広い事前トレーニング済みモデルへのアクセスが提供され、強固な基盤から ML タスクを開始できるようになります。 SageMaker JumpStart は、一般的なユースケース用のソリューション テンプレートと学習用のサンプル ノートブックも提供します。 SageMaker JumpStart を使用すると、ワンクリックでソリューションを起動し、実践的な ML 体験のための包括的なリソースを利用して、ML プロジェクトを開始するのに必要な時間と労力を削減できます。
次のスクリーンショットは、SageMaker JumpStart UI で利用可能なモデルのほんの一部の例を示しています。
モデルを展開する
最初のステップは、モデルを SageMaker にデプロイすることです。 これを行うには、SageMaker JumpStart の UI または SageMaker Python SDK を使用できます。これは、モデルを非同期エンドポイントにデプロイするために使用できる API を提供します。
この通話が完了するまでに約 10 分かかる場合があります。 この間、エンドポイントがスピンアップされ、コンテナとモデル アーティファクトがエンドポイントにダウンロードされ、モデル設定が SageMaker JumpStart からロードされ、非同期エンドポイントが DNS エンドポイント経由で公開されます。 エンドポイントをゼロにスケールダウンできるようにするには、Application Auto Scaling を使用して非同期エンドポイントで自動スケーリングを構成する必要があります。 まずエンドポイント バリアントを Application Auto Scaling に登録し、スケーリング ポリシーを定義してから、そのスケーリング ポリシーを適用する必要があります。 この構成では、次のカスタム メトリックを使用します。 CustomizedMetricSpecification
ApproximateBacklogSizePerInstance
、次のコードに示すように。 詳細なリストについては、 アマゾンクラウドウォッチ 非同期推論エンドポイントで利用可能なメトリクスについては、を参照してください。 CloudWatch によるモニタリング.
このポリシーが正常に設定されたことを確認するには、SageMaker コンソールに移動して、 エンドポイント 下 推論 ナビゲーション ペインで、先ほどデプロイしたエンドポイントを探します。
非同期エンドポイントを呼び出す
エンドポイントを呼び出すには、リクエスト ペイロードを Amazon シンプル ストレージ サービス (Amazon S3) の一部としてこのペイロードへのポインターを提供します。 InvokeEndpointAsync
リクエスト。 呼び出し時に、SageMaker は処理リクエストをキューに入れ、識別子と出力場所を応答として返します。 処理時に、SageMaker は結果を Amazon S3 の場所に配置します。 オプションで、成功またはエラーの通知を受け取ることを選択できます。 Amazon シンプル通知サービス (AmazonSNS)。
SageMaker Python SDK
デプロイメントが完了すると、 AsyncPredictor
物体。 非同期推論を実行するには、データを Amazon S3 にアップロードし、 predict_async()
S3 URI を入力として使用するメソッド。 返されます AsyncInferenceResponse
オブジェクトを使用して結果を確認できます。 get_response()
方法。
あるいは、結果を定期的にチェックし、生成時に結果を返したい場合は、 predict()
方法。 この XNUMX 番目のメソッドを次のコードで使用します。
ボト3
では、次のことを調べてみましょう invoke_endpoint_async
Boto3 のメソッド sagemaker-runtime
クライアント。 これにより、開発者は SageMaker エンドポイントを非同期的に呼び出し、進行状況の追跡と後で応答を取得するためのトークンを提供できるようになります。 Boto3 には、SageMaker Python SDK のように非同期推論が完了するのを待つ方法がありません。 get_result()
手術。 したがって、Boto3 が推論出力を Amazon S3 に保存するという事実を利用します。 response["OutputLocation"]
。 次の関数を使用して、推論ファイルが Amazon S3 に書き込まれるのを待機できます。
この関数を使用して、エンドポイントをクエリできるようになりました。
ラングチェーン
LangChain は、Harrison Chase によって 2022 年 XNUMX 月に開始されたオープンソース フレームワークです。 さまざまなシステムやデータ ソースとの統合を提供することで、大規模言語モデル (LLM) を使用したアプリケーションの開発を簡素化します。 LangChain を使用すると、ドキュメント分析、要約、チャットボット作成、コード分析などが可能になります。 何百もの開発者からの貢献とベンチャー企業からの多額の資金提供により、人気が高まりました。 LangChain を使用すると、LLM と外部ソースとの接続が可能になり、動的でデータ応答性の高いアプリケーションを作成できるようになります。 開発プロセスを合理化するためのライブラリ、API、およびドキュメントを提供します。
LangChain は、そのフレームワークで SageMaker エンドポイントを使用するためのライブラリとサンプルを提供し、SageMaker でホストされている ML モデルをチェーンの「頭脳」として簡単に使用できるようにします。 LangChain が SageMaker とどのように統合されるかについて詳しくは、以下を参照してください。 SageMaker エンドポイント LangChain のドキュメントに記載されています。
LangChain の現在の実装の制限の XNUMX つは、非同期エンドポイントをネイティブにサポートしていないことです。 LangChain に非同期エンドポイントを使用するには、新しいクラスを定義する必要があります。 SagemakerAsyncEndpoint
を拡張します。 SagemakerEndpoint
クラスは LangChain ですでに利用可能です。 さらに、次の情報も提供します。
- 非同期推論が入力 (および出力) を保存する S3 バケットとプレフィックス
- タイムアウトするまでに待機する最大秒数
- An
updated _call()
エンドポイントをクエリする関数invoke_endpoint_async()
invoke_endpoint()
- コールド スタート (ゼロにスケールダウン) の場合に非同期エンドポイントをウェイクアップする方法
新しく作成したものを確認するには SagemakerAsyncEndpoint
には、チェックアウトすることができます sagemaker_async_endpoint.py
file GitHubで利用可能.
クリーンアップ
エンドポイントからの推論の生成のテストが完了したら、追加料金の発生を避けるために必ずエンドポイントを削除してください。
まとめ
TII Falcon のような大規模な基礎モデルを導入する場合、コストの最適化が非常に重要です。 これらのモデルには強力なハードウェアと大量のメモリ容量が必要であり、インフラストラクチャのコストが高くなります。 SageMaker 非同期推論は、リクエストを非同期的に処理するデプロイメント オプションであり、保留中のリクエストがない場合にインスタンス数をゼロにスケールすることで経費を削減します。 この投稿では、大規模な SageMaker JumpStart 基盤モデルを SageMaker 非同期エンドポイントにデプロイする方法を説明しました。 非同期エンドポイントを呼び出して結果を取得するさまざまな方法を説明するために、SageMaker Python SDK、Boto3、および LangChain を使用したコード例を提供しました。 これらの技術により、開発者や研究者は高度な言語理解システムの基礎モデルの機能を利用しながらコストを最適化できます。
非同期推論と SageMaker JumpStart について詳しくは、次の投稿をご覧ください。
著者,
ダビデガリテッリ は、EMEA地域のAI/MLのスペシャリストソリューションアーキテクトです。 彼はブリュッセルを拠点とし、ベネルクス全体の顧客と緊密に協力しています。 彼は幼い頃から開発者であり、7歳でコーディングを始めました。大学でAI / MLを学び始め、それ以来、AI/MLに夢中になっています。
- SEO を活用したコンテンツと PR 配信。 今日増幅されます。
- PlatoData.Network 垂直生成 Ai。 自分自身に力を与えましょう。 こちらからアクセスしてください。
- プラトアイストリーム。 Web3 インテリジェンス。 知識増幅。 こちらからアクセスしてください。
- プラトンESG。 自動車/EV、 カーボン、 クリーンテック、 エネルギー、 環境、 太陽、 廃棄物管理。 こちらからアクセスしてください。
- プラトンヘルス。 バイオテクノロジーと臨床試験のインテリジェンス。 こちらからアクセスしてください。
- チャートプライム。 ChartPrime でトレーディング ゲームをレベルアップしましょう。 こちらからアクセスしてください。
- ブロックオフセット。 環境オフセット所有権の近代化。 こちらからアクセスしてください。
- 情報源: https://aws.amazon.com/blogs/machine-learning/optimize-deployment-cost-of-amazon-sagemaker-jumpstart-foundation-models-with-amazon-sagemaker-asynchronous-endpoints/
- :持っている
- :は
- :not
- :どこ
- $UP
- 1
- 10
- 100
- 12
- 13
- 視聴者の38%が
- 1M
- 2022
- 25
- 7
- a
- できる
- 私たちについて
- 加速する
- 受け入れる
- アクセス
- 実績
- 越えて
- アクティビティ
- さらに
- 高度な
- 利点
- 後
- 年齢
- AI
- AIモデル
- AI / ML
- 許可
- ことができます
- 既に
- また
- しかし
- Amazon
- アマゾンセージメーカー
- Amazon SageMaker ジャンプスタート
- Amazon Webサービス
- 量
- 金額
- an
- 分析
- および
- 発表の
- 別の
- 人間原理
- どれか
- API
- API
- 申し込み
- 申し込む
- 建築
- です
- 引数
- 宝品
- AS
- At
- 注意
- 集め
- オート
- 利用できます
- 平均
- 避ける
- AWS
- ベース
- BE
- になる
- き
- さ
- BEST
- より大きい
- 億
- ブロック
- ボディ
- ブレーク
- ブリュッセル
- 建物
- 内蔵
- ビジネス
- 焙煎が極度に未発達や過発達のコーヒーにて、クロロゲン酸の味わいへの影響は強くなり、金属を思わせる味わいと乾いたマウスフィールを感じさせます。
- by
- コール
- 呼ばれます
- 缶
- 機能
- 機能
- できる
- 容量
- 場合
- 例
- チェーン
- チェーン
- 課題
- 課金
- チェイス
- チャットボット
- チェック
- 選択する
- 選択する
- class
- クライアント
- 密接に
- コード
- 冷たい
- 来ます
- comes
- コマンドと
- コミュニティ
- 企業
- 競合他社
- コンプリート
- 記入済みの
- 完了
- コンポーネント
- 包括的な
- コンピュータ
- Computer Vision
- コンセプト
- 接続
- 領事
- コンテナ
- コンテンツ
- 貢献
- 費用
- コスト
- 作ります
- 作成した
- 創造
- 重大な
- 電流プローブ
- 現在
- カスタム
- Customers
- カット
- コストカット
- サイクル
- データ
- 取引
- デフォルト
- 定義します
- 需要
- 実証
- 展開します
- 展開
- 展開する
- 展開
- 詳細な
- デベロッパー
- Developer
- 開発者
- 開発
- DICT
- 異なります
- 大きさ
- 無効
- DNS
- do
- ドキュメント
- ドキュメント
- そうではありません
- 行われ
- ダウン
- 原因
- 間に
- ダイナミック
- e
- 容易
- 効率良く
- 努力
- ほかに
- EMEA
- enable
- 可能
- エンドポイント
- エンジン
- 十分な
- エラー
- 特に
- あらゆる
- 例
- 例
- 除く
- 例外
- エキサイティング
- 経費
- 体験
- 探る
- 露出した
- 拡張する
- 広範囲
- 外部
- 余分な
- 顔
- 実際
- 悪魔を憐れむ歌
- false
- 特徴
- File
- 企業
- 名
- フォロー中
- Foundation
- 4
- フレームワーク
- から
- function
- 資金調達
- 獲得
- 生成された
- 生成
- 世代
- 生々しい
- 生成AI
- GitHubの
- 良い
- GPU
- 素晴らしい
- 成長
- ハンドル
- Hardware
- 持ってる
- 持って
- he
- 助けます
- こちら
- ハイ
- 主催
- 認定条件
- How To
- しかしながら
- HTML
- HTTP
- HTTPS
- 何百
- 数億
- 理想
- 識別子
- if
- 説明する
- 画像
- 実装
- import
- in
- 含めて
- 入ってくる
- を示し
- 産業
- 情報
- インフラ関連事業
- 革新的手法
- 入力
- を取得する必要がある者
- 統合する
- 統合
- インテリジェント-
- 関心
- インタフェース
- に
- 紹介する
- 投資
- IT
- ITS
- 旅
- JPG
- JSON
- ただ
- 既知の
- 言語
- 大
- レイテンシ
- 後で
- 打ち上げ
- 起動
- 主要な
- LEARN
- 学習
- 最低
- ライブラリ
- ような
- 制限
- リスト
- 負荷
- 場所
- 長い
- 探して
- たくさん
- 愛
- ロー
- 機械
- 機械学習
- 製
- メイン
- 保守
- make
- 作成
- 多くの
- マックス
- メモリ
- 方法
- メソッド
- メトリック
- メトリック
- 何百万
- 分
- ML
- モデル
- 他には?
- 名
- ナチュラル
- 自然言語処理
- ナビゲート
- ナビゲーション
- 必要
- 新作
- 新しく
- 次の
- NLP
- いいえ
- ノート
- 通知
- 通知
- 今
- 数
- オブジェクト
- 10月
- of
- 提供
- 提供すること
- オファー
- 頻繁に
- on
- ONE
- の
- オープンソース
- 操作
- 最適化
- 最適化
- オプション
- オプション
- or
- 私たちの
- でる
- 出力
- ペイン
- パラメータ
- 部
- 特に
- パートナー
- ペンディング
- 実行する
- 実行する
- 画像
- 場所
- 場所
- プラトン
- プラトンデータインテリジェンス
- プラトデータ
- PoC
- 方針
- 人気
- 可能
- ポスト
- 投稿
- :
- 電力
- 強力な
- 実用的
- 予測
- Predictor
- プレビュー
- 印刷物
- プライベート
- 問題
- プロセス
- ラボレーション
- 処理
- 進捗
- プロジェクト(実績作品)
- 証明
- 概念実証
- 受験する
- 提供します
- 提供
- は、大阪で
- 提供
- Python
- パイトーチ
- クエリ
- 質問
- 上げる
- 範囲
- 測距
- 読む
- 準備
- への
- 受け取ります
- 減らします
- 軽減
- 地域
- 登録
- 覚えています
- 削除します
- 置き換え
- 要求
- リクエスト
- 必要とする
- の提出が必要です
- 要件
- 必要
- 研究者
- リソースを追加する。
- リソース
- 応答
- 結果
- 結果
- return
- 収益
- レビュー
- 革命を起こした
- 危険
- ROI
- ラン
- ランニング
- セージメーカー
- 節約
- ド電源のデ
- 規模
- スケーリング
- SDDK
- 二番
- 秒
- 自己
- 役立つ
- サーバレス
- サービス
- サービス
- セッション
- セッションに
- ショート
- 示す
- 作品
- 重要
- 同様の
- 簡単な拡張で
- から
- 状況
- サイズ
- サイズ
- 固体
- 溶液
- ソリューション
- 解決する
- 一部
- ソース
- 専門家
- 回転した
- 安定性
- 安定した
- start
- 開始
- 起動
- 都道府県
- 手順
- Force Stop
- ストレージ利用料
- 店舗
- 簡単な
- 流線
- かなりの
- 成功
- 首尾よく
- そのような
- サポート
- サポート
- 確か
- しのぐ
- システム
- 取る
- ターゲット
- タスク
- テクニック
- テクノロジー
- テンプレート
- 条件
- テスト
- 感謝
- それ
- ステート
- アプリ環境に合わせて
- それら
- その後
- そこ。
- それによって
- したがって、
- ボーマン
- 彼ら
- この
- 今年
- 三
- 介して
- 全体
- 時間
- <font style="vertical-align: inherit;">回数</font>
- タイミング
- 〜へ
- 一緒に
- トークン
- あまりに
- 追跡
- 訓練された
- インタビュー
- true
- 試します
- ui
- 下
- 理解する
- 大学
- まで
- に
- us
- つかいます
- ユーザー
- ユーザーインターフェース
- 通常
- 値
- バリアント
- さまざまな
- 広大な
- ベンチャー
- 確認する
- 非常に
- 、
- ビジョン
- wait
- 待っています
- ウェーク
- 目を覚ます
- 欲しいです
- ました
- 仕方..
- 方法
- we
- ウェブ
- Webサービス
- いつ
- かどうか
- which
- while
- 誰
- ワイド
- 広い範囲
- 意志
- 無し
- 勝った
- 作品
- でしょう
- 書かれた
- 年
- You
- 若い
- あなたの
- あなた自身
- ゼファーネット
- ゼロ