

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AI21 Labs Jurassic-2 モデル
<a name="model-parameters-jurassic2"></a>

このセクションでは、AI21 Labs AI21 Labs Jurassic-2 モデルを使用する際の推論パラメータとコード例について説明します。

**Topics**
+ [推論パラメータ](#model-parameters-jurassic2-request-response)
+ [コード例](#api-inference-examples-a2i-jurassic)

## 推論パラメータ
<a name="model-parameters-jurassic2-request-response"></a>

AI21 Labs Jurassic-2 モデルでは、以下の推論パラメータをサポートしています。

**Topics**
+ [ランダム性と多様性](#model-parameters-jurassic2-random)
+ [Length](#model-parameters-jurassic2-length)
+ [繰り返し](#model-parameters-jurassic2-reps)
+ [モデル呼び出しリクエストの body フィールド](#model-parameters-jurassic2-request-body)
+ [モデル呼び出しレスポンスの body フィールド](#model-parameters-jurassic2-response-body)

### ランダム性と多様性
<a name="model-parameters-jurassic2-random"></a>

AI21 Labs Jurassic-2 モデルでは、レスポンスのランダム性と多様性を制御する以下のパラメータをサポートしています。
+ **温度** (`temperature`) - 低い値を指定すると、レスポンスのランダム性を減らすことができます。
+ **トップ P** (`topP`) - 低い値を指定すると、可能性の低い選択肢を無視することができます。

### Length
<a name="model-parameters-jurassic2-length"></a>

AI21 Labs Jurassic-2 モデルでは、生成されるレスポンスの長さを制御する以下のパラメータがサポートされています。
+ **最大入力長** (`maxTokens`) - 生成されるレスポンスで使用されるトークンの最大数を指定します。
+ **ストップシーケンス** (`stopSequences`) - モデルに認識させて、それ以降はトークンの生成を停止させるストップシーケンスを設定します。ストップシーケンスに改行文字を挿入するには、Enter キーを押します。ストップシーケンスの挿入を終了するには、Tab キーを使用します。

### 繰り返し
<a name="model-parameters-jurassic2-reps"></a>

AI21 Labs Jurassic-2 モデルでは、生成されるレスポンスの反復を制御する以下のパラメータがサポートされています。
+ **プレゼンスのペナルティ** (`presencePenalty`) - 高い値を指定すると、プロンプトまたは入力内容に既に少なくとも 1 回出現しているトークンが新規に生成される可能性が低くなります。
+ **カウントのペナルティ** (`countPenalty`) - 高い値を指定すると、プロンプトまたは入力内容に既に少なくとも 1 回出現しているトークンが新規に生成される可能性が低くなります。この値は、出現回数に比例します。
+ **頻度のペナルティ** (`frequencyPenalty`) - 高い値を指定すると、プロンプトまたは完了時にすでに 1 回以上出現する新しいトークンが生成される可能性が低くなります。この値は、トークンの出現頻度に比例します (テキストの長さに合わせて正規化されます)。
+ **特殊トークンにペナルティを課す** - 特殊文字が繰り返し使用される可能性を減らします。デフォルト値は `true` です。
  + **空白** (`applyToWhitespaces`) - `true` の値を指定すると、空白や改行にペナルティが課されます。
  + **句読点 (`applyToPunctuation`)** - `true` の値を指定すると、句読点にペナルティが課されます。
  + **数字** (`applyToNumbers`) - `true` の値を指定すると、数字にペナルティが課されます。
  + **ストップワード** (`applyToStopwords`) - `true` の値を指定すると、ストップワードにペナルティが課されます。
  + **絵文字** (`applyToEmojis`) - `true` の値を指定すると、絵文字がペナルティの対象から除外されます。

### モデル呼び出しリクエストの body フィールド
<a name="model-parameters-jurassic2-request-body"></a>

AI21 Labs モデルを使用して [InvokeModel](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModel.html) または [InvokeModelWithResponseStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithResponseStream.html) 呼び出しを行うときは、以下と一致する JSON オブジェクトを `body` フィールドに入力します。[`prompt`] フィールドにプロンプトを入力します。

```
{
    "prompt": string,
    "temperature": float,
    "topP": float,
    "maxTokens": int,
    "stopSequences": [string],
    "countPenalty": {
        "scale": float
    },
    "presencePenalty": {
        "scale": float
    },
    "frequencyPenalty": {
        "scale": float
    }
}
```

特殊なトークンにペナルティを課すには、それらのフィールドをペナルティオブジェクトに追加します。例えば、`countPenalty` フィールドを次のように変更できます。

```
"countPenalty": {
    "scale": float,
    "applyToWhitespaces": boolean,
    "applyToPunctuations": boolean,
    "applyToNumbers": boolean,
    "applyToStopwords": boolean,
    "applyToEmojis": boolean
}
```

次の表は、数値パラメータの最小値、最大値、およびデフォルト値を示しています。


****  


- **ランダム性と多様性**
  - **パラメータ:** 温度 / **JSON 形式のオブジェクト:** temperature / **最小値:** 0 / **最大値:** 1 / **デフォルト値:** 0.5
  - **パラメータ:** トップ P / **JSON 形式のオブジェクト:** topP / **最小値:** 0 / **最大値:** 1 / **デフォルト値:** 0.5

- **Length**
  - **パラメータ:** 最大トークン (中規模、超大規模、および大規模モデル) / **最小値:** 0 / **最大値:** 8,191 / **デフォルト値:** 200
  - **パラメータ:** 最大トークン (上記以外のモデル) / **最小値:** 0 / **最大値:** 2,048 / **デフォルト値:** 200
  - **JSON 形式のオブジェクト:** maxTokens

- **繰り返し**
  - **パラメータ:** プレゼンスのペナルティ / **JSON 形式のオブジェクト:** presencePenalty / **最小値:** 0 / **最大値:** 5 / **デフォルト値:** 0
  - **パラメータ:** カウントのペナルティ / **JSON 形式のオブジェクト:** countPenalty / **最小値:** 0 / **最大値:** 1 / **デフォルト値:** 0
  - **パラメータ:** 頻度のペナルティ / **JSON 形式のオブジェクト:** frequencyPenalty / **最小値:** 0 / **最大値:** 500 / **デフォルト値:** 0



### モデル呼び出しレスポンスの body フィールド
<a name="model-parameters-jurassic2-response-body"></a>

レスポンスの `body`フィールドの形式については、[AI21 API リファレンス](https://docs.ai21.com/reference/introduction)」を参照してください。

**注記**  
Amazon Bedrock は、レスポンス識別子 (`id`) を整数値として返します。

## コード例
<a name="api-inference-examples-a2i-jurassic"></a>

この例は、*A2I AI21 Labs Jurassic-2 Mid* モデルを呼び出す方法を示しています。

```
import boto3
import json

brt = boto3.client(service_name='bedrock-runtime')

body = json.dumps({
    "prompt": "Translate to spanish: 'Amazon Bedrock is the easiest way to build and scale generative AI applications with base models (FMs)'.", 
    "maxTokens": 200,
    "temperature": 0.5,
    "topP": 0.5
})

modelId = 'ai21.j2-mid-v1'
accept = 'application/json'
contentType = 'application/json'

response = brt.invoke_model(
    body=body, 
    modelId=modelId, 
    accept=accept, 
    contentType=contentType
)

response_body = json.loads(response.get('body').read())

# text
print(response_body.get('completions')[0].get('data').get('text'))
```