> ## Documentation Index
> Fetch the complete documentation index at: https://starforge.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 和 checkpoint 对话

> 训练产物一键起 vLLM 服务，网页聊天与 A/B 对比

训练结束后，用产物起一个 vLLM OpenAI 兼容服务，浏览器里聊天。两个服务可以并排 A/B。只支持 `local` 和 `kuberay`。

## 启动服务

<Tabs>
  <Tab title="CLI">
    ```bash theme={"theme":{"light":"github-light","dark":"github-dark-dimmed"}}
    sf serve start run:<RUN_ID> --gpus 1          # 评训练产物（hf_export）
    sf serve start Qwen/Qwen3.5-9B --gpus 2       # 任意 HF 模型（--gpus 即张量并行度）
    sf serve start /shared/models/my-model        # 共享盘路径

    sf serve ls                    # 我的服务列表（含端点与剩余 TTL）
    sf serve extend <SERVE_ID> --ttl-hours 4      # 续期
    sf serve stop <SERVE_ID>      # 停止释放卡
    ```
  </Tab>

  <Tab title="控制台">
    **Playground** 页（`/playground`）→ 选择模型（训练产物下拉 / HF id 输入）→ 选卡数 → 启动。页面会显示服务状态、剩余 TTL 与续期按钮。
  </Tab>
</Tabs>

<Warning>
  推理服务占用真实 GPU 配额。服务有**闲置 TTL**（默认由服务端配置），到期自动停止释放卡——这是防止「起了忘了关」把卡占死的保护，不是故障。需要长时间使用就 `extend`。
</Warning>

## 聊天与 A/B 对比

* **聊天**：流式输出、可调 temperature / max tokens、system prompt；
* **A/B 对比**：同一输入并排发给两个服务（如 SFT 产物 vs GRPO 产物），直观感受对齐差异；
* 服务是 OpenAI 兼容端点，也可以从代码直连（端点与 token 见 `sf serve ls`）。

## 执行后端语义

| 后端      | 服务形态                                                            |
| ------- | --------------------------------------------------------------- |
| local   | Docker 容器（vLLM），端口在 console 本机                                  |
| agent   | 不支持                                                             |
| kuberay | 独立 vLLM Pod（不是 RayJob——训练的 backoff/TTL 不套在长驻服务上）。经 K8s API 代理访问 |
| slurm   | 不支持（计算节点通常没有从 console 进来的入向路径）                                  |

## 权限

Playground 属于可配置的进阶功能：管理员可按角色 / 用户开放。未开放时页面显示引导卡片而不是报错。
