[Docs] Enable PD disaggregation for DSV4 low-latency recipes (#35224)

This commit is contained in:
Baizhou Zhang
2026-08-17 20:07:27 -07:00
committed by GitHub
parent f44a130c5e
commit 53621818e4
5 changed files with 36 additions and 6 deletions
+10 -4
View File
@@ -909,10 +909,6 @@ export const Playground = ({ config }) => {
"--disaggregation-mode", "--disaggregation-transfer-backend",
"--disaggregation-ib-device", "--disaggregation-bootstrap-port",
]);
const specAlgorithm = (h.findFlagArg(flags, "--speculative-algorithm") || "").toUpperCase();
if ((fc.incompatibleSpeculativeAlgorithms || []).includes(specAlgorithm)) {
return { flags, env };
}
const backends = fc.transferBackends || [];
// A config that omits `modes` has the role on the Deploy panel instead;
// this card then only tunes the transport for whatever role is selected.
@@ -921,6 +917,16 @@ export const Playground = ({ config }) => {
: ((sel && sel.pdMode) || "off");
if (mode === "prefill" || mode === "decode") {
// PD and some speculative algorithms cannot run together. Keep the
// PD card reachable for a speculative base recipe, then make the
// user's explicit PD-role selection win by removing the whole
// speculative flag family before composing the role command.
const specAlgorithm = (h.findFlagArg(
flags, "--speculative-algorithm") || "").toUpperCase();
if ((fc.incompatibleSpeculativeAlgorithms || []).includes(specAlgorithm)) {
flags = flags.filter((flag) =>
!flag.split(/[\s=]/)[0].startsWith("--speculative-"));
}
const backend = value.transferBackend || (backends[0] || {}).id || "mooncake";
const adds = [
`--disaggregation-mode ${mode}`,
@@ -319,7 +319,6 @@ sgl-eval run aime25 \\
// ----- Card 5: "PD Disaggregation" -----
pdDisagg: {
showWhen: (base) => base.specAlgorithm !== "DSPARK",
incompatibleSpeculativeAlgorithms: ["DSPARK"],
modes: [
{ id: "off", label: "Off" },