利用Amazon Bedrock畅玩Claude 3等多种领先模型,抢占AI高地(体验倒计时4小时)

image.png

快乐的时间总是短暂的,Claude 3 在亚马逊云科技上限时体验仅剩4小时,上次分享了入门级操作教程,本期给大家带来AWS Lambda + Amazon Bedrock一起构建可以便捷使用的Claude 3接口

AWS Lambda

AWS Lambda 是一项计算服务,可以运行您的代码以响应事件并自动管理计算资源,这使其成为将想法转化为现代生产无服务器应用程序的最快方式。
用我们大众可理解的解释来讲,就是我们专注于代码层面,不考虑底层运行逻辑,类似的友商产品例如函数计算、云函数等

Amazon Bedrock

Amazon Bedrock 是一项完全托管的服务,通过单个 API 提供来自 AI21 Labs、Anthropic、Cohere、Meta、Stability AI 和 Amazon 等领先人工智能公司的高性能基础模型(FM),以及通过安全性、隐私性和负责任的 AI 构建生成式人工智能应用程序所需的一系列广泛功能。使用 Amazon Bedrock,您可以轻松试验和评估适合您的使用案例的热门 FM,通过微调和检索增强生成(RAG)等技术利用您的数据对其进行私人定制,并构建使用您的企业系统和数据来源执行任务的代理。由于 Amazon Bedrock 是无服务器的,因此您无需管理任何基础设施,并且可以使用已经熟悉的 AWS 服务将生成式人工智能功能安全地集成和部署到您的应用程序中。

本次咱们的实验就会用到Amazon Bedrock服务,通过在lambda上面使用Amazon Bedrock调用Claude 3的api,最终以URL的形式对外暴露

动手实践

Amazon Bedrock设置

首先我们要确保咱们自己的账户能够成功启用Amazon Bedrock服务,请检查是否有满足以下条件

  1. 亚马逊云科技全球账户的billing账单地址设置是否是海外,因为在中国大陆是无法使用Claude 3模型的

https://us-east-1.console.aws.amazon.com/billing/home?region=us-east-1#/paymentpreferences
image.png

  1. 可以设置Tax信息地址

https://us-east-1.console.aws.amazon.com/billing/home?region=us-east-1#/tax-settings
image.png

确保能够满足以上条件后,按照之前文章的操作流程或者亚马逊云科技给出《限时使用Claude3》的教程进行Claude 3模型启用
https://us-east-1.console.aws.amazon.com/bedrock/home?region=us-east-1#/modelaccess
image.png

创建IAM 角色

分别添加如下权限

  1. AmazonBedrockFullAccess
  2. AWSLambdaBasicExecutionRole

https://us-east-1.console.aws.amazon.com/iam/home?region=us-east-1#/roles
image.png
image.png
image.png
image.png
image.png

编写AWS Lambda函数

https://us-east-1.console.aws.amazon.com/lambda/home?region=us-east-1#/functions
image.png
image.png

代码填充

参考:
https://docs.aws.amazon.com/zh_cn/bedrock/latest/userguide/model-parameters-anthropic-claude-messages.html

import boto3
import json
import base64

bedrock = boto3.client("bedrock-runtime")

def lambda_handler(event, context):
    user_message = base64.b64decode(event['body']).decode()
    body = json.dumps({
        "max_tokens": 1000,
        "messages": [{"role": "user", "content": user_message}],
        "anthropic_version": "bedrock-2023-05-31"
    })
    #Call the claude3 on the Amazon Bedrock
    response = bedrock.invoke_model(
        body=body, 
        modelId="anthropic.claude-3-sonnet-20240229-v1:0"
        )

    #Extract the response content in the json
    response_body = json.loads(response.get("body").read())
    resp_to_user = response_body.get("content")[0]['text']
    return {
        'statusCode': 200,
        'body': resp_to_user
    }

image.png

修改函数超时以及创建函数URL

image.png
根据自身需求是否设置身份验证
image.png
image.png

本地测试代码

import requests

url = '你的AWS lambda函数URL'

payload = input("User:")

while True:
    resp = requests.request("POST", url, data=payload)
    print(resp.text)
    payload = input("User:")
    if payload == "q":
        break

image.png

当然还有很多玩法,例如我们可以使用boto3包中的"invoke_model_with_response_stream",同样可以实现对话功能,我们也可以通过调用接口,将多式联运消息中的图像和提示文本传递给AnthropicClaude 3 Sonnet模型

从这样一个小的实验,我们可以向后延申,例如

  1. 构建一个前端页面,直接给用户页面,对接对应的接口,使用起来更优雅
  2. 联合更多的服务一起使用,例如结合Amazon API Gateway、AWS Lambda、Amazon Bedrock、Amazon Dynamo等一起构建一个带有记录的Claude3模型工作流

更多精彩内容还是需要广大同学们一起去探索和发现,欢迎大家通过亚马逊云科技Amazon Bedrock访问包括Claude3在内的多种领先模型,以及学习上述所提到的服务,在构建工作流的时候实现全线Serverless化,降低运维成本!

好课推荐

AWS Lambda Foundations (Simplified Chinese)(中文配音版)

https://explore.skillbuilder.aws/learn/course/internal/view/elearning/1604/aws-lambda-foundations-simplified-chinesezhong-wen-pei-yin-ban?trk=7f7b63dd-733b-4a1e-9ad6-11c2b57b54ce&sc_channel=el

image.png

Amazon API Gateway for Serverless Applications (Simplified Chinese)(中文配音版)

https://explore.skillbuilder.aws/learn/course/internal/view/elearning/1459/amazon-api-gateway-for-serverless-applications-simplified-chinesezhong-wen-pei-yin-ban?trk=7f7b63dd-733b-4a1e-9ad6-11c2b57b54ce&sc_channel=el
image.png

Amazon DynamoDB for Serverless Architectures (Simplified Chinese)(中文配音版)

https://explore.skillbuilder.aws/learn/course/internal/view/elearning/1299/amazon-dynamodb-for-serverless-architectures-simplified-chinesezhong-wen-pei-yin-ban?trk=7f7b63dd-733b-4a1e-9ad6-11c2b57b54ce&sc_channel=el
image.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/445918.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JZ76 删除链表中重复的结点

/*public class ListNode {int val;ListNode next null;ListNode(int val) {this.val val;} } */import java.util.*; public class Solution {public ListNode deleteDuplication(ListNode pHead) {//初步想想法: 弄一个hashmap 然后进行key存储起来。然后 如果存…

[Buuctf] [MRCTF2020] Xor

运行 1.查壳 32位exe文件,没有壳 2.用32位IDA打开 找到main函数,F5查看伪代码,但是这里会弹出一个窗口 函数分析失败!! 这里我在看别人的题解时发现一种玄学方式解决了这个问题 窗口里面弹出了一个地址401095&…

鸿蒙Harmony应用开发—ArkTS声明式开发(模态转场设置:半模态转场)

通过bindSheet属性为组件绑定半模态页面,在组件插入时可通过设置自定义或默认的内置高度确定半模态大小。 说明: 从API Version 10开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 不支持路由跳转。 bindSheet bind…

【工具】Git的介绍与安装

目录 前言 1W:什么是Git? 2W:为什么使用Git? 3W:如何使用Git? Git的安装步骤 测试 3.1 桌面空白部分鼠标右击 3.2 选择 Open Git Bash here 3.3 输入 git -v 命令查看版本 Git区域分布 Git的工作…

Python列表及其操作详解,从此不再迷茫!

在前面的文章中,我们详细讲了六大数据类型中的数字类型,字符串类型。相信大家都能够熟练的掌握了。那么今天我们来讲解列表(list)。 这是一种常用且重要的数据类型,List可以用来存储一系列的元素,对于后期…

【漏洞复现】锐捷网络NBR700G 信息泄露

0x01 产品简介 锐捷网络NBR700G路由器是锐捷网络股份有限公司的一款无线路由设备。 0x02 漏洞概述 锐捷网络NBR700G路由器存在信息漏洞。未授权的攻击者可以通过该漏洞获取敏感信息。 0x03 测绘语句 fofa:body"系统负荷过高,导致网络拥塞&…

[LeetCode][LCR149]彩灯装饰记录 I——二叉树的层序遍历

题目 LCR 149. 彩灯装饰记录 I 给定一棵圣诞树,记作根节点为 root 的二叉树,节点值为该位置装饰彩灯的颜色编号。按照从左到右的顺序返回每一层彩灯编号。 示例 1: 输入:root [8,17,21,18,null,null,6] 输出:[8,17,…

【Python-Docx库】Word与Python的完美结合

今天给大家分享Python处理Word的第三方库:Python-Docx。 什么是Python-Docx? Python-Docx是用于创建和更新Microsoft Word(.docx)文件的Python库。 日常需要经常处理Word文档,用Python的免费第三方包:Pyt…

Vue3学习记录(六)--- 组合式API之依赖注入和异步组件

一、依赖注入 1、简介 ​ 在前面的笔记中,我们学习过父组件向子组件传递数据时,需要借助props来实现。但如果父组件想要向孙子组件传递数据,那就要连续使用两层props逐级向下传递,如果要接收数据的是更深层的后代组件&#xff0…

管理技巧 | 提升团队效能:如何与下属进行有效沟通

在日常的管理工作中,沟通作为一项基础而关键的技能,往往决定了团队的协作效率和目标达成率。作为一个曾经从基层员工一路成长为管理者的Angelia老师,深知沟通的艺术对于激发团队潜力的重要性。本篇文章与大家分享几个关于如何与下属进行有效沟…

Oracle Essbase 多维库导入文件数据步骤操作

第一步: 先确定导入数据的维度数量(清楚自己需要导入什么数据和范围) 第二步: 设置加载的规则 1.创建规则 2.编辑规则-》打开数据文件 通过数据文件来确定加载规则的加载格式 先查看数据文件格式: 将数据文件导入&…

MySQL执行原理、存储引擎、索引模型简介

1.sql的执行原理 Connectors 连接、支持多种协议,各种语言 Management service 系统管理和控制工具,例如:备份、集群副本管理等 pool 连接池 sql interfaces sql接口-接收命令返回结果 parser 分析解析器:验证 optimizer 优化…

板材的加强筋优化

前言 本示例使用优化模块通过引入加强筋来优化简单板的刚度。 本页讨论 前言应用描述Abaqus建模方法和仿真技术文件参考 应用描述 本示例说明了基于条件的简单支撑平板的加强筋优化。在加强筋优化过程中,壳单元的节点在壳法线的方向上移动,以增加惯性…

StableDiffusion3 官方blog论文研究

博客源地址:Stable Diffusion 3: Research Paper — Stability AI 论文源地址:https://arxiv.org/pdf/2403.03206.pdf Stability.AI 官方发布了Stable diffusion 3.0的论文研究,不过目前大家都沉浸在SORA带来的震撼中,所以这个水…

一. 并行处理与GPU体系架构-并行处理简介

目录 前言0. 简述1. 串行处理与并行处理的区别2. 并行执行3. 容易混淆的几个概念4. 常见的并行处理总结参考 前言 自动驾驶之心推出的 《CUDA与TensorRT部署实战课程》,链接。记录下个人学习笔记,仅供自己参考 本次课程我们来学习下课程第一章——并行处…

window mysql 安装出现的问题

1.安装到最后时,报错:authentication_string doesnt have a default value 解决办法: 1.不要关掉该页面,点击skip。 然后单击 back 回退到如下界面 2.去掉 Enable Strict Mode。 不要勾选 2. 最后一步:Start Servic…

8.5 Springboot项目实战 Redis缓存热点数据

文章目录 前言一、缓存与数据库一致性二、Repository层 -- Cache Aside模式实操BookRepositoryBookRepositoryImpl2.1 查询2.2 修改2.3 删除2.4 扩展Mapper修改三、Service层调用修改四、测试前言 前两文我们讲解了如何在SpringBoot中整合Redis,接下来我们将进行

Spring学习笔记(八)基于Spring mvc技术的简单后台登录验证系统

一、需求分析 本项目主要是对用户登录状态的验证,只有登录成功的用户才可以访问系统中的资源。为了保证后台系统的页面不能被客户直接请求访问,本案例中所有的页面都存放在项目的WEB-INF 文件夹下,客户需要访问相关页面时,需要在…

[BJDCTF2020]----EzPHP

文章目录 pass-1pass-2pass-3pass-4pass-5pass-6pass-7 查看题目&#xff0c;右键源代码&#xff0c;发现GFXEIM3YFZYGQ4A&#xff0c;base64解码&#xff1a;1nD3x.php 访问1nD3x.php&#xff0c;代码审计&#xff0c;一步一步分析 <?php highlight_file(__FILE__); error…

HarmonyOS通过 axios发送HTTP请求

我之前的文章 HarmonyOS 发送http网络请求 那么今天 我们就来说说axios 这个第三方工具 想必所有的前端开发者都不会陌生 axios 本身也属于 HTTP请求 所以鸿蒙开发中也支持它 但首先 想在HarmonyOS中 使用第三方工具库 就要先下载安装 ohpm 具体可以参考我的文章 HarmonyOS 下…