配置模型提供程序 - 亚马逊 SageMaker AI
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

配置模型提供程序

注意

在本节中,我们假设您计划使用的语言和嵌入模型已经部署。对于提供的模型 Amazon,您应该已经拥有 SageMaker 人工智能终端节点的 ARN 或者可以访问 Amazon Bedrock。对于其他模型提供程序,您应该使用 API 密钥进行身份验证以及授权向您的模型提出的请求。

Jupyter AI 支持多种模型提供程序和语言模型,请参阅其支持的模型列表,了解最新的可用模型。有关如何部署提供的模型的信息 JumpStart,请参阅 JumpStart 文档中的部署模型。您需要申请访问 Amazon Bedrock 才能将其用作您的模型提供程序。

Jupyter AI 的配置因使用聊天用户界面还是神奇命令而异。

在聊天用户界面中配置您的模型提供程序

注意

您可以按照相同的说明配置多个模型 LLMs 和嵌入模型。但是,您必须配置至少一种语言模型

要配置聊天用户界面
  1. 在中 JupyterLab,通过选择左侧导航面板中的聊天图标 ( Icon of a rectangular shape with a curved arrow pointing to the upper right corner. ) 来访问聊天界面。

  2. 选择左侧窗格右上角的配置图标 ( Gear or cog icon representing settings or configuration options. )。这将打开 Jupyter AI 配置面板。

  3. 填写与服务提供程序相关的字段。

    • 适用于 JumpStart 或 Amazon Bedrock 提供的型号

      • 语言模型下拉列表中,选择sagemaker-endpoint使用 Amazon Bedrock 部署的模型 JumpStart 或bedrock由 Amazon Bedrock 管理的模型。

      • 根据您的模型部署在 SageMaker AI 上还是 Amazon Bedrock 上,参数会有所不同。

        • 对于使用以下设备部署的模型 JumpStart:

        • 对于由 Amazon Bedrock 管理的模型:在系统上添加存储您的 Amazon 凭证的 Amazon 配置文件(可选),然后 Amazon Web Services 区域 在区域名称中添加部署模型的配置文件。

      • (可选)选择您有权访问的嵌入模型。嵌入模型用于从本地文档中捕获更多信息,从而使文本生成模型能够在这些文档的上下文中回答问题。

      • 选择保存更改,然后导航到左侧窗格左上角的向左箭头图标 ( Left-pointing arrow icon, typically used for navigation or returning to a previous page. )。这将打开 Jupyter AI 聊天用户界面。您可以开始与模型交互了。

    • 对于由第三方提供商托管的模型

      • 语言模型下拉列表中,选择您的提供商 ID。您可以在 Jupyter AI 模型提供商列表中找到每个提供商的详细信息,包括其 ID。

      • (可选)选择您有权访问的嵌入模型。嵌入模型用于从本地文档中捕获更多信息,从而使文本生成模型能够在这些文档的上下文中回答问题。

      • 插入模型的 API 密钥。

      • 选择保存更改,然后导航到左侧窗格左上角的向左箭头图标 ( Left-pointing arrow icon, typically used for navigation or returning to a previous page. )。这将打开 Jupyter AI 聊天用户界面。您可以开始与模型交互了。

以下快照说明了聊天界面配置面板,该面板设置为调用由 AI 提供 JumpStart 并部署在 AI 中的 Flan-t5-Small 模型。 SageMaker

聊天界面配置面板设置为调用由提供的 Flan-t5-Small 模型。 JumpStart

将额外的模型参数和自定义参数传递给您的请求

您的模型可能需要额外的参数,例如用于用户协议批准的自定义属性,或调整其他模型参数(如温度或响应长度)。我们建议使用生命周期配置将这些设置配置为 JupyterLab应用程序的启动选项。有关如何创建生命周期配置并将其附加到您的域或从 SageMaker AI 控制台附加到用户配置文件的信息,请参阅创建和关联生命周期配置。在为 JupyterLab 应用程序创建空间时,您可以选择 LCC 脚本。

使用以下 JSON 架构配置额外参数

{ "AiExtension": { "model_parameters": { "<provider_id>:<model_id>": { Dictionary of model parameters which is unpacked and passed as-is to the provider.} } } } }

以下脚本是 JSON 配置文件的示例,您可以在创建 JupyterLab 应用程序 LCC 时使用该文件来设置部署在 Amazon Bedrock 上的 L AI21 abs Jurassic-2 模型的最大长度。增加模型生成响应的长度可以防止模型响应的系统截断。

#!/bin/bash set -eux mkdir -p /home/sagemaker-user/.jupyter json='{"AiExtension": {"model_parameters": {"bedrock:ai21.j2-mid-v1": {"model_kwargs": {"maxTokens": 200}}}}}' # equivalent to %%ai bedrock:ai21.j2-mid-v1 -m {"model_kwargs":{"maxTokens":200}} # File path file_path="/home/sagemaker-user/.jupyter/jupyter_jupyter_ai_config.json" #jupyter --paths # Write JSON to file echo "$json" > "$file_path" # Confirmation message echo "JSON written to $file_path" restart-jupyter-server # Waiting for 30 seconds to make sure the Jupyter Server is up and running sleep 30

以下脚本是一个用于创建 JupyterLab 应用程序 LCC 的 JSON 配置文件示例,该文件用于为部署在 Amazon Bed rock 上的 Anthropic Claude 模型设置其他模型参数。

#!/bin/bash set -eux mkdir -p /home/sagemaker-user/.jupyter json='{"AiExtension": {"model_parameters": {"bedrock:anthropic.claude-v2":{"model_kwargs":{"temperature":0.1,"top_p":0.5,"top_k":25 0,"max_tokens_to_sample":2}}}}}' # equivalent to %%ai bedrock:anthropic.claude-v2 -m {"model_kwargs":{"temperature":0.1,"top_p":0.5,"top_k":250,"max_tokens_to_sample":2000}} # File path file_path="/home/sagemaker-user/.jupyter/jupyter_jupyter_ai_config.json" #jupyter --paths # Write JSON to file echo "$json" > "$file_path" # Confirmation message echo "JSON written to $file_path" restart-jupyter-server # Waiting for 30 seconds to make sure the Jupyter Server is up and running sleep 30

将 LCC 附加到域名或用户个人资料后,请在启动应用程序时将您的 LCC 添加到您的 JupyterLab 空间。要确保 LCC 更新您的配置文件,请在终端中运行 more ~/.jupyter/jupyter_jupyter_ai_config.json。文件内容应与传递给 LCC 的 JSON 文件内容一致。

在笔记本中配置您的模型提供程序

使用和魔法命令通过 Studio Classic 笔记本电脑 JupyterLab 中的 Jupyter AI 调用模型 %%ai%ai
  1. 在您的笔记本环境中安装特定于您的模型提供程序的客户端库。例如,在使用 OpenAI 模型时,您需要安装 openai 客户端库。您可以在 Jupyter AI 模型提供程序列表Python 软件包列中找到每个提供程序所需的客户端库列表。

    注意

    对于托管的模型 Amazon,已安装在使用boto3的 SageMaker AI 分发映像中 JupyterLab,或者安装在 Studio Classic 中使用的任何数据科学映像中。

    • 对于托管的模特 Amazon

      确保您的执行角色有权为由 Amazon Bedrock 提供的模型调用您的 SageMaker AI 终端节点, JumpStart 或者您有权访问 Amazon Bedrock。

    • 对于由第三方提供商托管的模型

      使用环境变量在笔记本环境中导出提供程序的 API 密钥。您可以使用以下神奇命令。将命令中的 provider_API_key 替换为在 Jupyter AI 模型提供商列表的环境变量栏中为您的提供程序找到的环境变量

      %env provider_API_key=your_API_key