Prhub

sgl-project/sglang · 标签视图

标签列表

聚合结果

rust-server 相关 PR

2026-09-16
功能 重要性 8.75 洞察度 6.00

为 Router 新增优雅关闭排空配置面与启动校验、告警

值得精读,但**只推荐给关心 router 部署形态与滚动升级语义的人**(k8s / 平台 / Router owner);对模型、内核方向的工程师,读执行摘要即可,因为本 PR 没有任何运行期行为变化。精读时建议关注四个设计决策:① `shutdown_drain_advisory` 的 `>=` 边界与 `grace_declared` 字段(前者决定「drain 正好等于 grace」是否告警,后者决定同一告警是否能被日志聚合去重);② 把秒 → `Duration` 的转换从 `main.rs` 收进 `ServerConfig::shutdown_drain()` 的理由;③ 软 advisory 与硬 `MAX_SHUTDOWN_DRAIN_SECS` 的职责切分,以及它留下的「drain > grace 仍可启动」空隙是否可接受;④ `Default` impl(服务测试)与穷举 `into_config`(约束生产)并存这一对取舍。同时把 #39016 一起拉出来读,才能真正判断这套配置面是否够用。

功能 重要性 8.10 洞察度 6.00

为 DeepSeek-V4.1 补齐 Rust 侧图像预处理、KV 池名与 PD bootstrap 布局字段

值得精读,尤其适合关注多模态预处理实现和 PD 拆分启动期校验的工程师。 推荐关注的设计决策: - `dsv41/mod.rs` 中"先做全量几何校验再计算"的防御式写法,以及用 256 项 bf16 LUT 替代逐像素浮点运算的性能取舍;`par::for_chunks_mut` 按 patch 分块并行是天然无数据竞争的分工方式,值得作为同类 preprocessing 的模板。 - `bootstrap.rs` 把一致性校验放进 `rcu` 闭包并让闭包在 mismatch 时"原样返回",从而既不增加 `registered_count` 也不污染 `prefill_ranks`——这是一个值得学习的"校验失败不留副作用"写法,但要注意并发重跑闭包的语义细节。 - `PoolName` 的双向字符串映射分布在 `unified_tree_core.rs` 与 `python_bindings.rs` 两个文件,属于容易漏改的隐式契约,建议后续补充一个穷举 round trip 的 Rust 单测来锁死。 如果需要跟进,重点看后续 Python 侧 PR 是否与 `dsv41_spec_layout`、`deepseek_v4_c1/c2` 池名以及 `resize_patchify` 的签名严格对齐。

功能 重要性 9.00 洞察度 7.00

路由器按 worker 解析并存储 h2c/HTTP1 转发协议,为 h2c 转发铺路

值得精读。重点关注三点:(1) per-worker 协议 vs fleet-wide 客户端的设计取舍,由 `manager_resolves_protocol_per_worker_no_fleet_lock` 锁定,防止回归;(2) `dials_cleartext` 的 URL 规范化坑——无 scheme 短名被 `url` 解析成 scheme,是极易被复制错的模式;(3) 测试对「默认值假阳性」的防御——`wait_for_protocol` 同时等待 `model_ids` 非空,避免实现从未读取协议也通过断言。作为 h2c 功能的地基 PR,注释密度极高,几乎每条都在解释一个决策边界,适合作为 Rust 服务端工程实践范本。

功能 重要性 9.18 洞察度 6.00

Rust 前端新增外部多模态处理器扩展点

值得精读,尤其是扩展点设计:`MmProcessor` trait 抽象、`ProcessorExtensions` 的不透明字段透传、`validate-before-park` 的防御式结果校验、以及 BF16 以 `u16` 位模式零拷贝过界的做法。关注点建议放在:外部处理器接入文档是否补齐、`multimodal_*` 字段行为变更的兼容性说明、以及 GPU 实测落地前的风险接受度。

2026-09-04

#37967 [Rust] Bound multimodal media ingress

原始 PR · 作者 merrymercy · 合并时间 2026-09-04 20:22

功能 重要性 9.18 洞察度 8.00

为 Rust 多模态入站添加统一请求预算和本地文件特殊处理。

这是一个精心设计且重要的改进,值得精读。其核心亮点在于:1) 在入口层建立了与 Python 一致的、跨模态的聚合资源预算;2) 通过区分本地文件和远程 I/O 实施差异化的安全策略(本地文件共享整体预算但绕过单源上限,远程 I/O 双重限制);3) base64 解码的“先预留、后协调”模式确保了内存安全。建议关注 `MAX_REQUEST_BYTES` 提升后的实际内存占用。

2026-08-18
功能 重要性 8.15 洞察度 6.00

Rust /generate 增加 e2e_latency 元数据,修 Sarashina 导入

值得精读 `rust/sglang-server/src/api_server/native_api.rs`,重点看 `RequestTiming` 的设计——把 API 层计时与 scheduler 内部消息解耦,并利用 `join_all` 在保持顺序的同时并发观察终端输出。这个模式对后续 Rust server 增加 TTFT、ITL 等指标有直接参考价值。建议后续补充针对 `e2e_latency` 的端到端测试,覆盖 unary、batch、流式终止帧三种形态。

2026-08-13
重构 重要性 8.62 洞察度 5.00

Rust API 错误响应抽成共享 helper,原生与 OpenAI 路径统一

值得快速精读。核心价值不在功能而在边界划分:payload 形状(协议自有)与响应塑造(通用逻辑)分离,以及用薄包装避免调用点重复参数。对要在 Rust 前端新增 endpoint 或修改错误契约的开发者是必读参考。sherlockwu 的唯一一条评论直接决定了最终 API 形态,是'共享 helper + 薄包装'的经典落地案例。