使用提示管理器创建提示 - Amazon Bedrock

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

使用提示管理器创建提示

创建提示时,您可以选择以下选项:

  • 编写提示消息,用作 FM 的输入以生成输出。

  • 使用双花括号在提示消息中包含一些变量(如 {{variable}}),这些变量可在调用提示时填充。

  • 选择要用于调用提示的模型;如果您计划将提示与代理结合使用,则无需指定模型。如果您选择模型,还可以修改要使用的推理配置。要查看不同模型的推理参数,请参阅基础模型的推理请求参数和响应字段

所有提示都支持以下基本推理参数:

  • MaxTokens – 允许在生成的响应中使用的最大词元数。

  • stopSequences – 停止序列的列表。停止序列是一个字符序列,会使模型停止生成响应。

  • temperature – 模型在生成响应时选择更高概率选项的可能性。

  • topP – 模型为下一个词元考虑的最有可能的候选项所占百分比。

如果模型支持其他推理参数,则可以将它们指定为提示的附加字段。您可以在 JSON 对象中提供附加字段。以下示例展示了如何设置 top_k,该设置在 Anthropic Claude 模型中可用,但不是基本推理参数。

{ "top_k": 200 }

有关模型推理参数的信息,请参阅基础模型的推理请求参数和响应字段

将基本推理参数设置为附加字段不会覆盖您在控制台中设置的值。

如果为提示选择的模型支持 Converse API(有关更多信息,请参阅使用 Converse API 操作进行对话),则可以在构造提示时添加以下内容:

  • 用于向模型提供指令或上下文的系统提示。

  • 作为对话历史记录的先前提示(用户消息)和模型响应(助手消息),供模型在为最终用户消息生成响应时参考。

  • (如果模型支持)模型在生成响应时使用的工具

  • (如果模型支持)使用提示缓存,通过缓存大型或常用提示来降低成本。根据模型,您可以缓存系统指令、工具和消息(用户和助手)。如果您的提示前缀总数达到了模型所需的最小词元数,则提示缓存会为提示创建缓存检查点。在提示中遇到已更改的变量时,提示缓存会创建一个新的缓存检查点(在输入词元的数量达到模型所需的最小值时)。

要了解如何使用提示管理器创建提示,请选择与您的首选方法对应的选项卡,然后按照以下步骤操作:

Console
创建提示
  1. 采用有权使用 Amazon Bedrock 控制台的 IAM 身份登录 AWS 管理控制台。然后,通过以下网址打开 Amazon Bedrock 控制台:https://console.aws.amazon.com/bedrock

  2. 从左侧导航窗格中选择提示管理器。然后,选择创建提示

  3. 为提示提供名称和可选描述。

  4. 要使用客户自主管理型密钥加密提示,请在 KMS 密钥选择部分选择自定义加密设置(高级)。如果您忽略此字段,提示将使用 AWS 托管式密钥进行加密。有关更多信息,请参阅 AWS KMS 密钥

  5. 选择创建提示。提示已创建,您将进入新创建的提示的提示生成器,您可以在其中配置提示。

  6. 您可以继续执行以下流程来配置提示,也可以稍后返回提示生成器。

配置提示
  1. 如果您尚未进入提示生成器,请执行以下操作:

    1. 采用有权使用 Amazon Bedrock 控制台的 IAM 身份登录 AWS 管理控制台。然后,通过以下网址打开 Amazon Bedrock 控制台:https://console.aws.amazon.com/bedrock

    2. 从左侧导航窗格中选择提示管理器。然后,在提示部分中选择一个提示。

    3. 提示草稿部分中,选择在提示生成器中编辑

  2. 使用提示窗格来构造提示。在最后一个用户消息框中输入提示。如果模型支持 Converse API 或 AnthropicClaude 消息 API,您还可以添加系统提示以及之前的用户消息助手消息以提供上下文。

    在编写提示时,您可以用双花括号将变量括起(如 {{variable}})。您添加的每个变量都显示在测试变量部分中。

  3. (可选)您可以通过以下方式修改提示:

    • 配置窗格中,执行以下操作:

      1. 选择用于运行推理的生成式人工智能资源

        注意

        如果您选择了代理,则只能在控制台中测试提示。要了解如何在 API 中使用代理测试提示,请参阅使用提示管理器测试提示

      2. 推理参数中,设置要使用的推理参数。

      3. 如果模型支持推理,请开启推理,在模型的响应中包含其推理过程。在推理词元中,您可以配置模型能够使用的推理词元的数量。

      4. 其他模型请求字段中,选择配置以指定除推理参数中的参数之外的推理参数。

      5. 如果您选择的模型支持工具,请选择配置工具,将工具与提示结合使用。

      6. 如果您选择的模型支持提示缓存,请选择以下选项之一(可用性因模型而异):

        • :不进行任何提示缓存。

        • 工具:仅缓存提示中的工具。

        • 工具、系统指令:缓存提示中的工具和系统指令。

        • 工具、系统指令和消息:缓存提示中的工具、系统指令和消息(用户和助手)。

    • 要比较提示的不同变体,请选择比较变体。您可以在比较页面上执行以下操作:

      • 要添加变体,请选择加号。您最多可以添加三个变体。

      • 指定变体的详细信息后,您可以指定任何测试变量并选择运行来测试变体的输出。

      • 要删除变体,请选择三个点,然后选择从比较中删除

      • 要替换工作草稿并退出比较模式,请选择另存为草稿。所有其他变体都将被删除。

      • 要退出比较模式,请选择退出比较模式

  4. 完成提示配置后,您可以选择以下选项:

API

要创建提示,请使用 Amazon Bedrock 代理构建时端点发送 CreatePrompt 请求。

以下字段是必填字段:

字段 简要描述
名称 提示的名称。
variants 提示的不同配置列表(见下文)。
defaultVariant 默认变体的名称。

variants 列表中的每个变体都是具有以下一般结构的 PromptVariant 对象:

{ "name": "string", # modelId or genAiResource (see below) "templateType": "TEXT", "templateConfiguration": # see below, "inferenceConfiguration": { "text": { "maxTokens": int, "stopSequences": ["string", ...], "temperature": float, "topP": float } }, "additionalModelRequestFields": { "key": "value", ... }, "metadata": [ { "key": "string", "value": "string" }, ... ] }

按如下所示填写各字段:

  • name – 输入变体的名称。

  • 根据要使用的模型调用资源,提供以下字段之一:

    • modelId:要指定要与提示一起使用的基础模型推理配置文件,请输入其 ARN 或 ID。

    • genAiResource:要指定代理,请输入其 ID 或 ARN。genAiResource 的值是格式如下的 JSON 对象:

      { "genAiResource": { "agent": { "agentIdentifier": "string" } }
      注意

      如果您添加了 genAiResource 字段,则只能在控制台中测试提示。要在 API 中使用代理测试提示,您必须直接将提示文本输入到 InvokeAgent 请求的 inputText 字段。

  • templateType:输入 TEXTCHATCHAT 仅兼容支持 Converse API 的模型。如果要使用提示缓存,则必须使用 CHAT 模板类型。

  • templateConfiguration:该值取决于您指定的模板类型:

  • inferenceConfiguration – text 字段映射到 PromptModelInferenceConfiguration。此字段包含所有模型通用的推理参数。要了解有关推理参数的更多信息,请参阅利用推理参数影响响应生成

  • additionalModelRequestFields:使用此字段可指定特定于运行推理所用模型的推理参数。要详细了解特定于模型的推理参数,请参阅基础模型的推理请求参数和响应字段

  • metadata – 要与提示变体关联的元数据。您可以将键值对附加到数组,以使用元数据标记提示变体。

以下字段是可选字段:

字段 应用场景
description 为提示提供描述。
clientToken 用于确保 API 请求仅完成一次。有关更多信息,请参阅确保幂等性
tags 将标签与流相关联。有关更多信息,请参阅 标记 Amazon Bedrock 资源

响应将创建一个 DRAFT 版本并返回一个 ID 和 ARN,您可以将其用作其他与提示相关的 API 请求的提示标识符。