Anyscale 是托管 Ray 的 AI 推理与计算平台,由 Ray 开源框架背后的商业团队推出。它解决的核心问题是:生产环境中的 LLM/机器学习推理需要 GPU 集群、自动伸缩、故障恢复与监控,而自建这些基础设施通常要投入 Kubernetes 运维、GPU 驱动管理、Prometheus 监控与容量规划等大量工程资源。Anyscale 将 Ray 的分布式调度能力与云资源编排打包成 SaaS,用户通过声明式配置即可获得从 0 到任意副本数的弹性推理服务,并按实际用量计费。 产品线覆盖三种模式:Anyscale Services 面向长期运行的在线推理服务,基于 Ray Serve 实现声明式自动伸缩;Anyscale Endpoints 提供 OpenAI 兼容的无服务器模型 API,按请求量付费,无需管理任何集群;Anyscale Clusters 则面向训练与批处理任务。本文先给出工具速览与安装配置,再通过最小实例演示从部署到调用的完整流程,随后剖析自动伸缩、无服务器端点、多模型弹性与可观测性四大支柱,最后补充生产部署建议、同类平台对比、常见误区与面试题,帮助你判断 Anyscale 是否适合你的推理负载。

岗位关联

一句话掌握价值:学会 Anyscale 的弹性推理能力,意味着你能用声明式配置在成本、延迟与并发之间做精细平衡——这是 LLM 团队从原型走向规模化生产的必备技能。

目录
  1. 为什么需要 Anyscale:从自建 GPU 集群到声明式弹性伸缩
  2. 安装与环境配置:5 步就绪
  3. 快速上手:15 分钟跑通第一个弹性推理服务
  4. 核心能力详解:4 大支柱
  5. 生产部署与监控:从上线到运维
  6. 版本迭代
  7. AI 应用场景
  8. 常见误区
  9. 面试题
工具类型
AI 推理与 Ray 托管平台(SaaS + 开源内核)
开发商
Anyscale, Inc.(美国旧金山)
开源协议
内核 Ray 为 Apache 2.0;平台为商业 SaaS
GitHub Stars
无
主要语言
Python
当前版本
Ray 2.40(2025-08);平台为滚动发布
安装方式
pip install anyscale;pip install ray[serve]
官方文档
上手难度
★★★☆☆(中等)
适合人群
LLM/ML 工程师、推理平台团队、SRE
同类工具
Modal、Baseten、RunPod、Replicate、KServe
托管服务
无

速览卡是工具类内容的固定首屏模块:30 秒判断「这工具是什么、能不能商用、适不适合我」。

为什么需要 Anyscale:从自建 GPU 集群到声明式弹性伸缩

自建推理服务的成本往往被低估。团队需要预先规划 GPU 实例配额,在大促或新功能上线前提前扩容;流量回落后,闲置 GPU 仍在持续计费。为了应对流量波动,通常要搭建 Kubernetes 集群、HPA(基于资源的水平自动伸缩器)或 KEDA(基于事件的伸缩器),同时处理 GPU 驱动、节点池、污点容忍与容器镜像管理。即使集群跑起来了,推理流量与 CPU 利用率之间并非线性关系——一个 token 生成请求可能让 GPU 利用率很低但排队很长,基于资源利用率的伸缩策略会误判。故障恢复同样棘手:节点宕机后 Pending 的 Pod 需要人工介入,模型冷启动加载数分钟还会触发超时。

Anyscale 的解法是把这些负担从基础设施层转移到应用层。它基于 Ray Serve 的声明式自动伸缩,通过 autoscaling_config 定义最小副本数、最大副本数与每个副本的期望并发请求数;平台会按实际排队深度动态增减副本,支持缩到 0。用户可以指定 GPU 型号(如 A10G、L4、H100),平台负责在所选云区域中预配实例、注入模型运行时、健康检查与失败重启。计算资源通过自带云(BYOC)模式落在你自己的云账户中,成本透明,但省去了集群弹性的全部工程投入。

与 Modal、Baseten 等同赛道工具相比,Anyscale 的气质更接近“带托管层的分布式计算框架”而非“纯无服务器容器运行器”。它保留了 Ray Data(分布式数据处理)与 Ray Train(分布式训练)的生态,推理服务可以复用同一套 Ray 集群与调度语义,在已在用 Ray 的团队中迁移成本最低。它的学习曲线也相应更高——需要理解副本、资源声明、runtime_env(运行时环境)这些概念,但这换来了对伸缩行为与基础设施粒度更精细的控制。

安装与环境配置:5 步就绪

完成以下步骤即可在本机安装 Anyscale CLI 并连接到云端平台。

步骤一:注册平台账号。 访问 [console.anyscale.com](https://console.anyscale.com) 注册账户,新账户自带试用额度,可在沙箱环境体验,无需立即绑定云账户。

步骤二:获取 API 令牌。 在控制台进入 Settings → API Keys,点击生成令牌并复制。令牌是 CLI 登录的唯一凭证,妥善保管,不要提交到代码仓库。

步骤三:安装 Anyscale CLI。 通过 pip 安装,要求 Python 3.9 及以上版本。同时安装开源 Ray 的 Serve 组件,以便本地编写与调试服务代码。

步骤四:CLI 登录。 运行 anyscale login --token 并粘贴令牌。凭证将保存在 ~/.anyscale/anyscale.yaml,后续命令自动携带,无需重复登录。

步骤五:连接云账号。 在控制台的 Clouds 页面添加 AWS 或 Google Cloud 凭据,Anyscale 将使用你的凭据在指定区域预配 EC2/GCE 计算资源(包括 GPU 实例)。若仅体验功能,可暂时跳过,使用平台自带的沙箱资源。

验证环境是否就绪,运行以下命令应能看到 CLI 版本号与项目列表:

bash10 行
# 安装 CLI 与本地 Ray Serve 依赖pip install anyscalepip install "ray[serve]" # 登录(令牌在控制台 Settings → API Keys 获取)anyscale login --token <你的令牌> # 验证anyscale --versionanyscale status

快速上手:15 分钟跑通第一个弹性推理服务

最小可用流程的核心思路:在本地用 Ray Serve 定义推理服务,配置自动伸缩参数,然后通过 Anyscale CLI 部署到云端,最后用 curl 请求外部端点验证弹性效果。

步骤一:创建项目目录并初始化。 在本地新建目录,将代码纳入 Git 版本管理。Anyscale 以项目为单位组织代码、计算环境与部署,云端构建时拉取仓库中代码。

步骤二:编写服务定义文件 deploy.py。 用 @serve.deployment 装饰器声明一个推理服务,autoscaling_config 指定最小 0 副本、最大 4 副本,每个副本最多同时处理 8 个请求。这里选择 TinyLlama 作为演示模型,部署后空闲自动缩到 0,有请求时自动拉起。

步骤三:配置服务环境 serve.yaml。 指定服务名、入口路径与运行时依赖。Anyscale 会在云端安装这些依赖并构建镜像。

步骤四:部署服务。 在项目根目录运行 anyscale deploy -f serve.yaml,等待服务状态变为 RUNNING。期间可在控制台的 Services 页面查看日志与副本状态。

步骤五:调用服务。 服务就绪后,通过 anyscale services list 获取外部端点,随后用 curl 发送 POST 请求,传入 prompt 参数。首次请求可能因冷启动耗时数秒,后续请求延迟回到正常水平。

完整代码示例:

进阶技巧:将 min_replicas 改为 1 可保证常驻实例、消除冷启动延迟;把模型文件预下载到自定义镜像中可显著加快副本拉起速度。生产环境建议在 CI 中执行 anyscale deploy,实现代码合并即发布。

python26 行
# deploy.py —— Ray Serve 最小推理服务from ray import servefrom transformers import pipeline @serve.deployment(    autoscaling_config={        "min_replicas": 0,        "max_replicas": 4,        "target_num_ongoing_requests_per_replica": 8,    },    ray_actor_options={"num_gpus": 1},)class LLM:    def __init__(self):        self.pipe = pipeline(            "text-generation",            model="TinyLlama/TinyLlama-1.1B-Chat-v1.0",            device=0,        )     async def __call__(self, request):        data = await request.json()        out = self.pipe(data["prompt"], max_new_tokens=64)        return {"response": out[0]["generated_text"]} app = LLM.bind()
yaml8 行
# serve.yaml —— 部署配置name: tiny-llm-demoimport_path: deploy:appruntime_env:  pip:    - transformers    - torch    - accelerate
bash8 行
# 部署与验证anyscale deploy -f serve.yamlanyscale services list # 用服务端点发起请求(端点地址在上一条命令输出中)curl -X POST https://<service-endpoint>/ \  -H 'Content-Type: application/json' \  -d '{"prompt": "世界上最高的山峰是"}'

核心能力详解:4 大支柱

支柱一:声明式自动伸缩。 Ray Serve 的自动伸缩是 Anyscale 弹性推理的核心机制。它不依赖 CPU/GPU 利用率,而是基于 target_num_ongoing_requests_per_replica(每个副本正在处理与排队中的请求总数)计算所需副本数:当实际值持续超过目标,系统增加副本;持续低于目标,则缩减副本。伸缩方向与幅度由 upscale_delay_s(扩容触发等待时间)和 downscale_delay_s(缩容等待时间)平滑控制,避免流量抖动带来副本震荡。该机制天然适配 LLM 推理的长请求、高并发特性——GPU 利用率低但排队严重的场景也能准确扩容。

支柱二:无服务器 LLM 端点。 Anyscale Endpoints 提供完全托管的无服务器推理:从模型目录中选择开源模型(包括 Llama、Mistral、DeepSeek 系列等)创建端点,即可获得 OpenAI 兼容的 /v1/chat/completions API。平台自动处理冷启动、并发扩容与故障转移,按生成的 token 数量计费,闲置时零成本。它适合把开源模型当作“API 服务”消费的团队,无需理解 Ray、副本或集群概念,也无需提供云账户凭据。

支柱三:多模型与异构硬件编排。 Ray 的调度器将每个副本(actor)绑定到具体资源声明上:通过 ray_actor_options={"num_gpus": 1} 指定 GPU 需求,也可以声明内存、CPU 与自定义资源标签。同一个服务内可以混合声明 GPU 与 CPU 副本,例如 GPU 副本跑生成模型、CPU 副本跑检索或后处理逻辑。runtime_env 支持按服务或按副本注入不同 Python 依赖,使多模型共存时的依赖冲突最小化。

支柱四:可观测性与故障恢复。 Anyscale 为部署的服务提供内置健康检查:副本持续无响应时自动重启,实例级故障由平台重新调度到新节点。控制台提供吞吐量、P50/P95/P99 延迟、副本数量与资源利用率的指标视图,指标可通过 API 导出用于自定义告警。配合 Ray 的分布式日志系统,可以在一个界面中检索跨副本的请求链路,定位慢请求与异常堆栈。跨可用区部署策略则进一步提升容灾能力。

生产部署与监控:从上线到运维

部署方式一:Anyscale Services。 面向有稳定流量的在线推理。以 Git 仓库为单一事实来源,CI 中执行 anyscale deploy 完成滚动更新,旧的副本按顺序下线,实现零停机发布。生产环境建议将 min_replicas 设为大于等于 1,并配合健康检查路径(/healthy)让平台准确判断副本就绪状态。通过配置项启用跨可用区分配,增强单可用区故障时的可用性。

部署方式二:Anyscale Endpoints。 面向低频、突发或不规律调用。不需要提供云凭据,使用时按 token 付费。适合产品原型、内部工具、定时任务等场景;若流量已经稳定且量大,应迁移到 Services 以降低单位成本。Endpoints 的冷启动时间受模型体积影响,数亿参数模型首次请求可能等待数秒,对延迟敏感且流量高的业务不适用。

可观测性配置。 在控制台 Metrics 页面监控 QPS、延迟与副本数,设置基于 P95 延迟的告警规则;将指标导出接入 Prometheus/Grafana,复用已有的告警渠道。日志方面,所有 stdout/stderr 自动汇聚到平台日志中心,可按服务名与时间范围检索。发布前务必在预发环境观察一次完整的扩缩容周期,确认伸缩参数与业务流量匹配,避免上线后才发现扩容滞后或缩容过快。

<p class="para-label">避坑清单:</p>

<ul class="dash-list"><li>不要用 GPU 利用率作为伸缩依据:LLM 推理中排队比利用率更能反映瓶颈,只配置 target_num_ongoing_requests_per_replica 这个请求队列目标,不要试图用利用率阈值控制副本数。</li><li>min_replicas=0 不等于零延迟:长时间空闲后首个请求要等模型加载,延迟可能达到数秒甚至更久;对延迟敏感的服务保留至少 1 个常驻副本。</li><li>max_replicas 必须设置上限:无限扩展在突发流量下会让账单失控,建议结合历史峰值加 50% 冗余,并同步配置告警。</li><li>模型下载路径要规避:首次启动时从 Hugging Face 拉取权重会拖慢冷启动并可能超时,应提前将模型文件放入自定义镜像或对象存储。</li><li>注意 GPU 实例配额:每个云区域对热门 GPU 实例类型有配额限制,扩容可能因配额不足失败,提前在云控制台申请足够配额。</li></ul>

维度AnyscaleModalBasetenRunPod
定位托管 Ray 的推理与计算平台无服务器 GPU 函数平台面向生产环境的模型服务平台GPU 云基础设施与无服务器推理
编排范式Ray Serve 声明式副本伸缩函数级按需调度容器端点与模型驱动编排Pod 级调度 + HTTP 触发
类型约束基于请求队列伸缩,支持长驻服务以函数为单元,弱状态服务模型为中心,面向稳定 API容器级,面向 GPU 任务
学习曲线中高,需理解 Ray 概念低,装饰器即可快速上手低,控制台可视化配置中,熟悉容器与 GPU 即可
生态集成Ray Data/Train/Tune 全家桶云厂商 API 与事件驱动Triton/TensorRT 加速广泛框架适配与 Custom 镜像
生产部署自带云(BYOC)+ 托管模式托管部署,自带基础设施托管部署,后端调优租用其云资源部署
License内核 Apache 2.0,平台闭源 SaaS闭源 SaaS闭源 SaaS闭源 SaaS
适合谁已在用 Ray 或需统一训练/推理平台快速原型与低运维团队专注模型服务性能的团队成本敏感、需要灵活 GPU 的团队

选型建议:若团队已经在用 Ray 做数据处理或训练,或需要精细控制资源声明与伸缩参数,Anyscale 是迁移成本最低的选择。追求最少代码与最快无服务器体验,选 Modal;对模型服务性能(吞吐、延迟)有极致要求且团队规模小,选 Baseten;需要临时租用大量 GPU 做实验或短时批量任务,RunPod 更灵活且性价比更高。

版本迭代

Anyscale 平台本身为 SaaS 滚动发布,没有独立版本号;其能力演进与底层开源框架 Ray 的版本节奏深度绑定。Ray 从 1.0 的 API 稳定,到 2.0 的全面重写,再到 LLM 时代对 Serve 自动伸缩与推理稳定的持续强化,构成了 Anyscale 弹性推理能力的演进主线。截至训练数据,Ray 仍在按季度节奏发布新版本,下表列出的最新正式版之后可能已有更新版本。

版本时间变化提升
Ray 1.02020-09首个稳定版本Ray Core 与 Serve/Tune/RLlib 进入可用状态,奠定分布式原语
Ray 2.02022-08API 全面重写收窄 API 面、强化稳定性;Serve 支持更细粒度部署配置
Ray 2.92023-12LLM 时代适配引入 ChatCompletion 接口,自动伸缩参数扩展,适配 LLM 工作负载
Ray 2.302025-03LLM 服务栈成熟vLLM 集成优化,自动伸缩震荡抑制改进,可观测性增强
Ray 2.402025-08最新正式版高并发稳定性提升,Serve 生产级部署能力强化
结论

从版本节奏看,Ray 的迭代重心从框架稳定性转向 LLM 生产的工程化——自动伸缩参数更精细、与服务治理相关的特性持续增强。对选型的启示是:无需过度纠结某个小版本的差异,只需锁定 Anyscale 平台在部署时使用的 Ray 稳定版本即可;判断是否升级应基于生产环境实测的伸缩震荡率与冷启动时间,而不是版本号本身。

AI 应用场景

场景一:基于开源 LLM 的无服务器 API

阶段:模型推理 / LLM API 服务

解决的问题:产品希望直接调用 Llama、Mistral、DeepSeek 等开源模型的 API,但不想承担 GPU 集群的容量规划与运维负担。自建集群必须在低峰期持续付费,高峰期又容易容量不足。Anyscale Endpoints 将模型封装为 OpenAI 兼容端点,空闲时零副本、零费用,流量到达后自动扩容,完全按 token 计费。

具体案例:一个内部文档问答工具在工作时间有每小时数百次调用,夜间几乎为零。使用 Anyscale Endpoints 后,夜间成本趋近于零,白天请求高峰自动扩展到足够副本,团队省去了一整套 GPU 集群运维工作。首次调用冷启动约数秒,可接受范围内。

场景二:生产级 RAG 服务的弹性伸缩

阶段:RAG 管道构建 / 在线服务

解决的问题:RAG 系统通常包含检索、重排、生成多个模型链路,流量在工作时间呈明显峰谷。固定副本数不是浪费资源就是响应超时,需要一套能随请求队列自动伸缩、同时保证生成模型常驻 GPU 的部署方案。

具体案例:知识库助手的请求峰值约 50 QPS,低谷不到 5 QPS。将检索服务部署为 CPU 副本、生成模型部署为 GPU 副本,设置 GPU 服务 min_replicas=2、max_replicas=20、目标并发每个副本 8 个请求。高峰自动扩到 20 副本,低谷自动缩到 2 副本,相比固定 8 副本的方案按相同负载折算节省约四成 GPU 成本。

场景三:大规模离线批量推理

阶段:批量推理 / 数据管道

解决的问题:对百万级文档执行摘要、分类或向量化时,单机耗时过长。自建批处理框架需要处理任务分片、失败重试、节点回收与资源复用,工程量不小。Ray Data 天然支持分布式数据切分与弹性调度,失败任务自动重试。

具体案例:对 100 万条商品评论执行情感分类,使用 Ray Data 在 32 个 GPU 上并行推理。通过 Anyscale 一次性拉起临时集群,任务完成后自动释放。相比单 GPU 串行处理,耗时从约两周压缩到一天以内,且无需留下任何常驻资源。

常见误区

误区我以为 Anyscale 就像 OpenAI 一样,所有计算资源、GPU、底层基础设施都由他们托管,我只需要调用 API 就行。

正解只有 Anyscale Endpoints 是完全托管模式。Anyscale Services 采用自带云(BYOC)模式:你需要提供 AWS 或 Google Cloud 凭据,Anyscale 在你的云账户中预配实例,GPU 账单也记在你的云账户下。平台负责编排、伸缩、健康检查与发布,但并不拥有硬件资源。选择 Services 前务必理解这个部署模型,否则会在成本归属与合规审查上踩坑。

为何常见:官网首页强调“运行 Ray 而不管理基础设施”,配合 Endpoints 产品的无服务器体验,容易让新用户误以为整个平台都是全托管模式。

误区Anyscale 的自动伸缩应该和 K8s HPA 一样,根据 CPU 或 GPU 利用率设置阈值来扩缩容。

正解Ray Serve 的自动伸缩以 target_num_ongoing_requests_per_replica 为决策核心——统计每个副本正在处理与排队的请求总数,超过目标则扩容,低于目标则缩容。推理请求的特点决定了资源利用率往往偏低且波动大,用它做伸缩依据既不及时也不准确。正确做法是围绕请求队列长度设定目标并发数,再通过 upscale_delay_s 和 downscale_delay_s 平滑伸缩动作。

为何常见:大多数工程师对弹性伸缩的认知来自 Kubernetes 生态,HPA 基于资源利用率的伸缩模型深入人心,容易形成思维惯性。

误区把 min_replicas 设为 0 最好,没有流量时零成本,有流量时自动扩容,两全其美。

正解缩到零确实省去空闲费用,但代价是冷启动延迟。模型权重需要从存储加载到 GPU,这个过程可能长达数十秒甚至数分钟,取决于模型大小与存储带宽。对实时交互型业务而言,这直接导致首个请求超时。建议的折中是:核心业务保留 1 个常驻副本吸收突发流量,同时让平台在队列积压时快速扩容;只有对延迟不敏感的内部工具或异步任务才使用缩到零。

为何常见:无服务器产品的宣传重点总是“零成本起始”,用户容易忽略冷启动这个隐含代价,首次生产事故往往因此发生。

误区把最大副本数设置成 100 甚至更高,这样无论流量怎么涨都能接住,有备无患。

正解max_replicas 是成本上限与容量上限的双重约束。突发流量来袭时,平台会迅速向 max_replicas 扩容,账单也随之等比增长;若云账号在该区域没有足够 GPU 配额,扩容还会失败。正确做法是参考历史流量峰值的 1.3–1.5 倍设置 max_replicas,同时配置配额预警与费用告警,用 min_replicas 保证基数,用 max_replicas 控制风险。

为何常见:工程师习惯为基础设施预留充足余量,但按用量付费的弹性平台会把这种“安全余量”变成实打实的账单支出。

误区我在本地 `pip install anyscale` 成功,也写了服务代码,那代码应该能直接在 Anyscale 上运行吧?

正解CLI 只是平台的客户端工具,本地不会运行任何分布式任务。代码要运行在云端,必须完成整套部署流程:将代码推送到 Git 仓库、编写 serve.yaml 并指定 import_path 与 runtime_env、在 CI 或本地执行 anyscale deploy。平台会基于你的声明构建镜像、拉取代码并启动副本。本地调试依赖 log 输出与 Serve 的本地模式(serve.run),生产行为以云端为准。

为何常见:工具链的“本地安装成功”容易给人一切就绪的错觉,实际上本地模式与云端部署之间存在镜像构建、网络、凭据等多层差异。

面试题

Q1. Anyscale 平台底层使用的开源分布式计算框架是哪个?

单选题 · easy

  • A.Apache Spark
  • B.Ray 分布式框架← 正确答案
  • C.Dask 调度库
  • D.Kubernetes 集群

答案:B。Anyscale 由 Ray 的创始团队创立,平台将开源分布式计算框架 Ray 封装为托管服务,提供弹性伸缩、集群编排与监控能力。Spark 与 Dask 是其他分布式计算框架,Kubernetes 是容器编排系统,均不是 Anyscale 的底层运行时。

Q2. 使用 Anyscale CLI 登录平台的正确命令是?

单选题 · easy

  • A.anyscale login --token <token>← 正确答案
  • B.anyscale auth --token <token>
  • C.anyscale api --token <token>
  • D.anyscale login --key <token>

答案:A。Anyscale CLI 使用 anyscale login --token 命令,在控制台 Settings → API Keys 生成令牌后完成登录。其他选项均为干扰项,auth、api、--key 都不是 CLI 的实际参数。

Q3. Ray Serve 自动伸缩决策的核心指标是哪个?

单选题 · easy

  • A.target_num_ongoing_requests_per_replica← 正确答案
  • B.max_concurrent_requests
  • C.requests_per_second
  • D.cpu_utilization_threshold

答案:A。target_num_ongoing_requests_per_replica 表示每个副本期望的进行中请求数(包括正在处理与排队),Ray Serve 据此计算目标副本数。它是应用层指标,比 CPU 利用率更贴合推理负载特性。

Q4. 使用 Anyscale Services 进行生产部署时,用户需要具备什么前提?

单选题 · mid

  • A.提供本地 GPU 硬件资源
  • B.连接云账户凭据或使用托管资源← 正确答案
  • C.必须购买 OpenAI API 密钥
  • D.需要自行搭建 Kubernetes 集群

答案:B。Anyscale Services 采用自带云(BYOC)模式,需要用户在平台中绑定 AWS 或 Google Cloud 凭据,平台在用户云账户中预配计算资源;试用阶段可使用平台沙箱资源。它不需要本地 GPU,也不强制使用 OpenAI,更不需要用户自建 K8s。

Q5. 下列哪些描述符合 Anyscale 的弹性推理设计?

多选题 · mid

  • A.服务可缩到零副本以降低空闲成本← 正确答案
  • B.自动伸缩基于请求队列长度而非资源利用率← 正确答案
  • C.Anyscale Endpoints 提供 OpenAI 兼容接口← 正确答案
  • D.所有推理服务必须保持固定副本数量

答案:ABC。Ray Serve 支持通过 autoscaling_config 将 min_replicas 设为 0,空闲时释放全部资源;伸缩决策依赖每个副本的进行中请求数(即请求队列);Endpoints 提供 OpenAI 兼容的 REST API。副本数量是动态调整的,固定副本只在未配置自动伸缩时成立。

Q6. 以下哪个场景最适合使用 Anyscale Endpoints 而非 Anyscale Services?

单选题 · mid

  • A.高频且对延迟极敏感的核心业务
  • B.低频偶发的 LLM 调用,希望按请求计费← 正确答案
  • C.需要长时间保持连接状态的有状态业务
  • D.在自有云 VPC 内运行的隐私敏感推理

答案:B。Endpoints 是完全托管的无服务器推理,按 token 计费,适合低频、突发型调用;高频且延迟敏感的业务需要常驻副本保证响应时间,有状态业务与私有网络部署则依赖 Services 的 BYOC 模式。

Q7. 在 Ray Serve 自动伸缩配置中,哪些参数用于避免副本数在流量波动时震荡?

多选题 · hard

  • A.upscale_delay_s← 正确答案
  • B.downscale_delay_s← 正确答案
  • C.max_replicas
  • D.min_replicas

答案:AB。upscale_delay_s 与 downscale_delay_s 规定了持续超过/低于目标多少秒后才触发扩容/缩容,充当伸缩动作的“消抖窗口”。max_replicas 与 min_replicas 定义副本数量的上下界,不直接控制震荡。

Q8. 服务配置了 min_replicas=0 且长时间处于零副本状态,首个请求到达时最可能发生什么?

单选题 · hard

  • A.请求立即被拒绝并返回错误
  • B.需要等待副本启动,延迟明显高于正常运行← 正确答案
  • C.平台自动降低目标延迟以快速响应
  • D.请求由边缘缓存直接返回结果

答案:B。零副本状态下首个请求会触发扩容,平台需拉起实例、加载模型权重,冷启动耗时可能达到数十秒。它不会拒绝请求,也不会缓存,更无法降低延迟——这正是延迟敏感业务需要设置 min_replicas≥1 的原因。

Q9. 下列哪些属于 Anyscale 平台提供的部署能力?

多选题 · hard

  • A.Anyscale Services 部署长期运行的在线服务← 正确答案
  • B.Anyscale Endpoints 部署无服务器模型 API← 正确答案
  • C.Anyscale Clusters 部署 Ray 集群运行批处理← 正确答案
  • D.直接在本地 Docker 中完成全部云端部署

答案:ABC。Anyscale 提供三种计算形态:Services 对应长期运行服务,Endpoints 对应无服务器模型 API,Clusters 对应训练与批处理集群。本地 Docker 只能用于调试代码,不能替代云端部署流程。

Q10. Ray 开源框架与 Anyscale 商业平台的关系是?

单选题 · easy

  • A.商业平台完全替代了开源项目
  • B.开源框架是商业平台的底层基础内核← 正确答案
  • C.两者在技术路线上互不相关
  • D.开源项目是商业产品后续开源的

答案:B。Anyscale 商业平台是在开源 Ray 之上构建的托管层,提供集群编排、观测与控制台等增值能力;Ray 持续开源并保持 Apache 2.0 协议,商业平台并未替代或剥离开源内核。