在Amazon Bedrock中导入自定义模型


e970e13de153ad9c81c90454ce84d11f.jpeg

使用[Amazon Bedrock],你可以访问来自领先人工智能(AI)公司的一系列高性能基础模型(FM),这些模型可以更轻松地构建和扩展生成式AI应用程序。其中一些模型提供可公开获取的权重,可以针对特定用例进行微调和定制。但是,以安全和可扩展的方式部署定制的FM并非易事。

从今天开始,Amazon Bedrock增加了预览版功能,可以为受支持的模型架构(如[Meta Llama 2、Llama 3]和[Mistral])导入自定义权重,并使用On-Demand模式提供自定义模型。你可以从[Amazon SageMaker]和[Amazon Simple Storage Service (Amazon S3)]导入[Hugging Face safetensors]格式的模型权重。

通过这种方式,你可以在Amazon Bedrock中使用现有的定制模型,如[Code Llama],它是一个针对代码专门版本的Llama 2,通过在代码特定数据集上进一步训练Llama 2而创建,或者使用你自己的数据对模型进行微调以满足你独特的业务需求,并将生成的模型导入Amazon Bedrock。

让我们看看实践中是如何工作的。

[将自定义模型带到Amazon Bedrock]

在[Amazon Bedrock控制台]中,我从导航窗格的”基础模型”部分选择”导入的模型”。现在,我可以通过从[Amazon Simple Storage Service (Amazon S3)]存储桶或Amazon SageMaker模型导入模型权重来创建自定义模型。

我选择从S3存储桶导入模型权重。在另一个浏览器标签页中,我使用[这个拉取请求(PR)]从[Hugging Face]网站下载[MistralLite]模型,该拉取请求提供了safetensors格式的权重。[拉取请求]目前处于”准备合并”状态,所以当你阅读本文时它可能已经是主分支的一部分。MistralLite是经过微调的[Mistral-7B-v0.1]语言模型,具有处理最长32K个令牌上下文的增强能力。

当下载完成后,我将文件上传到与将导入模型的[亚马逊云科技区域]相同的S3存储桶中。以下是Amazon S3控制台中的MistralLite模型文件:

28214cd6a0bbb2c7f2ad687c39993d76.jpeg

回到Amazon Bedrock控制台,我为模型输入一个名称并保留建议的导入作业名称。

9342cf8f92373b726488063854e78374.jpeg

我选择”模型导入设置”中的”模型权重”,并在S3中浏览选择我上传模型权重的位置。

0c79c85e07deb5fa2cd596360d15b551.jpeg

为了授权Amazon Bedrock访问S3存储桶上的文件,我选择创建并使用新的[Amazon Identity and Access Management (IAM)]服务角色的选项。我使用”查看权限详情”链接来检查角色将包含什么内容。然后,我提交作业。

大约十分钟后,导入作业就完成了。

487d14e98ac96874061b8fd58f363579.jpeg

现在,我在控制台中看到了导入的模型。列表还显示了模型[Amazon资源名称(ARN)]和创建日期。

9fc43bb37e426215d601b2b9ecd613d9.jpeg

我选择该模型以获取更多信息,如模型文件的S3位置。

b3968d172fa5c9c426a98ff6f1ac4307.jpeg

在模型详情页面中,我选择”在Playground中打开”以在控制台中测试该模型。在文本Playground中,我使用模型的提示模板输入一个问题:

<|prompter|>支持LLM长上下文有哪些主要挑战?</s><|assistant|>

导入的MistralLite模型很快就做出了回应,并描述了一些这些挑战。

1f8dc8d8d7fc3058dc2d1c98888e1a44.jpeg

在Playground中,我可以使用温度、最大长度等配置来调整响应以适应我的用例,或者添加特定于导入模型的停止序列。

要查看API请求的语法,我选择Playground右上角的三个小垂直点。

426084c7c2ab6c667b5ff9b1a2cb5c59.jpeg

我选择”查看API语法”,并使用[Amazon Command Line Interface (Amazon CLI)]运行命令:

Amazon Web Services bedrock-runtime invoke-model \ –model-id arn:亚马逊云科技:bedrock:us-east-1:123412341234:imported-model/a82bkefgp20f \ –body “{"prompt":"<|prompter|>支持LLM长上下文有哪些主要挑战?</s><|assistant|>","max_tokens":512,"top_k":200,"top_p":0.9,"stop":[],"temperature":0.5}” \ –cli-binary-format raw-in-base64-out \ –region us-east-1 \ invoke-model-output.txt

输出与我在Playground中获得的类似。如你所见,对于导入的模型,模型ID是导入模型的ARN。我可以使用模型ID与Amazon CLI和[Amazon Web Services SDK]调用导入的模型。

[需要了解的事项]

你可以为[Amazon Bedrock]支持的模型架构在美国东部(弗吉尼亚州北部)[亚马逊云科技区域]中引入自己的权重。模型导入功能目前处于预览阶段。

使用自定义权重时,Amazon Bedrock以On-Demand模式提供该模型,你只需为所使用的部分付费,无需承诺基于时间的任何期限。有关详细信息,请参阅[Amazon Bedrock定价]。

导入模型的能力由[Amazon Identity and Access Management (IAM)]管理,你可以仅允许你组织中需要此功能的角色使用它。

通过这次发布,使用内置安全性和隐私性的自定义模型构建和扩展生成式AI应用程序变得更加容易。

了解更多信息:

  • 参阅[Amazon Bedrock用户指南]。
  • 访问我们的[community.aws站点],找到深入的技术内容,并了解其他人如何在他们的解决方案中使用Amazon Bedrock。

—[Danilo]

a13d12aacf8d03738921f10060b94de3.jpeg

[Danilo Poccia]

Danilo与初创公司和任何规模的公司合作,以支持他们的创新。作为亚马逊网络服务(亚马逊云科技)的首席布道师(欧洲、中东和非洲地区),他利用自己的经验帮助人们实现他们的创意,专注于无服务器架构和事件驱动编程,以及机器学习和边缘计算的技术和业务影响。他是Manning出版社的《Amazon Web Services Lambda in Action》一书的作者。

  • 14
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值