亚马逊AWS官方博客
Meta 的 Llama 4 模型现已在 Amazon Bedrock 中可用
Meta 最新的人工智能模型 Llama 4 Scout 17B 和 Llama 4 Maverick 17B 现已作为完全托管的无服务器选项在 Amazon Bedrock 中提供。这些新的基础模型(FM)借助早期融合技术实现了原生多模态功能,您可以在应用程序中利用这些功能进行精确的图像定位和扩展上下文处理。
Llama 4 采用创新的混合专家(MoE)架构,可在优化成本和速度的同时提升推理和图像理解任务的性能。与 Llama 3 相比,这种架构方法使 Llama 4 能够以更低的成本提供更好的性能,并为全球应用程序提供更广泛的语言支持。
这些模型此前已在 Amazon SageMaker JumpStart 上可用,现在,您可以在 Amazon Bedrock 中使用它们,借助企业级的安全性和隐私保护简化生成式人工智能应用程序的构建和扩展流程。
Llama 4 Maverick 17B — 这是一个原生多模态模型,拥有 128 个专家模块和总计 4000 亿个参数。它在图像和文本理解方面表现出色,适用于各种多功能助手和聊天应用程序。该模型支持 100 万个令牌的上下文窗口,让您能够灵活处理长篇文档和复杂输入。
Llama 4 Scout 17B — 这是一个通用的多模态模型,拥有 16 个专家模块、170 亿个活跃参数和总计 1090 亿个参数,性能比之前所有 Llama 模型都更出色。目前,Amazon Bedrock 为 Llama 4 Scout 模型 350 万个令牌的上下文窗口提供支持,并且计划在不久的将来进一步扩展。
Llama 4 模型的应用场景
您可以将 Llama 4 模型的高级功能用于各行各业的各种应用场景:
企业应用程序 — 构建智能代理,使其能够在各种工具和工作流程中进行推理,处理多模态输入,并为商业应用程序提供高质量的回复。
多语言助手 — 创建聊天应用程序,这些应用程序能够理解图像,并以多种语言提供高质量的回复,从而满足全球用户的需求。
代码和文档智能 — 开发应用程序,使其能够理解代码,从文档中提取结构化数据,并对大量文本和代码进行深入分析。
客户支持 — 通过图像分析功能增强支持系统,能够在客户分享屏幕截图或照片时更有效地解决问题。
内容创作 — 生成多种语言的创意内容,并且具备理解和回复视觉输入的能力。
研究 — 构建能够整合和分析多模态数据的研究应用程序,从而提供对文本和图像的见解。
在 Amazon Bedrock 中使用 Llama 4 模型
要在 Amazon Bedrock 中使用这些新的无服务器模型,首先需要请求访问权限。在 Amazon Bedrock 控制台中,从导航窗格中选择模型访问权限来开启对 Llama 4 Maverick 17B 模型和 Llama 4 Scout 17B 模型的访问权限。
使用 Amazon Bedrock Converse API 可以轻松将 Llama 4 模型集成到您的应用程序中,该 API 为对话式人工智能交互提供了统一的接口。
下面的示例展示了如何使用适用于 Python 的 Amazon SDK(Boto3)与 Llama 4 Maverick 模型进行多模态对话:
import boto3
import json
import os
AWS_REGION = "us-west-2"
MODEL_ID = "us.meta.llama4-maverick-17b-instruct-v1:0"
IMAGE_PATH = "image.jpg"
def get_file_extension(filename: str) -> str:
"""Get the file extension."""
extension = os.path.splitext(filename)[1].lower()[1:] or 'txt'
if extension == 'jpg':
extension = 'jpeg'
return extension
def read_file(file_path: str) -> bytes:
"""Read a file in binary mode."""
try:
with open(file_path, 'rb') as file:
return file.read()
except Exception as e:
raise Exception(f"Error reading file {file_path}: {str(e)}")
bedrock_runtime = boto3.client(
service_name="bedrock-runtime",
region_name=AWS_REGION
)
request_body = {
"messages": [
{
"role": "user",
"content": [
{
"text": "What can you tell me about this image?"
},
{
"image": {
"format": get_file_extension(IMAGE_PATH),
"source": {"bytes": read_file(IMAGE_PATH)},
}
},
],
}
]
}
response = bedrock_runtime.converse(
modelId=MODEL_ID,
messages=request_body["messages"]
)
print(response["output"]["message"]["content"][-1]["text"])
此示例展示如何向模型发送文本和图像输入并接收对话式回复。Converse API 可消除处理不同模型输入格式的复杂性,为 Amazon Bedrock 中的各种模型提供一致的接口。
对于更具交互性的应用场景,您还可以使用 Converse API 的流式传输功能:
response_stream = bedrock_runtime.converse_stream(
modelId=MODEL_ID,
messages=request_body['messages']
)
stream = response_stream.get('stream')
if stream:
for event in stream:
if 'messageStart' in event:
print(f"\nRole: {event['messageStart']['role']}")
if 'contentBlockDelta' in event:
print(event['contentBlockDelta']['delta']['text'], end="")
if 'messageStop' in event:
print(f"\nStop reason: {event['messageStop']['stopReason']}")
if 'metadata' in event:
metadata = event['metadata']
if 'usage' in metadata:
print(f"Usage: {json.dumps(metadata['usage'], indent=4)}")
if 'metrics' in metadata:
print(f"Metrics: {json.dumps(metadata['metrics'], indent=4)}")
通过流式传输,您的应用程序可以在模型生成输出时即时显示,从而提供敏捷响应体验。
注意事项
在 AWS 区域美国东部(弗吉尼亚州北部)和美国西部(俄勒冈州),Llama 4 模型现已在 Amazon Bedrock 中可用,以提供完全托管的无服务器服务。 您还可以通过跨区域推理在美国东部(俄亥俄州)访问 Llama 4 模型。
和往常的 Amazon Bedrock 一样,您只需为实际使用的资源付费。有关更多信息,请参阅 Amazon Bedrock 定价。
这些模型支持 12 种文本语言(英语、法语、德语、印地语、意大利语、葡萄牙语、西班牙语、泰语、阿拉伯语、印度尼西亚语、他加禄语和越南语),在处理图像时仅支持英语。
如果您想立即开始使用这些新模型,请访问 Amazon Bedrock 用户指南中的“Meta Llama 模型”部分。您也可以在我们 community.aws 网站的“生成式人工智能”部分了解我们的构建者社区如何在其解决方案中使用 Amazon Bedrock。
— Danilo
*前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您了解行业前沿技术和发展海外业务选择推介该服务。