CREATE EXTERNAL MODEL - Amazon Redshift

CREATE EXTERNAL MODEL

CREATE EXTERNAL MODEL の前提条件

CREATE EXTERNAL MODEL ステートメントを使用する前に、Amazon Redshift ML を使用するためのクラスターの設定 の前提条件を満たしてください。前提条件の概要は次のとおりです。

  • AWS マネジメントコンソールまたは AWS Command Line Interface (AWS CLI) を使用して、Amazon Redshift クラスターを作成します。

  • クラスターの作成中に AWS Identity and Access Management (IAM) ポリシーをアタッチします。

  • Amazon Redshift と Amazon Bedrock が、他のサービスとやり取りするロールを引き受けることを許可するには、IAM ロールに適切な信頼ポリシーを追加します。

  • Amazon Bedrock コンソールから、使用対象の特定の LLM へのアクセスを有効にします。

  • (オプション) データが少量にもかかわらず Amazon Bedrock によるスロットリング例外 (Too many requests, please wait before trying again など) が発生する場合は、Amazon Bedrock アカウントの [サービスクォータ] でクォータを確認します。適用されているアカウントレベルのクォータが、使用しているモデルに対する InvokeModel リクエストの AWS デフォルトクォータ値と少なくとも同じであることを確認してください。

IAM ロール、信頼ポリシー、およびその他の前提条件の詳細については、「Amazon Redshift ML を使用するためのクラスターの設定」を参照してください。

必要な権限

CREATE EXTERNAL MODEL に必要な権限を以下に示します。

  • スーパーユーザー

  • CREATE MODEL の権限を持つユーザー

  • GRANT CREATE MODEL の権限を持つロール

コスト管理

Amazon Redshift 機械学習は既存のクラスターリソースを使用して予測モデルを作成するため、追加料金は発生しません。ただし、選択したモデルに基づいて Amazon Bedrock を使用する場合は AWS 料金が発生します。詳細については、「Amazon Redshift 機械学習を使用するためのコスト」を参照してください。

CREATE EXTERNAL MODEL 構文

以下は、CREATE EXTERNAL MODEL ステートメントの完全な構文です。

CREATE EXTERNAL MODEL model_name FUNCTION function_name IAM_ROLE {default/'arn:aws:iam::<account-id>:role/<role-name>'} MODEL_TYPE BEDROCK SETTINGS ( MODEL_ID model_id [, PROMPT 'prompt prefix'] [, SUFFIX 'prompt suffix'] [, REQUEST_TYPE {RAW|UNIFIED}] [, RESPONSE_TYPE {VARCHAR|SUPER}] );

CREATE EXTERNAL MODEL コマンドは、コンテンツの生成に使用する推論関数を作成します。

以下は、RAWREQUEST_TYPE を使用して CREATE EXTERNAL MODEL が作成する推論関数の構文です。

SELECT inference_function_name(request_super) [FROM table];

以下は、UNIFIEDREQUEST_TYPE を使用して CREATE EXTERNAL MODEL が作成する推論関数の構文です。

SELECT inference_function_name(input_text, [, inference_config [, additional_model_request_fields]]) [FROM table];

推論関数の使用方法については、「Amazon Redshift ML と Amazon Bedrock の統合用の外部モデルの使用」を参照してください。

CREATE EXTERNAL MODEL のパラメータと設定

このセクションでは、 CREATE EXTERNAL MODEL コマンドのパラメータと設定について説明します。

CREATE EXTERNAL MODEL のパラメータ

model_name

外部モデルの名前。スキーマ内のモデル名は一意でなければなりません。

FUNCTION function_name (data_type [,...] )

CREATE EXTERNAL MODEL が作成する推論関数の名前。推論関数を使用して Amazon Bedrock にリクエストを送信し、ML 生成テキストを取得できます。

IAM_ROLE { default | 'arn:aws:iam::<account-id>:role/<role-name>' }

Amazon Redshift が Amazon Bedrock へのアクセスに使用する IAM ロール。IAM ロールに関する詳細は、「Amazon Redshift ML と Amazon Bedrock の統合のための IAM ロールの作成または更新」を参照してください。

MODEL_TYPE BEDROCK

モデルタイプを指定します。唯一の有効な値は BEDROCK です。

SETTINGS ( MODEL_ID model_id [,...] )

外部モデルの設定を指定します。詳細については、以下のセクションを参照してください。

CREATE EXTERNAL MODEL の設定

MODEL_ID model_id

外部モデルの識別子 (例: anthropic.claude-v2)。Amazon Bedrock モデルの ID については、「Amazon Bedrock model IDs」を参照してください。

PROMPT 'prompt prefix'

Amazon Redshift がすべての推論リクエストの先頭に追加する静的プロンプトを指定します。UNIFIEDREQUEST_TYPE でのみサポートされます。

SUFFIX 'prompt suffix'

Amazon Redshift がすべての推論リクエストの末尾に追加する静的プロンプトを指定します。UNIFIEDREQUEST_TYPE でのみサポートされます。

REQUEST_TYPE { RAW | UNIFIED }

Amazon Bedrock に送信されるリクエストの形式を指定します。有効な値には次のようなものがあります。

  • RAW: 推論関数は入力を単一の SUPER 値として受け取り、常に SUPER 値を返します。SUPER 値の形式は、選択した Amazon Bedrock モデルに固有です。SUPER は、複数のアルゴリズムを組み合わせて、より優れた単一の予測を生成する予測モデルです。

  • UNIFIED: 推論関数は統合 API を使用します。すべてのモデルに Amazon Bedrock との統一された一貫したインターフェイスがあります。これは、メッセージをサポートするすべてのモデルで機能します。この値はデフォルト値です。

    詳細については、「Amazon Bedrock API ドキュメント」の「Converse API documentation」を参照してください。

RESPONSE_TYPE { VARCHAR | SUPER }

レスポンスの形式を指定します。REQUEST_TYPERAW の場合、RESPONSE_TYPE は必須であり、有効な値は SUPER のみです。他のすべての REQUEST TYPE 値では、デフォルト値は VARCHAR で、RESPONSE_TYPE はオプションです。有効な値には次のようなものがあります。

  • VARCHAR: Amazon Redshift は、モデルによって生成されたテキストレスポンスのみを返します。

  • SUPER: Amazon Redshift は、モデルによって生成されたレスポンス JSON 全体を SUPER として返します。これには、テキストレスポンス、停止理由、モデル入出力トークンの使用状況などの情報が含まれます。SUPER は、複数のアルゴリズムを組み合わせて、より優れた単一の予測を生成する予測モデルです。

CREATE EXTERNAL MODEL 推論関数パラメータ

このセクションでは、CREATE EXTERNAL MODEL コマンドが作成する推論関数の有効なパラメータについて説明します。

RAWREQUEST_TYPE 用の CREATE EXTERNAL MODEL 推論関数パラメータ

RAWREQUEST_TYPE で作成された推論関数には 1 つの SUPER 入力引数があり、常に SUPER データ型を返します。入力 SUPER の構文は、Amazon Bedrock から選択された特定のモデルのリクエストの構文に従います。

UNIFIEDREQUEST_TYPE 用の CREATE EXTERNAL MODEL 推論関数パラメータ

input_text

Amazon Redshift が Amazon Bedrock に送信するテキスト。

inference_config

Amazon Redshift が Amazon Bedrock に送信するオプションのパラメータを含む SUPER 値。これには以下が含まれます。

  • maxTokens

  • stopSequences

  • 温度

  • topP

これらのパラメータはすべてオプションであり、すべて大文字と小文字が区別されます。これらのパラメータの詳細については、「Amazon Bedrock API リファレンス」の「InferenceConfiguration」を参照してください。