Introducing Reflection Beam: an open-weight model for agentic coding on AWS

TL;DR · AI 摘要
Introducing Reflection Beam: an open-weight model for agentic coding on AWS Artificial Intelligence Introducing Reflecti...
核心要点
- 主题聚焦:Introducing Reflection Beam: an open-weight mode
- 来源:AWS Machine Learning Blog,建议结合原文判断细节。
- AI 分析暂不可用,本条为保底评分与摘要。
介绍 Reflection Beam:用于 AWS 上智能编码的开源权重模型 | 人工智能
介绍 Reflection Beam:用于 AWS 上智能编码的开源权重模型
Reflection AI 推出了 Beam,这是一个用于智能编码和长周期任务(如代码维护、工具使用、结果解释以及多步骤工作流完成)的开源权重模型。开源权重的发布使开发人员和研究人员能够控制运行时、部署环境和定制过程。
在本文中,我们将解释 Reflection 的愿景,并展示如何在 AWS 上部署 Beam。首先可以通过 Amazon SageMaker JumpStart 的实时端点实现全托管路径。当需要对分布式 GPU 基础设施进行 Kubernetes 原生控制时,可使用 Amazon SageMaker HyperPod 推理配合 JumpStart、SGLang 或 vLLM。我们还解释了 Beam 的 5010 亿个总参数如何影响检查点存储、权重内存、分片和并行性,而其 230 亿个活跃参数则影响每个 token 的计算。
发布时,Beam 可在 Amazon SageMaker JumpStart 的美国东部(弗吉尼亚北部)和美国东部(俄亥俄)区域使用。
Reflection 的开放智能愿景
Reflection 的使命是通过开放模型权重、发表的研究和开源软件,使智能对所有人开放且易于获取。其完整的 AI 堆栈涵盖模型、核心软件、生产基础设施和应用。Beam 将这一方法带给构建软件工程和智能系统开发人员。
关于 Reflection Beam
Beam 是一种稀疏专家混合模型,用于解决软件问题、修改代码、调用工具并处理中间结果。它拥有 5010 亿个总参数和 230 亿个活跃参数,Reflection 报告其有效上下文长度为 100 万个 token。
Reflection 通过 Hugging Face 在 Apache 2.0 许可证下发布 Beam 的权重。Beam 1.0 提供 BF16、FP8 和 NVFP4 检查点版本。这些格式提供不同的内存占用和硬件兼容性。您可以使用 AWS 管理的 JumpStart 容器配置部署模型,或在 AWS 环境中使用 SGLang 或 vLLM 检查并自定义模型。
了解部署架构
选择符合您控制和扩展需求的服务路径。
- 当您希望在不操作 Kubernetes 的情况下使用 AWS 管理的模型包、端点和调用 API 时,从 SageMaker JumpStart 实时端点开始。
- 当您希望在由 Amazon Elastic Kubernetes Service(Amazon EKS)管理的 HyperPod 集群上使用 AWS 管理的容器和模型配置时,使用 HyperPod 推理上的 JumpStart。
- 当您需要控制服务镜像、运行时参数、量化或分布式执行时,使用 HyperPod 推理上的 SGLang 或 vLLM。
- 根据检查点存储、权重内存、KV 缓存、上下文长度、批处理、运行时开销和支持的并行性来调整部署规模。
- 定义预期的并发性和延迟目标,然后根据测量的工作负载行为配置副本、缓存、路由和自动扩展。
JumpStart 实时路径通过托管部署工作流将模型、容器和端点打包。HyperPod 路径暴露集群和服务运行时,使您能够控制分布式执行、缓存、路由和扩展。
以下图表展示了HyperPod路径使用的组件。Beam可通过SageMaker JumpStart、Hugging Face Hub或可选的Amazon Simple Storage Service(Amazon S3)镜像获取。分布式工作节点使用AWS托管的JumpStart容器或自定义的SGLang或vLLM运行时。
图1:与Amazon SageMaker HyperPod推理集成的分布式Beam部署
前提条件
您需要:
- 具备权限的AWS账户,可访问所选SageMaker部署路径及其支持的AWS Identity and Access Management(IAM)、网络和存储资源。
- 通过SageMaker JumpStart或Hugging Face上的Beam 1.0检查点仓库之一访问Beam。
- 接受模型条款、AWS Command Line Interface(AWS CLI)以及Python 3.11或更高版本。
- 支持Beam配置的GPU配额和容量。
规划并获取GPU容量
Beam总计5010亿参数需要多GPU部署。BF16具有最大的权重内存需求,因此需要规划足够聚合GPU内存的多节点配置以满足权重和运行时开销。对于FP8,使用搭载NVIDIA H100 GPU的ml.p5.48xlarge实例,或搭载H200 GPU的ml.p5e.48xlarge和ml.p5en.48xlarge实例。对于NVFP4,使用搭载NVIDIA B200 GPU的ml.p6-b200.48xlarge实例。确认已发布的检查点、运行时和并行布局支持所选实例类型。
- 计算单个副本的权重、KV缓存和运行时开销所需的内存,然后通过负载测试验证估算值。
- 选择支持所需加速实例的AWS区域。
- 检查所选实例类型的服务配额和可用容量。优先使用按需容量,若不可用则使用SageMaker训练计划作为短期预留用于计划性工作。
- 预留时间用于镜像传输、权重下载、分片加载和运行时初始化。
路径1:通过SageMaker JumpStart实时端点入门
当您希望从模型目录到托管HTTPS端点的最短路径时,优先使用JumpStart实时端点。该示例通过一个变体感知命令支持BF16、FP8和NVFP4模型ID。其README和Python文件是支持实例类型、请求模式、部署命令和清理命令的权威来源。
- 克隆示例仓库。
git clone https://github.com/aws-samples/sagemaker-genai-hosting-examples.git
- 进入SageMaker JumpStart部署示例目录。
cd sagemaker-genai-hosting-examples/01-models/ReflectionAI/Beam-1.0-501B-A23B-NVFP4/
- 创建并激活Python虚拟环境。
python3 -m venv .venv source .venv/bin/activate
- 安装示例依赖项。
python -m pip install -r requirements.txt
- 运行FP8的有界部署、调用和清理生命周期。
python jumpstart_real_time.py \ --variant fp8 \ --endpoint-name reflection-beam-fp8-smoke该命令部署FP8端点,发送简短请求,打印响应并清理端点。使用bf16或nvfp4可选择其他检查点变体;若省略--variant参数,默认使用NVFP4。需要保持端点运行时,请使用README中的Python函数。
使用 HyperPod 推理服务可实现对分布式 GPU 基础设施的原生 Kubernetes 控制。您可以使用 AWS 托管的 JumpStart 容器配置,或部署带有 SGLang 或 vLLM 的 Beam。HyperPod 推理服务部署示例的 README 文件及其配置文件是已发布清单、模型和镜像标识符、支持的运行时版本以及命令的权威来源。
开始之前,请使用 HyperPod 推理服务操作符和必要的附加组件,配置对 EKS 管理的 HyperPod 集群的 kubectl 访问权限。您还需要集群的虚拟私有云(VPC)、子网、安全组、所选 Beam 和运行时工件的访问权限,以及在启用模型缓存时本地 NVMe 存储容量。如果所选仓库需要身份验证,请使用隔离的 Hugging Face 访问令牌。
为开发和实验,从 Hugging Face Hub 部署固定版本的 Beam。对于生产部署和模型缓存,请将检查点复制到 Amazon S3 或 Amazon FSx。HyperPod 模型和镜像缓存可将权重预加载到节点本地的 NVMe 存储,并预拉取服务镜像。
HyperPod 推理网关提供与 OpenAI 兼容的接口,并在副本之间路由请求。HyperPod 推理服务还支持托管分层 KV 缓存和智能路由。这些功能属于 Amazon SageMaker 推理服务在 2026 年引入的能力。
下图扩展了模型准备和运行时请求流程。当启用模型缓存时,推理操作符会使用所选权重和服务镜像预热符合条件的节点。在运行时,推理网关和端点选择器可以将每个请求路由到合适的 JumpStart 管理、SGLang 或 vLLM 副本。
图 2:HyperPod 模型缓存和请求路由
准备部署工件
使用不可变输入以确保能够复现部署和性能结果。
- 使用部署示例中记录的 JumpStart 模型版本。
- 为自定义运行时选择 BF16、FP8 或 NVFP4 检查点。
- 对于自定义运行时,在示例发布配置中保留公共 Beam 提交 SHA 和镜像摘要。
- 仅当集群无法拉取上游镜像或组织要求使用批准的注册表时,才将发布的镜像镜像到私有 Amazon Elastic Container Registry(Amazon ECR)仓库。
- 将令牌、生成的密钥、私有模型 ID、注册表凭证和未发布的成果保留在仓库之外。
选择服务路径
除非工作负载需要特定的推理运行时或配置,否则从 SageMaker JumpStart 开始。
| 服务路径 | 使用场景 | 您需要管理的内容 | |--------|--------|--------| | SageMaker JumpStart | 您希望使用 AWS 管理的容器和模型配置,减少运行时维护工作。 | 选择 Beam 模型版本、支持的实例类型、端点配置和扩展策略。 | | SGLang 或 vLLM | 您需要特定的推理运行时或配置,例如自定义运行时参数、解析器、量化或并行性。 | 固定支持的运行时镜像、模型版本、解析器配置和分布式执行设置。 |
使用 SageMaker JumpStart 部署
SageMaker JumpStart 可减少容器集成工作,而 HyperPod 保留对集群容量、扩展和可观测性的控制。
- 在 SageMaker Studio 中打开 JumpStart 模型目录。
- 在“所有公开模型”下选择 Beam。
- 选择 SageMaker HyperPod 作为部署目标。
- 选择集群和 Kubernetes 命名空间。
- 输入一个端点名称,并选择部署。
- 在使用已发布的 JumpStart 请求模式调用端点之前,请确认部署状态。
对于基础设施即代码的工作流程,请使用 HyperPod 示例中的已发布 JumpStart 配置。在配置部署之前,可以检查 reflection-beam-jumpstart.yaml 清单模板。
- 克隆示例仓库,并进入 HyperPod Beam 目录。 git clone https://github.com/aws-samples/sagemaker-genai-hosting-examples.git cd sagemaker-genai-hosting-examples/SageMakerHyperpod/reflection-beam/
- 创建 README 中描述的本地配置文件。 cp config/deployment.env.example config/deployment.env cp config/release.env.example config/release.env
- 在更改集群之前验证 JumpStart 配置。 python hyperpod_tool.py \ --config config/deployment.env \ --config config/release.env \ validate jumpstart
- 部署 JumpStart 配置。 python hyperpod_tool.py \ --config config/deployment.env \ --config config/release.env \ deploy jumpstart \ --timeout-seconds 1800
该工具会渲染并应用已发布的 JumpStartModel 资源,而不会将填充的发布值写入磁盘。
使用 SGLang 或 vLLM 部署
当需要直接控制服务运行时,请选择 SGLang 或 vLLM。在配置部署之前,请检查 reflection-beam-sglang.yaml 清单模板或 reflection-beam-vllm.yaml 清单模板。示例 README 仍是已发布值和命令的权威来源。
- 进入 HyperPod Beam 目录。 cd sagemaker-genai-hosting-examples/SageMakerHyperpod/reflection-beam/
- 在更改集群之前验证所选配置。 python hyperpod_tool.py \ --config config/deployment.env \ --config config/release.env \ validate sglang
- 部署 Beam 并等待终端部署状态。 python hyperpod_tool.py \ --config config/deployment.env \ --config config/release.env \ deploy sglang \ --timeout-seconds 1800 将 sglang 替换为 vllm 以使用 vLLM。该工具会验证所选设置,应用渲染后的清单而不会将发布值写入磁盘,使用固定超时等待,并在部署失败时打印诊断信息。
调用 Beam
使用已发布的模型请求模式调用 JumpStart 端点。对于 SGLang 或 vLLM,请使用 HyperPod 示例中包含的有界烟雾测试。
调用已部署的端点
- 安装示例客户端依赖项。 python3 -m venv .venv source .venv/bin/activate python -m pip install -r requirements.txt
- 使用推荐的初始采样设置运行私有健康检查和简短请求。 python hyperpod_tool.py \ --config config/deployment.env \ smoke sglang \ --prompt "List three checks for a healthy model deployment." \ --temperature 1.0 \ --top-p 0.7 将 sglang 替换为 vllm 以使用 vLLM 部署。该工具会选择一个就绪的工作者,打开临时端口转发,检查端点健康状况,发送请求,然后关闭端口转发。
响应类似于以下内容:
1. 确认端点报告就绪。
2. 发送一个简短的推理请求。
3. 检查服务日志中的启动错误。对于经过身份验证的推理网关,请使用 HyperPod 示例 README 中的 bearer-token 流程。请勿将凭证包含在源代码、清单和命令历史中。
测量和调整性能
- 以预期的并发量对每个服务路径进行重复性、具有代表性的编码和工具使用请求测试。
- 记录 Beam 模型版本、镜像摘要、实例类型、精度、上下文长度、并行度、服务参数、缓存状态和测试重复次数。
- 测量请求成功率、p50 和 p95 首 token 延迟、每输出 token 延迟、端到端延迟以及每秒聚合输出 token 数。
- 根据这些结果调整批处理大小、KV 缓存分配、副本数量、自动扩展以及模型和镜像缓存策略。
- 在更改精度或量化设置后重新验证输出质量。
清理资源
完成测试后删除资源以避免持续计费。
- 对于 SageMaker JumpStart 实时端点,请遵循 SageMaker JumpStart 部署示例 README 中的清理说明。
- 对于 Amazon SageMaker HyperPod 推理上的 JumpStart、SGLang 或 vLLM,请遵循 HyperPod 推理部署示例 README 中的清理说明。
- 删除专为本教程创建的专用 HyperPod 或 Amazon EKS 集群。
- 删除未使用的缓存权重、镜像制品、负载均衡器、日志组、临时 IAM 角色和捕获的推理数据。
结论
Reflection Beam 为开发者提供了专为智能体编码和多步骤任务设计的开源权重模型。建议从 SageMaker JumpStart 实时端点开始,使用全托管部署方案。如需 Kubernetes 原生基础设施控制且无需管理服务容器,可结合 SageMaker HyperPod 推理与 JumpStart;如需自定义运行时,则可选择 SGLang 或 vLLM。
使用 SageMaker JumpStart 部署示例或 HyperPod 推理部署示例,然后按照说明操作。
欲了解 Reflection AI 及其开放智能愿景,请访问 Reflection AI 官网并阅读《Introducing Beam》。
资源
- Reflection Beam 检查点变体:BF16、FP8 和 NVFP4
- SageMaker JumpStart 部署示例
- 包含 JumpStart、vLLM 和 SGLang 的 HyperPod 推理部署示例
- 从 SageMaker JumpStart 部署基础模型到 HyperPod 推理
- Amazon SageMaker 推理 2026 年度至今发布内容回顾
作者简介
'"`