Files
qwen38-flash-next-rtx6000d/README.md
T

82 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Qwen3.8 Flash-Next on RTX 6000D
2026-09-18 已完成部署和验收。保留文字、图片、视频能力;采用 NVIDIA NVFP4 权重、原生 FP8 PLE 主机内存卸载、FP8 KV、128K 上下文及 FULL CUDA Graph。单个活动请求,**MTP 2 已通过扩展配对验证并启用**,GPU 预算为 0.985。
社区代码经过审计后仅作为参考,没有执行社区启动脚本或使用社区镜像。审计范围和取舍见 [源码审计](audit/source-review.md),实测数据见 [验收结果](audit/results.md)。
## 仓库导航
- `compose.yaml``Dockerfile`:已验收部署配置与固定镜像。
- `patches/`:最小补丁、精确源码保护及许可证。
- [MTP 完整验证](docs/mtp-qualification.md):长解码提升约 58%–67%,98 个负载请求及两组各 7 个质量任务通过;包含缓存延迟取舍。
- [MTP 初测记录](docs/mtp-test.md):历史短测试和当时的暂缓决定,已由完整验证更新。
- [部署心得](docs/lessons.md):取舍、踩坑、优化方向及升级方法。
- `scripts/`:功能、上下文、速度和资源验证工具。
- `audit/runtime/`2026-09-18 历史原始回执,不代表实时状态。
本仓库不保存 SSH 密码、API key、私有代理配置、模型权重或运行缓存。
## 调用
- OpenAI 兼容 Base URL`http://172.16.104.92:8000/v1`
- 模型名:`qwen3.8-flash-next`
- API key:服务器 `/data/flash-next/project/secrets/api-key`,不纳入项目。
- 健康接口:`/health`;业务接口需要 Bearer API key。
- 131072 token 是输入、思考和最终输出的总预算。图片和视频也消耗上下文和计算资源。
在服务器执行以下示例,不会将密钥写进脚本:
```bash
cd /data/flash-next/project
python3 - <<'PY'
import json, urllib.request
from pathlib import Path
body = {'model': 'qwen3.8-flash-next', 'messages': [{'role': 'user', 'content': '你好,请介绍一下自己。'}], 'max_tokens': 1024, 'reasoning_effort': 'medium'}
req = urllib.request.Request('http://127.0.0.1:8000/v1/chat/completions', data=json.dumps(body).encode(), headers={'Content-Type': 'application/json', 'Authorization': 'Bearer '+Path('secrets/api-key').read_text().strip()})
print(json.load(urllib.request.urlopen(req, timeout=180)))
PY
```
图片和视频请求示例见 `scripts/multimodal.py`,使用 `image_url``video_url` 内容块。
## 固定版本
- 官方 vLLM commit`0bfc7a15d095fe83ecc82b50561a93c177fece2d`,镜像 digest 写在 Dockerfile。
- NVIDIA 模型 revision`fc694b54fb0174e0913e6adf86691ef85a4ead47`
- 11 个 safetensors 文件全部通过 SHA256 校验。
- PLE 保留原生 FP8 数据及缩放,常驻锁页 CPU 内存,通过 UVA 查表;本配置不使用磁盘 mmap PLE。
- 额外补丁仅两处 Mamba prefix block alignment 修复;修改前核对精确源码哈希,保留出处和许可证。
不要换成浮动 nightly 后继续沿用本项目的验收结论。
## 运维
服务器目录 `/data/flash-next/` 下,`project/` 是部署项目,`models/` 为权重,`cache/` 为缓存,`audit/``logs/` 保存验证证据。
```bash
cd /data/flash-next/project
docker compose build
docker compose up -d
docker compose logs --tail 100 -f
# 主动停止;unless-stopped 会尊重手动停止
# docker compose stop
```
Compose 默认绑定回环地址;服务器 `.env` 设置 `BIND_ADDRESS=0.0.0.0` 提供内网访问。API key 文件必须存在。新环境可参考 `.env.example`,在 `secrets/` 生成随机密钥,目录权限 0700、文件权限 0600。镜像和模型下载代理属于机器私有配置,不写入项目。
已移除本机旧 MinerU、旧 27B 容器、相关旧镜像和模型目录。保留操作系统、SSH、网络和已修复的 NVIDIA 驱动。DGX Spark 服务配置未改动。
## 复测
```bash
python3 scripts/acceptance.py --output /data/flash-next/audit/acceptance-new.jsonl
python3 scripts/long_context.py --tokens 128000 --output /data/flash-next/audit/context-new.jsonl
python3 scripts/benchmark.py --output /data/flash-next/audit/benchmark-new.jsonl
```
脚本拒绝覆盖同名结果。长上下文验证为固定位置检索及前缀复用;多模态验证为合成图片和短视频;不代表综合质量评测或长期压力测试。当前基线优先单请求和多模态能力,额外并发、更大或更长的视频应另行测试。
## 默认配置与回退
当前 `compose.yaml` 为 MTP 2,实际运行器使用 FULL_DECODE_ONLY Graph。`compose.baseline.yaml` 保留无 MTP 的 0.96 GPU 预算配置。长生成优先使用 MTP;大上下文反复短问答可能更适合无 MTP,因为可复用 KV 容量更大。切换方法和完整证据见 [MTP 完整验证](docs/mtp-qualification.md)。