📢 转载信息
原文作者:Adewale Akinfaderin, Veda Raman, and Wrick Talukdar
如果您在 Amazon Bedrock 上运行 Amazon Nova 1 模型,您可能希望扩展上下文窗口大小、加深推理能力或集成外部工具以进行网络搜索和代码执行。Amazon Nova 2 模型可以解决这些限制,同时提高在推理、代理 AI 和 工具使用基准测试中的性能。
Amazon Nova 2 Lite 在问题识别、解决方案完整性和逻辑连贯性基准测试中均获得更高的分数,同时保持高吞吐量工作负载的快速响应时间。如果您使用 Nova 1 Lite 进行客户支持自动化、文档处理或代理 AI 应用,迁移到 Nova 2 Lite 后,您很可能会看到准确性和吞吐量的显著提升。本文重点介绍迁移到 Nova 2 Lite,该模型已普遍可用并准备好投入生产使用。Nova 2 将上下文窗口扩展到一百万个 token,支持更丰富的上下文学习,并允许一次请求处理更长的文档。您还可以获得扩展推理、内置网络 grounding 和代码解释器。这些功能只需进行最少的代码更改即可增强您的现有应用程序。
在本文中,您将学习如何将 Amazon Bedrock 上的 Nova 1 迁移到 Nova 2。我们涵盖了模型映射、API 更改、使用 Converse API 的代码示例、配置新功能的指南以及用例总结。最后,我们提供了一个迁移清单,帮助您规划和执行过渡。
迁移路径
以下是 Nova 1 模型的推荐迁移路径。对于 Pro 和 Premier 迁移,请启用扩展推理进行评估,以验证工作负载的质量。
- 如果您正在运行 Amazon Nova 1 Lite,迁移路径很简单:Nova 2 Lite 是一个直接升级,保持相同的输入模态(文本、图像和视频),同时增加了扩展推理、内置工具,并将上下文窗口从 300K 扩展到 1M token。
- 如果您正在运行 Amazon Nova 1 Pro,我们建议升级到 Nova 2 Lite。虽然这可能看起来是层级上的变化,但 Nova 2 Lite 以具有竞争力的价格性能提供了改进的推理能力。Nova 2 Lite 中的扩展推理功能,加上其 1M token 上下文窗口,使其能够处理以前需要 Nova 1 Pro 更大模型尺寸的工作负载。
- 如果您正在运行 Amazon Nova Premier,请考虑迁移到 Nova 2 Lite,特别是对于代理和工具使用工作负载。正如《Amazon Nova 2 技术报告》中所记录的那样,Nova 2 Lite 在多步问题解决方面的表现优于 Premier,成本降低了 7 倍,推理速度提高了 5 倍。由于启用扩展推理的 Nova 2 Lite 仍然比 Premier 更便宜、更快,我们建议通过推理努力程度进行评估,以验证它是否满足您的质量要求。
用例和客户案例
自 Nova 2 Lite 在 re:Invent 2025 发布以来,您可以将其用于各种用例。Nova 2 Lite 非常适合驱动需要价格、性能和速度相结合的高吞吐量应用程序。客户在生产环境中部署 Nova 2 Lite 的常见用例包括:
自然语言处理 (NLP) 任务
Nova 2 Lite 可用于各种 NLP 任务,从简单的文本预测到基于逻辑的推荐。Nova 2 模型在摘要、分类和搜索用例方面表现出色。Nova 2 Lite 在 MMLU Pro 上得分为 80.9%,在 IF-Bench 上得分为 70.8%(均高于某些同类模型)。Nova 2 Lite 还专为低延迟而设计,适用于需要快速响应的应用,这在大多数 NLP 任务中很常见。
西门子的全球搜索运行在 Nova 2 Lite 上,与他们之前的语言模型 (LLM) 解决方案相比,搜索速度提高了 300%,成本降低了 70%。完整的案例研究可在AWS 案例研究页面上找到。
智能文档处理 (IDP)
具有推理功能的 Nova 2 模型通过超越基本文本提取,实现对文档的真正语义理解,从而增强 IDP。它们可以处理非结构化和半结构化内容,如合同、发票、表格和报告,并确定信息在上下文中的含义,而不仅仅是它们出现的位置。推理能力使这些模型能够跨越部分、页面和表格链接相关信息,处理布局和语言的变化,并推断缺失或隐含的细节,从而使文档处理更加健壮和可扩展。推理通过以下方式增加价值:(1) 理解上下文。例如,即使合同的开始日期和结束日期都显示为相似的时间戳,也能区分它们。(2) 跨页面链接和推断。例如,将发票行项与总计/税金关联起来,并进行数学检查(即使在文本无法识别时也能填补小空白)。(3) 规范化变化——将“应付金额”、“到期余额”和“总欠款”视为相同的概念。(4) 实现更智能的操作,如验证、异常检测和问答——标记不匹配的税款计算或从相关部分识别自动续订条款。推理将 IDP 转变为更智能、更像人类的系统,能够理解和验证文档,从而实现更准确的自动化、更少的手动审查以及对新本体的更快适应。
多步代理工作流
与 Nova 1 模型相比,Nova 2 Lite 在工具调用能力方面有了显著的改进,特别是当工作流包含多个工具时。总体而言,Nova 2 系列在完成复杂的多步代理工作流方面表现出色,具有高级的工具使用和规划能力。Nova 2 Lite 在 τ2-bench Telecom 中的得分高于同类模型,达到 76.0%。我们建议在启用推理的情况下对多步代理用例进行测试,首先将推理设置为“低”,然后根据需要向上调整。
Nova 2 Lite 使 Trellix 能够继续自动化其安全警报分类任务,并在威胁检测、分析和分类领域更好地赋能安全团队。随着新模型的发布,Trellix 的工具调用能力更加可靠,没有出现故障,威胁分类准确率提高了 39%,技术分析响应的详细程度提高了 3.4 倍。 在此视频中观看 Trellix 的 CTO 解释该解决方案。
AWS Transform 是一个多代理、多用户系统,它使用数十种工具来现代化复杂的基础设施系统和代码库。AWS Transform 将每个用户请求分解为多个代理和工具调用,这些调用被路由到各种模型以平衡成本、速度和准确性。评估表明,Nova 2 Lite 将 AWS Transform 中代码现代化的工具调用效率提高了 60%。
变化之处
Nova 2 系列引入了扩展您构建 AI 应用程序方式的功能,特别是在代理 AI 工作负载方面。
带开发者控件的扩展推理
Nova 2 Lite 可以在响应前推理复杂问题。您可以通过 reasoningConfig 参数控制推理深度,分为低、中或高(low, medium, high)的努力程度。
内置工具和原生网络 grounding 及代码解释器
Nova 2 Lite 专为工具使用而设计,包括对 MCP 服务器和并行工具链的支持。它还包括用于实时信息和引用的内置 网络 grounding,以及用于直接执行 Python 代码的 代码解释器。
用于大规模输入的扩展上下文
上下文窗口从 300K 扩展到 1M token,最大输出 token 从 10K 增加到 65K。通过这些增加,您可以在单个请求中处理更大的文档、代码库和更长的多轮工作流。
下表总结了 Nova 1 模型和 Nova 2 Lite 的技术规格:
| Specification | Nova 1 Lite | Nova 1 Pro | Nova 2 Lite |
| Context Window | 300K | 300K | 1M |
| Max Output Tokens | 10K | 10K | 65K |
| Input Modalities | Text, image, video | Text, image, video | Text, image, video |
| Extended Thinking | No | No | Yes |
| Built-in Tools | No | No | Yes |
| Customization | Yes (incl. Nova Forge) | Yes (incl. Nova Forge) | Yes (incl. Nova Forge) |
性能和定价
Artificial Analysis 的独立基准测试显示,Nova 2 Lite 在同类模型中的智能评分高于平均水平,并且速度非常快,非常适合重视吞吐量的高吞吐量工作负载。在特定于代理的基准测试中,Nova 2 Lite 在工具使用(Tau2 Telecom)方面表现良好。强大的指令遵循对于代理工作负载至关重要,在这些工作负载中,模型必须可靠地执行多步计划。有关详细的基准测试方法和更多结果,请参阅 Amazon Nova 2 技术报告。
Nova 2 系列的定价反映了其扩展的功能,同时在其各自的层级内保持竞争力。
| Model | Input (per 1M tokens) | Output (per 1M tokens) |
| Nova 1 Lite | $0.06 | $0.24 |
| Nova 1 Pro | $0.80 | $3.20 |
| Nova 2 Lite | $0.30 | $2.50 |
对于 Nova 2 Lite,其定价与其同类产品相比具有竞争力。有关完整的公告和更多详细信息,请参阅 Amazon Nova 2 发布博文。
API 更改和代码更新
更新您的模型 ID 以引用 Nova 2 Lite,它可以通过 Global Cross-Region Inference System (CRIS)、US CRIS、EU CRIS 和 JP CRIS 端点访问。从美国区域访问模型时,使用 us. 前缀(例如,us.amazon.nova-2-lite-v1:0);从美国以外地区访问时,使用 global. 前缀(例如,global.amazon.nova-2-lite-v1:0)。底层 API 结构保持一致,因此现有集成将正常工作,只需进行最少的更改,除了模型 ID 和您选择启用的任何新功能。
重大更改:当 maxReasoningEffort 设置为 high 时,您不能使用 maxTokens、temperature、topP 或 topK。包含这些参数和高努力程度推理的请求将返回错误。要解决此问题,请从请求中完全删除 inferenceConfig 块。
新功能和未更改的行为
下表总结了 Nova 1 和 Nova 2 之间的新功能和未更改的行为:
| Category | Change | Details |
| New | Extended thinking | 使用 additionalModelRequestFields 中的 reasoningConfig 启用推理。支持三个努力程度:low、medium 和 high。 |
| New | Responses include reasoning content | 启用推理时,响应将包含 reasoningContent 字段。内容显示为 [REDACTED],但推理 token 会计费。 |
| New | Built-in tools | 无需自定义集成即可使用网络 grounding 和代码解释器。 |
| New | Increased output capacity | 最大输出 token 从 10K 增加到 65,536。 |
| New | Expanded context window | Nova 2 Lite 支持 1M token(而 Nova 1 Lite 为 300K)。 |
| Unchanged | topK parameter location | topK 仍通过 additionalModelRequestFields 传递,而不是 inferenceConfig。 |
| Unchanged | Document support | 文档输入仍仅支持 Converse API(Invoke API 中不支持)。 |
| Unchanged | Timeout configuration | Boto3 的默认读取超时时间为 60 秒,但扩展推理请求最多可能需要 60 分钟。在 SDK 客户端中将 read_timeout 设置为 3600。 |
配置新功能
本节介绍基本的迁移步骤、扩展推理配置以及如何使用内置工具,如网络 grounding 和代码解释器。
基本迁移 – 更新模型 ID
对于不需要扩展推理的应用程序,迁移很简单。更新模型 ID,您现有的代码将可以正常工作:
import boto3
bedrock = boto3.client('bedrock-runtime', region_name='us-east-1')
# Nova 1
# modelId='us.amazon.nova-lite-v1:0'
# Nova 2
response = bedrock.converse(
modelId='us.amazon.nova-2-lite-v1:0',
system=[{'text': 'You are a helpful assistant'}],
messages=[
{
'role': 'user',
'content': [{'text': 'Explain cloud computing in simple terms.'}]
}
],
inferenceConfig={
'maxTokens': 1024,
'temperature': 0.7,
'topP': 0.9
}
)
print(response['output']['message']['content'][0]['text'])
扩展推理
扩展推理允许 Nova 2 模型在生成响应之前推理复杂问题。此功能默认禁用,以优化简单查询的速度和成本。当您的工作负载需要多步推理时,可以通过 reasoningConfig 参数启用它。
配置推理努力程度
Nova 2 Lite 提供三个努力程度,用于控制模型的推理量:
- 低努力程度 (
maxReasoningEffort: "low") 推荐用于具有附加复杂性并受益于结构化思维的任务。使用低努力程度进行代码审查和改进建议、需要考虑多个因素的分析任务,或有益于系统化方法的解决问题场景。低努力程度可以提高复合任务的准确性,而无需深入的多步规划。 我们建议从低努力程度开始,并根据您的具体用例向上调整到更高的努力程度。 - 中等努力程度 (
maxReasoningEffort: "medium") 推荐用于多步任务和编码工作流。使用中等努力程度进行软件开发和调试,此时模型必须理解现有的代码结构;需要跨多个文件协调的代码生成;具有相互依赖性的多步计算;或具有多个约束条件的规划任务。中等努力程度推荐用于协调多个工具并要求模型在顺序操作中保持上下文的代理工作流。 - 高努力程度 (
maxReasoningEffort: "high") 推荐用于 STEM 推理和高级问题解决。使用高努力程度处理高级数学问题和证明、科学分析、复杂系统设计或关键决策场景。使用高努力程度时,请勿包含 maxTokens、temperature、topP 或 topK。
示例 – 中等努力程度推理:
import boto3
bedrock = boto3.client('bedrock-runtime', region_name='us-east-1')
response = bedrock.converse(
modelId='us.amazon.nova-2-lite-v1:0',
system=[{'text': 'You are a helpful assistant'}],
messages=[
{
'role': 'user',
'content': [{'text': 'A bat and a ball cost $1.10 in total. The bat costs $1.00 more than the ball. How much does the ball cost?'}]
}
],
inferenceConfig={
'maxTokens': 10000,
'temperature': 0.7,
'topP': 0.9
},
additionalModelRequestFields={
'reasoningConfig': {
'type': 'enabled',
'maxReasoningEffort': 'medium'
}
}
)
# Extract the response text
content_list = response['output']['message']['content']
text = next((item['text'] for item in content_list if 'text' in item), None)
print(text)
示例 – 高努力程度推理(请注意参数限制):
import boto3
bedrock = boto3.client('bedrock-runtime', region_name='us-east-1')
response = bedrock.converse(
modelId='us.amazon.nova-2-lite-v1:0',
system=[{'text': 'You are a mathematical reasoning assistant'}],
messages=[
{
'role': 'user',
'content': [{'text': 'Prove that the square root of 2 is irrational.'}]
}
],
# Do not include inferenceConfig at all with high effort reasoning
# (no maxTokens, temperature, topP, or topK)
additionalModelRequestFields={
'reasoningConfig': {
'type': 'enabled',
'maxReasoningEffort': 'high'
}
}
)
# Extract the response text
content_list = response['output']['message']['content']
text = next((item['text'] for item in content_list if 'text' in item), None)
print(text)
理解响应结构
启用推理后,响应除了文本响应外,还将包含一个 reasoningContent 字段:
{
"output": {
"message": {
"role": "assistant",
"content": [
{
"reasoningContent": {
"reasoningText": {
"text": "[REDACTED]"
}
}
},
{
"text": "Based on my analysis, here is the recommended architecture..."
}
]
}
},
"stopReason": "end_turn"
}
推理内容当前显示为 [REDACTED]。您仍需为推理 token 付费,因为它们有助于提高输出质量。
成本、延迟和超时配置
扩展推理会同时增加成本和延迟,因为模型在生成最终响应之前会生成额外的推理 token。在复杂任务的准确性值得额外成本时启用推理,对于优先考虑速度的简单查询则禁用它。
import boto3
from botocore.config import Config
bedrock = boto3.client(
'bedrock-runtime',
region_name='us-east-1',
config=Config(
read_timeout=3600 # 60 minutes
)
)
内置工具:网络 grounding 和代码解释器
Nova 2 中的内置系统工具在无需自定义实现的情况下扩展了模型功能。您可以通过 Converse API 中的 toolConfig 参数启用这些工具,Nova 会根据您的提示上下文自动决定何时使用它们。
网络 grounding
要启用网络 grounding,请在您的工具配置中将 nova_grounding 指定为系统工具:
import boto3
from botocore.config import Config
bedrock = boto3.client(
'bedrock-runtime',
region_name='us-east-1',
config=Config(read_timeout=3600)
)
tool_config = {
'tools': [{
'systemTool': {
'name': 'nova_grounding'
}
}]
}
response = bedrock.converse(
modelId='us.amazon.nova-2-lite-v1:0',
messages=[{
'role': 'user',
'content': [{'text': 'What are the latest developments in quantum computing?'}]
}],
toolConfig=tool_config
)
# Extract text with interleaved citations
output_with_citations = ''
content_list = response['output']['message']['content']
for content in content_list:
if 'text' in content:
output_with_citations += content['text']
elif 'citationsContent' in content:
citations = content['citationsContent']['citations']
for citation in citations:
url = citation['location']['web']['url']
output_with_citations += f' [{url}]'
print(output_with_citations)
响应包含 citationsContent 对象,其中包含每个引用的源 URL 和域。您负责保留这些引用并将其显示给最终用户。
网络 grounding 仅在美国 AWS 区域可用,并且需要 BedrockFullAccess 或针对 amazon.nova_grounding 资源的显式 bedrock:InvokeTool 权限。网络 grounding 会产生除标准推理定价之外的额外成本。有关定价详细信息,请参阅 Amazon Bedrock 定价。
代码解释器
代码解释器允许 Nova 在隔离的沙箱环境中执行 Python 代码。此工具专为需要精确计算的数学计算、逻辑运算和迭代算法而设计。要启用代码解释器,请将 nova_code_interpreter 指定为系统工具:
import boto3
bedrock = boto3.client('bedrock-runtime', region_name='us-east-1')
tool_config = {
'tools': [{
'systemTool': {
'name': 'nova_code_interpreter'
}
}]
}
response = bedrock.converse(
modelId='us.amazon.nova-2-lite-v1:0',
messages=[{
'role': 'user',
'content': [{'text': 'Calculate the compound interest on $10,000 at 4.75% annual rate for 7 years, compounded quarterly.'}]
}],
toolConfig=tool_config,
inferenceConfig={'maxTokens': 10000, 'temperature': 0}
)
# Process the response
for block in response['output']['message']['content']:
if 'toolUse' in block:
print(f"Code executed:\n{block['toolUse']['input']['snippet']}\n")
elif 'toolResult' in block:
result = block['toolResult']['content'][0]['json']
print(f"Output: {result['stdOut']}")
elif 'text' in block:
print(f"Answer: {block['text']}")
解释器在沙箱中运行代码,并以包含 stdOut、stdErr、exitCode 和 isError 字段的结构化格式返回结果。
代码解释器在 US East (N. Virginia)、US West (Oregon) 和 Asia Pacific (Tokyo) 区域可用。为确保您的请求路由到支持的区域,请使用 Global CRIS。您必须手动将 InvokeTool 权限添加到您的 身份和访问管理 (IAM) 策略;默认的 Amazon Bedrock 角色不包含此操作。
有关内置工具的详细文档,请参阅 Amazon Nova 文档中的 Web Grounding 和 Tool Use。
框架特定示例
前面的示例使用 Converse...
评论区