【Amazon Bedrock】体验 Bedrock 的基本功能,为构建强大安全的LLM应用而准备

本文主要是介绍【Amazon Bedrock】体验 Bedrock 的基本功能,为构建强大安全的LLM应用而准备,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

文章目录

    • 一、什么是Amazon Bedrock?
    • 二、为什么选择 Amazon Bedrock
    • 三、访问Amazon Bedrock UI
    • 四、与Amazon Bedrock 聊天
    • 五、对比Amazon Bedrock 不同基础模型的返回结果
    • 六、让Amazon Bedrock处理文本
    • 七、利用Amazon Bedrock生成图片
    • 八、参考链接

一、什么是Amazon Bedrock?

在这里插入图片描述

Amazon Bedrock是一个完全托管的服务,它通过API提供了亚马逊和AI领先创业公司的基础模型(FMs)。因此可以从各种FMs中进行选择,找到最适合用例的模型。通过Amazon Bedrock的无服务器体验,可以快速轻松地开始试验FMs。使用自己的数据私下定制FMs,并使用AWS的工具和功能无缝地将其集成并部署到您的应用程序中。Amazon Bedrock的代理是完全托管的,可以更轻松地为开发人员创建生成式AI应用程序,这些应用程序可以基于专有知识提供最新答案并完成各种用例的任务。

Amazon Bedrock 是帮助您使用foundation models(基础模型)来构建和扩展生成式AI应用程序最简单的方法。从下面的AWS AI/ML技术栈中,我们可以看到,Amazon Bedrock通过UI/API以无服务器体验的形式为客户提供了访问强大LLM的能力,同时确保客户的数据隐私性,可以使数据存储在客户自己的AWS账户内。

image-20231226175134771

这里我们提到的foundation models(FMs/基础模型)大致等同于Large Language Model(大语言模型) ,但是不仅仅包括Large Language Model,还包括embedding model (文本转换成向量)和diffusion model(文本生成图片)。

二、为什么选择 Amazon Bedrock

在这里插入图片描述

Amazon Bedrock 是一项完全托管的服务,使用单个 API 提供来自 AI21 Labs、Anthropic、Cohere、Meta、Stability AI 和 Amazon 等领先人工智能公司的高性能基础模型(FM),以及构建生成式人工智能应用程序所需的一系列广泛功能,在维护隐私和安全的同时简化开发。借助 Amazon Bedrock 的全面功能,可以轻松尝试各种热门 FM,使用微调和检索增强生成(RAG)等技术利用自己的数据对其进行私人定制,并创建可执行复杂业务任务的托管代理,所有这些都无需编写任何代码。由于 Amazon Bedrock 是无服务器的,因此无需管理任何基础设施,并且可以使用已经熟悉的亚马逊云科技云服务将生成式人工智能功能安全地集成和部署到您的应用程序中。

本博客将借助 Amazon Bedrock 进行生成式AI的体验,Amazon Bedrock 提供来自Anthropic、Cohere、Amazon 等多家人工智能公司的高性能模型,并提供控制台、API的使用方式。将使用控制台的方式,去体验文生文文生图问答聊天的生成式AI。

通过本实验,将了解体验到Amazon Bedrock的基本使用方法,以便快速构建强大安全的Large Language Model应用,其中包括:

  • 使用Amazon Bedrock - Chat模式来提出问题并获得高质量回答,包括代码生成以及不同模型之间结果的对比。
  • 使用Amazon Bedrock - Text模式来体验基本文字处理功能。
  • 使用Amazon Bedrock - Image模式体验文字生成图像功能,让您在几秒钟内得到您描述的图片。

三、访问Amazon Bedrock UI

当完成AWS账号登陆之后,可以通过下面url或者控制台访问Amazon Bedrock的UI。

直接访问URL:https://us-west-2.console.aws.amazon.com/bedrock/home?region=us-west-2#/overview


或者在控制台首页输入 Bedrock 进行访问:

image-20240102203714177

之后会跳转到Amazon Bedrock首页,点击 Get started

image-20231226175528426

在这里可以看到Amazon Bedrock支持多个基础模型(foundation model),其中包括Amazon Titan,Claude,Jurassic,Command,Stable Diffusion 以及 Llama2。

image-20231226175640479

在右上角选择region,选择us-west-2

image-20240102203853202

左侧的导航栏中点击Model access,点击Manage model access。如下图所示:

image-20240102204024715

点击Submit use case details来申请访问Claude模型

image-20240102204202423

在弹出窗口中按下图输入相应内容(Company name: Amazon; Company website URL: http://aws.amazon.com),之后点击Submit。

image-20240102204245209

成功submit之后再次点击Manage model access;选择左上角的CheckBox选中所有model,之后点击Request model access

image-20240102204328277

稍等片刻并刷新页面,确认如下Model都已经是Access granted状态:

image-20240102204559546

四、与Amazon Bedrock 聊天

首先在左侧的导航栏中点击 Playgrounds - Chat

image-20240102205340142

点击Select model来选择想要使用的基础模型(大语言模型):

image-20240102205453685

首先选择Anthropic的Claude v2.1模型来体验其强大的推理能力和中文处理能力,点击Apply:

image-20240102205610018

然后通过Chat来让Amazon Bedrock来帮助“安排一个上海2日游的行程”。


注意:将该问题输入到聊天窗口中,将Maximum Length调整到2048(防止返回结果因为token限制被截断;UI上的限制为2048 token,API支持最大token为200k),点击Run。

image-20240102205721592

可以在紫色区域看见大模型的返回结果,同时也可以在最下方看见这次调用的耗时,输入输出token数以及花费:

image-20240102205912842

下面先清除本次对话,点击下图所示的icon。

image-20240102210004063

接下来让Amazon Bedrock为我们生成代码,输入如下prompt:

Write a short and high-quality python script for the following task, something a very skilled python expert would write. You are writing code for an experienced developer so only add comments for things that are non-obvious. Make sure to include any imports required. NEVER write anything before the ```python```block. After you are done generating the code and after the ```python```block, check your work carefully to make sure there are no mistakes, errors, or inconsistencies. If there are errors, list those errors in tags, then generate a new version with those errors fixed. If there are no errors, write "CHECKED: NO ERRORS" in tags. Here is the task: A web scraper that extracts data from multiple pages and stores results in a SQLite database. Double check your work to ensure no errors or inconsistencies.

可以看到Amazon Bedrock生成了带有注释的可读性很强的代码。

image-20240102210212822

五、对比Amazon Bedrock 不同基础模型的返回结果

如下图所示选Compare mode

image-20240102210338181

点击右侧的 + 号继续添加对比model(最多支持2个对比model)

image-20240102210420202

分别点击第二个和第三个窗口的Select model选项,来添加想要对比的基础模型。这里分别选择Llama2 Chat 13BJurassic-2 Ultra

image-20240102210603706

image-20240102210641940

选择好相应的model之后,显示如下:

image-20240102210709278

之后在聊天窗口输入问题例如“2 days trip to Shanghai”,点击Run,就可以轻松直观的对比不同模型的返回结果:

image-20240102210846821

六、让Amazon Bedrock处理文本

接下来,通过左侧的导航栏切换到Playgrounds - Text:

image-20240102211004131

同样,需要先选择基础模型,这里选择了Llama 2 Chat 70B;同样注意需要把Response length调整到2048。

image-20240102211100943

这次使用COT (Chain of Thought) - Let’s think step by step让大模型帮我们处理问题;可以看到Amazon Bedrock可以把它每一步的思考以及结果都返回。输入Prompt:

You are a a very intelligent bot with exceptional critical thinking. I went to the market and bought 10 apples. I gave 2 apples to your friend and 2 to the helper. I then went and bought 5 more apples and ate 1. How many apples did I remain with? Let's think step by step.你是一个非常聪明的机器人,具有非凡的批判性思维。我去市场买了10个苹果。我给了你的朋友2个苹果,给了帮手2个。然后我又买了5个苹果,吃了1个。我还剩下几个苹果?让我们一步一步来思考。

image-20240102211307846

七、利用Amazon Bedrock生成图片

在左侧的导航栏中点击Playgrounds - Image:

image-20240102211402322

同样,需要先Select model,这次选择Amazon Titan Image Generator

image-20240102211454695

之后输入如下prompt来让Amazon Bedrock为我们生成图片,点击Run

a Panda wearing glasses and eating an ice cream in Las Vegas.

image-20240102211604845
image-20240102211641763

Amazon Titian Image Generator会生成3张图片用来供我们选择;点击其中一张认为效果最好的图片,可以下载此图片或者继续编辑。

image-20240102211720587

八、参考链接

🔴🟡🟢https://docs.aws.amazon.com/zh_cn/bedrock/latest/userguide/what-is-bedrock.html

在这里插入图片描述
在这里插入图片描述

这篇关于【Amazon Bedrock】体验 Bedrock 的基本功能,为构建强大安全的LLM应用而准备的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/564591

相关文章

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法

Java 线程安全与 volatile与单例模式问题及解决方案

《Java线程安全与volatile与单例模式问题及解决方案》文章主要讲解线程安全问题的五个成因(调度随机、变量修改、非原子操作、内存可见性、指令重排序)及解决方案,强调使用volatile关键字... 目录什么是线程安全线程安全问题的产生与解决方案线程的调度是随机的多个线程对同一个变量进行修改线程的修改操

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提

Java MQTT实战应用

《JavaMQTT实战应用》本文详解MQTT协议,涵盖其发布/订阅机制、低功耗高效特性、三种服务质量等级(QoS0/1/2),以及客户端、代理、主题的核心概念,最后提供Linux部署教程、Sprin... 目录一、MQTT协议二、MQTT优点三、三种服务质量等级四、客户端、代理、主题1. 客户端(Clien

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

全屋WiFi 7无死角! 华硕 RP-BE58无线信号放大器体验测评

《全屋WiFi7无死角!华硕RP-BE58无线信号放大器体验测评》家里网络总是有很多死角没有网,我决定入手一台支持Mesh组网的WiFi7路由系统以彻底解决网络覆盖问题,最终选择了一款功能非常... 自2023年WiFi 7技术标准(IEEE 802.11be)正式落地以来,这项第七代无线网络技术就以超高速

基于Python构建一个高效词汇表

《基于Python构建一个高效词汇表》在自然语言处理(NLP)领域,构建高效的词汇表是文本预处理的关键步骤,本文将解析一个使用Python实现的n-gram词频统计工具,感兴趣的可以了解下... 目录一、项目背景与目标1.1 技术需求1.2 核心技术栈二、核心代码解析2.1 数据处理函数2.2 数据处理流程

Java中常见队列举例详解(非线程安全)

《Java中常见队列举例详解(非线程安全)》队列用于模拟队列这种数据结构,队列通常是指先进先出的容器,:本文主要介绍Java中常见队列(非线程安全)的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一.队列定义 二.常见接口 三.常见实现类3.1 ArrayDeque3.1.1 实现原理3.1.2