如果Meta的Llama 3.1是个朋友,它可能是个超级聪明但总会把咖啡洒在衬衫上的朋友。毕竟,即使是天才,也难免会有小缺点!不过话说回来,Llama 3.1确实是个强大的工具,既高端又易上手,特别是在与AWS Bedrock一起使用时。
快来加入我们,加入Woyora的Llama 3.1特快专线之旅,我们将技术化为魔法,我们不需要真正的羊驼。准备好开始创造了吗?点击这里,开始你的冒险之旅!
对于视觉型学习者,点击这里观看我们的视频教学!
为什么Llama 3.1成了大家的新宠Meta在Llama 3.1上的表现真的非常出色。这款最新的Llama模型不仅开放了源代码,还带来了惊人的改进。尤其是meta.llama3-1-405b-instruct-v1:0
模型,拥有4050亿个参数,性能卓越,语言理解能力也大大提升,这绝对是一次质的飞跃!
无论你是在处理复杂的对话式人工智能,还是深入细致的数据分析,这款模型都旨在让生活更轻松,和让AI更智能。
如何通过 AWS Bedrock 一步一步访问 Llama 3.1现在,让我们开始了解如何设置并开始使用AWS Bedrock上的Llama 3.1。即使你不是编程高手也没关系,我会一步步详细地教你,不用担心。
- *设置 AWS Bedrock 服务\
- 首先,如果你还没有 AWS 账户,现在去注册一个。访问 AWS 管理控制台并创建你的账户。
- 准备好账户后,进入 AWS Bedrock 服务页面。
- 点击“开始使用”后进入基岩版页面。
- 进入基岩页面后,使用左侧菜单,向下滚动直到找到“模型访问权限”
- 点击修改模型访问
- 你会被带到模型访问页面,这是一个列表,向下滚动直到找到 Meta 下的 Llama 3.1 模型,然后勾选它们
- 在选中了 Llama 3.1 模型的复选框后,一直往下拉到页面最底部并点击“下一步”按钮
会出现一个页面,上面会显示条款。然后点击提交按钮。
- 等几分钟,权限就会自动授予。别忘了刷新页面检查一下!
2. 搭建一个Bedrock客户端
现在我们有了Llama 3.1模型的使用权,可以开始了。我们可以调用API。下面我来分解一下你需要的代码,如果你不需要解释,可以直接跳到最后的代码部分。
- 进口:
import boto3 # 导入AWS SDK for Python
from botocore.exceptions import ClientError # 导入客户端错误异常
import json
**boto3**
:AWS 的 Python 工具包,用于与 AWS 服务交互,例如这里的 Bedrock Runtime。
**ClientError**
:处理AWS客户端错误的异常。
**json**
:用于将Python对象转换为JSON格式,并从JSON格式转换回Python对象,常用于创建请求和处理响应。
- 初始化客户端:
client = boto3.client("bedrock-runtime", region_name="us-west-2", aws_access_key_id="YOUR_ACCESS_KEY", aws_secret_access_key="YOUR_SECRET_ACCESS_KEY")
使用 **boto3**
库创建一个 AWS Bedrock Runtime 客户端。该客户端连接到 us-west-2
区域,并使用特定的 AWS 凭据(这些凭据需要替换为有效的凭据)。
**bedrock-runtime**
:一个用于在AWS上运行如Llama等语言模型的服务。
- 型号信息:
模型ID为:meta.llama3-1-8b-instruct-v1:0
指定 Meta Llama 3.1 模型(8亿参数)的ID,该模型用于根据提示生成响应。
- 提示:
提示:我去市场买了10个苹果。我给了朋友2个苹果,还给了帮手2个。之后我又买了5个苹果,吃掉了1个。我还剩下多少个苹果?让我们一步一步地想。
发送给Llama 3.1模型(或Llama 3.1)的问题或提示。在这里你可以提出你的问题。
Llama 3的提示格式
<|begin_of_text|>
<|start_header_id|>用户:<|end_header_id|>
{prompt}
<|eot_id|>
<|start_header_id|>助手:<|end_header_id|>
这种提示以Llama模型使用的特定格式嵌入。
**< |对话开始标志|>**
: 标记对话开始。
**< |start_header_id|>用户< |end_header_id|>**
:表示以下消息是由用户发送的。
提示/问题的实际内容将按照此格式插入。
**< |start_header_id|>助手<|end_header_id|>**
: 表示这里将是助手回应的开始。
- 创建请求:
将native_request转换为JSON格式的字符串:
native_request = {
"prompt": formatted_prompt,
"max_gen_len": 512,
"temperature": 0.5
}
request = json.dumps(native_request)
构建一个用于发送到模型的JSON格式请求:
这里包含了一个格式化的提示(例如:prompt)。
**max_gen_len**
: 设置最大回复长度。
**温度设置**
:控制回复的创意性(0.5 是一个比较平衡的值)。
- 调用这个模型:
(保留了更口语化的表达,并考虑了停顿的自然性,但去掉了逗号,以更符合口语习惯。)
response = 客户端调用模型(
modelId=model_id, # 模型ID
body=request, # 请求体
contentType="application/json" # 内容类型
)
通过 AWS Bedrock Runtime 发送 JSON 请求到模型。
**invoke_model**
:AWS Bedrock 的方法,用于调用指定提示和参数的语言模型。
- 如何处理响应:
或
- 处理响应的方法:
选择一种更符合上下文的表达方式。
model_response = json.loads(response["body"].read())
response_text = model_response["generation"]
print(response_text)
这段代码从响应体中读取JSON数据,提取生成的文本,并将其打印出来。
模型的回复被处理了
响应正文被读取并解析为 JSON。
**响应文本**
: 获取模型生成的回复,即对提示的响应。
最后,它输出回复。
最后的剧本:
# 使用Converse API(对话API)向Llama 2 Chat 70B发送一条文本消息。
import boto3
from botocore.exceptions import ClientError
import json
# 在您希望使用的AWS区域中创建Bedrock运行时客户端。
client = boto3.client("bedrock-runtime", region_name="us-west-2", aws_access_key_id="YOUR_ACCESS_KEY", aws_secret_access_key="YOUR_SECRET_ACCESS_KEY")
# 设置模型ID,例如Meta Llama 3.1。
model_id = "meta.llama3-1-8b-instruct-v1:0"
# 用用户的消息开始对话。
prompt = "我去市场买了10个苹果。我给了朋友2个苹果,又给了助手2个。然后我买了5个更多的苹果,并吃了一个。我最后剩下多少个苹果?让我们一步一步来分析。"
# 将提示嵌入到Llama 3的指令格式中。
formatted_prompt = f"""
<|begin_of_text|>
<|start_header_id|>user<|end_header_id|>
{prompt}
<|eot_id|>
<|start_header_id|>助手<|end_header_id|>
"""
native_request = {
"prompt": formatted_prompt,
"max_gen_len": 512,
"temperature": 0.5
}
# 将原生请求转换为JSON格式。
request = json.dumps(native_request)
try:
# 使用请求调用模型。
response = client.invoke_model(
modelId=model_id,
body=request,
contentType="application/json"
)
# 解码响应正文。
model_response = json.loads(response["body"].read())
response_text = model_response["generation"]
print(response_text)
except (ClientError, Exception) as e:
print(f"ERROR: 无法调用'{model_id}'。原因:{e}")
结果如下:
收尾了就这样!你刚刚已经学会了如何使用 AWS Bedrock 访问并和 Meta 的 Llama 3.1 进行互动。我们一步一步地教你如何设置环境,连接到 AWS Bedrock,并与这个最先进语言模型之一进行了一点对话。现在不妨试一试,看看 Llama 3.1 能为你做些什么吧?
需要关于AI的建议吗?来我们的网站www.woyera.com,我们会帮您和您的业务解决所有问题。
可以在这里看看我们的视频哦。
共同学习,写下你的评论
评论加载中...
作者其他优质文章