AI21 LabsJurassic-2模型 - Amazon Bedrock

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AI21 LabsJurassic-2模型

本节提供推理参数和使用AI21 LabsAI21 LabsJurassic-2模型的代码示例。

推理参数

这些AI21 LabsJurassic-2模型支持以下推理参数。

随机性和多样性

这些AI21 LabsJurassic-2模型支持以下参数来控制响应的随机性和多样性。

  • Temperature (temperature) – 使用较低的值可降低响应中的随机性。

  • Top P (topP) – 使用较低的值可忽略不太可能的选项。

Length

这些AI21 LabsJurassic-2模型支持以下参数来控制生成的响应的长度。

  • Max completion length (maxTokens) – 指定生成的响应中的最大词元数。

  • Stop sequences (stopSequences) – 配置模型可识别的停止序列,遇到停止序列后,模型停止生成更多词元。按 Enter 键可在停止序列中插入换行符。使用 Tab 键结束对停止序列的插入。

重复

这些AI21 LabsJurassic-2模型支持以下参数来控制生成的响应中的重复性。

  • Presence penalty (presencePenalty) – 使用较高的值可降低生成的新词元已在提示或完成内容中至少出现过一次的概率。

  • Count penalty (countPenalty) – 使用较高的值可降低生成的新词元已在提示或完成内容中至少出现过一次的概率。与出现次数成正比。

  • Frequency penalty (frequencyPenalty) – 使用较高的值可降低生成的新词元已在提示或完成内容中至少出现过一次的概率。此值与词元出现的频率成正比(标准化为文本长度)。

  • Penalize special tokens — 降低特殊字符重复出现的概率。默认值为 true

    • Whitespaces (applyToWhitespaces) – true 值会将惩罚应用于空格和新行。

    • Punctuations (applyToPunctuation) – true 值会将惩罚应用于标点。

    • Numbers (applyToNumbers) – true 值会将惩罚应用于数字。

    • Stop words (applyToStopwords) – true 值会将惩罚应用于停顿词。

    • Emojis (applyToEmojis) – true 值且将表情符号排除在惩罚范围之外。

模型调用请求正文字段

使用AI21 Labs模型进行InvokeModelInvokeModelWithResponseStream调用时,请在body字段中填入符合以下对象的 JSON 对象。在 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
Top P topP 0 1 0.5
Length Max tokens (mid, ultra, and large models) maxTokens 0 8,191 200
Max tokens (other models) 0 2,048 200
重复 Presence penalty presencePenalty 0 5 0
Count penalty countPenalty 0 1 0
Frequency penalty frequencyPenalty 0 500 0

模型调用响应正文字段

有关响应中的 body 字段的格式的信息,请参阅 https://docs.ai21.com/reference/j2-complete-ref

注意

Amazon Bedrock 以整数值的形式返回响应标识符 (id)。

代码示例

此示例说明如何调用 A2I 模型AI21 LabsJurassic-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'))