ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

DeepSeek一体机落地指南:从架构设计到vLLM部署与运维

DeepSeek一体机落地指南:从架构设计到vLLM部署与运维 简介面向企业管理层与技术负责人的DeepSeek私有化部署方案资料聚焦大模型一体机的硬件选型、成本优化与企业应用落地。内容涵盖四种适配机型以及英伟达显卡与国产信创两种算力平台配置参数说明其在训练成本、推理速度、准确率上的优势并强调私有化部署对数据安全、合规要求与业务定制化的价值。典型场景包括智能知识库、文档翻译、数据库查询助手、办公助手与智能体工作流还给出了在不同业务中部署应用的思路如智能客服实时解答、智能风控快速识别风险以及通过数据融合打破企业数据孤岛、挖掘商业价值并提供不同型号选型指南。资料为单个PDF文件大小2.85MB已有92人学习。适合正在规划智能化升级的技术决策者参考可帮助快速评估一体机方案并推动企业从经验决策向数据决策转变。1. 一体机是什么DeepSeek 为什么值得塞进一台机箱“基于DeepSeek的应用一体机解决方案”翻译成大白话就是把 DeepSeek 的推理模型、模型运行时、应用接入接口和运维工具预先装进一台机架式服务器里交付的时候插电、联网、配好数据目录就能在客户内网里用上大模型能力。这个交付形态在政企项目里非常受欢迎因为数据不出机房、没有按 token 计费的账单也绕开了“把业务数据发到外部 API”的合规顾虑。真正决定“要不要做一体机”的不是模型本身而是客户的运维能力。大模型本地部署看起来只是“跑个服务”实际要面对 GPU 驱动、推理引擎、模型版本、并发排队、断网重启这些琐碎问题普通业务团队根本没有精力维护。一体机的价值就在这把能预装的全预装把能自动恢复的做成服务把黑匣子变成一台有明确操作手册的机器。这篇文章适合售前工程师、私有化交付团队、企业 AI 平台负责人。下面按我实际交付这类设备的经验把方案拆成可复现的落地路径。2. 一体机拆解为什么是这四层以及 DeepSeek 模型怎么选做一套 DeepSeek 一体机方案首先要说服自己一件事这不是“服务器 模型”的简单组合而是硬件、运行时、模型、应用接入四个层的堆叠。任何一层出问题最终表现的故障都是一样的——“服务起不来”或“回答不对”。我自己给客户讲方案时从来不会先报 GPU 型号而是先把四层结构讲清楚让对方知道钱花在了哪、以后坏了该找谁。2.1 一体机的四个组成层硬件、运行时、模型、应用接入第一层是硬件层。常见做法是用标准 2U/4U 机架式服务器配 1 到 8 张 GPU 卡CPU 用双路 Xeon 或 EPYC内存至少 256GB系统盘和数据盘拆开电源和风扇全部冗余。硬件层面还要留带外管理口方便断网时远程看硬件状态。这一步的坑在于“只看 GPU 不看总线”卡插满了但 PCIe 通道不够多卡通信慢推理延迟照样拉胯。第二层是运行时层包括操作系统、GPU 驱动、容器引擎、推理引擎常见的是 vLLM 或 SGLang以及 flash-attention 这类加速库。这层最容易被轻视因为它是纯软件。可它恰恰是售后问题最多的地方驱动和 CUDA 版本不匹配、容器内看不到 GPU、推理引擎升级后行为变化。交付时要把运行时版本固定下来所有环境变量写成部署脚本不要靠人肉命令行维护。第三层是模型层包含权重文件、tokenizer、config 和可选的量化版本。模型层必须做版本锁定和校验权重文件一旦损坏或混用不同版本的 config输出的就是乱码或形状错误。我一般会在模型目录旁边放一个 SHA256 校验文件备份、迁移、回滚都靠它。第四层是应用接入层也就是对外暴露的 OpenAI 兼容接口、API 网关、鉴权、日志和计量统计。一体机不是把模型跑起来就算完业务流程怎么调、限流怎么做、日志存哪都要在这一层解决。企业微信、公众号、内部的 OA 系统、开发工具的 Copilot 插件接入全部走这一层的接口。2.2 模型选型显存、并发和场景决定要跑哪个 DeepSeekDeepSeek 官方模型分两类一类是 R1/V3 这样的大参数模型以 DeepSeek-V3 为例671B 参数的 MoE 架构适合高质量推理但对显存和运维要求极高另一类是 R1 的蒸馏系列从 1.5B 到 70B 不等比如 R1-Distill-Qwen-14B、R1-Distill-Llama-70B能力足够覆盖绝大多数企业文本场景部署成本低一个数量级。做一体机时绝大多数客户应该从蒸馏模型里挑。模型档位典型规模显存规划参考典型场景小尺寸蒸馏1.5B / 7B / 8B单卡 8GB 到 24GB日志分类、简短问答、边缘低功耗节点中尺寸蒸馏14B / 32B单卡 24GB 到 80GB或多卡 24GB企业客服、文档问答、业务摘要大尺寸蒸馏70B双卡 80GB 或四卡 48GB复杂推理、代码生成、长文本分析原生大模型R1 / V3671B 级多卡集群需要高速互联对模型能力要求极高且不介意运维成本选型时我建议先用“场景 并发”倒推。如果只是内部知识库问答14B 的蒸馏版通常够用回答质量和响应速度都能接受如果要做代码补全或复杂逻辑推理直接上 70B 这一档。对于“满血版”客户可以按需在云端 API 上体验一体机里跑全套 671B 在成本和交付周期上性价比太低除非是严格数据隔离的涉密项目。另一个容易被忽略的选择是量化。FP16 权重占用的显存大约是权重参数量的两倍例如 14B 模型权重约 28GB加上 KV cache 和框架开销单张 24GB 卡很吃力。AWQ、GPTQ 这类 4-bit 量化可以把体积降到四分之一左右代价是精度略有下降。我一般建议一体机首版直接跑原始精度确认业务效果没问题后再用量化版把并发撑上去不要把量化当成默认选项。2.3 硬件选配从机箱到电源的理性配置清单硬件选配的逻辑是“先定模型再定显存最后倒推整机”。显存需求可以按这个公式估算模型权重大小 所有并发请求的 KV cache 占用 推理框架自身的缓冲区。举例部署 14B 模型并支持 8 个并发会话一张 48GB 卡基本够用同样的模型要顶到 32 并发就得两张 48GB 卡或一张 80GB 卡。部件推荐配置选择理由GPU24GB / 48GB / 80GB 数据中心卡显存决定能塞下多大模型和多少并发CPU双路 Xeon/EPYC32 核以上处理 tokenizer、调度和 API 层逻辑内存256GB 起步vLLM 会在 CPU 侧暂存调度数据内存太小吃紧系统盘2 块 NVMe SSD 组 RAID1装操作系统和运行时坏一块不宕机数据盘4TB 以上 NVMe放模型权重、日志和备份需独立分区电源双冗余电源训练推理卡瞬时功耗高避免断电丢权重网络双 25GbE 网口接入层多业务并发的带宽冗余这些配置里最容易翻车的是散热和功耗。一体机交付到客户机房机柜的供电和制冷未必按 GPU 服务器规划过一台双卡 48GB 的机器满载功耗接近 1.5kW加上其他设备机柜功率可能直接超限。交付前要发一份《机房环境确认表》让客户确认电压、功率和通风条件不要默认“有插座就能跑”。3. 用 vLLM 在一体机上把 DeepSeek 跑通最小可复现命令方案纸上谈兵没有意义这一章直接落到命令。我习惯用 vLLM 做一体机的推理引擎一是它原生支持 OpenAI 兼容接口二是连续批处理带来的吞吐优势在并发场景非常明显。下面按“环境确认 → 启动服务 → 端到端验证”三步走每一步都给出可抄的命令和参数解释。3.1 环境准备先把驱动、容器和 GPU 可见性确认掉很多同学拿到新机器第一件事就是装依赖结果装完才发现容器里看不到 GPU。我一般先用两条命令搞定环境自检先看物理机上的 GPU 状态再起一个临时的 CUDA 容器验证驱动和容器映射是否正常。# 第一步物理机上确认 GPU 能被系统识别 nvidia-smi # 第二步起一个临时容器确认容器内也能看到同一批 GPU # 镜像里的 nvidia-smi 版本可能比宿主机新只要能看到卡和显存就说明驱动透传正常 docker run --rm --gpus all nvidia/cuda:12.4.1-base-ubuntu22.04 nvidia-smi第一条命令在现代 GPU 服务器上基本不会出问题但要注意看显卡状态是不是P0性能态以及显存有没有被别的进程占用。第二条命令是真正的门槛如果容器内执行nvidia-smi报错通常意味着宿主机驱动版本和 CUDA 容器不兼容或者没有安装 NVIDIA Container Toolkit。把这个步骤作为部署脚本的第一段检查后面所有问题都好排查。驱动和运行时层面Ubuntu 22.04 CUDA 12.x vLLM 的组合最常见。vLLM 可以直接用 pip 安装它会自动拉取 flash-attention 等加速依赖。需要注意的是一体机交付后通常断外网运行所以安装阶段要把 wheel 包和模型权重一起打进离线安装包不要指望客户现场pip install。3.2 用 vLLM 启动 DeepSeek 模型命令与参数说明模型权重建议预先放到统一的目录比如/data/models/deepseek-ai/DeepSeek-R1-Distill-Qwen-14B目录里要有完整的config.json、tokenizer 文件和权重文件。启动命令如下# 启动 vLLM 的 OpenAI 兼容服务监听 8000 端口 python -m vllm.entrypoints.openai.api_server \ --model /data/models/deepseek-ai/DeepSeek-R1-Distill-Qwen-14B \ --served-model-name deepseek-r1-14b \ --host 0.0.0.0 \ --port 8000 \ --tensor-parallel-size 2 \ --max-model-len 8192 \ --gpu-memory-utilization 0.92 \ --enforce-eager--model指向本地权重目录不要填模型名字让 vLLM 去网上拉一体机离线环境下根本拉不到。--served-model-name是暴露给业务方的模型名也就是客户端请求里model字段要填的值这里起名deepseek-r1-14b方便统一管理。--tensor-parallel-size 2表示用两张卡做张量并行如果用单卡部署去掉这个参数即可。--max-model-len 8192控制上下文长度这个值越大 KV cache 预分配越多能支撑的并发就越低。先按 8192 跑通后续按业务场景再调。--gpu-memory-utilization 0.92表示允许框架使用单卡 92% 的显存给驱动和其他进程留一点余量。最后的--enforce-eager是让框架跳过部分算子优化以换取更高的兼容性首版跑通用它最稳确认稳定后可去掉以提升性能。启动后看到类似Application startup complete的日志说明服务已经就绪。此时建议再用ss -lntp | grep 8000确认端口确实在监听避免服务进程起来了但端口绑定失败。3.3 用 OpenAI 兼容接口做一次端到端验证vLLM 启动的就是 OpenAI 兼容的 chat completions 接口所以验证方式可以顺手用 curl也可以直接用 Python 的openai包。对于一体机交付场景我更推荐保留一段 Python 验证脚本后续可以演变成自动化巡检脚本。# 用 curl 快速验证服务是否正常响应 curl -s http://127.0.0.1:8000/v1/chat/completions \ -H Content-Type: application/json \ -d { model: deepseek-r1-14b, messages: [{role: user, content: 写一条定时清理临时文件的 crontab}], max_tokens: 256 }这段请求的关键是model字段必须和启动时的--served-model-name保持一致很多接入问题都出在两边名字没对上。如果返回了choices[0].message.content说明服务链路已经通了。再用 Python 走一遍同样的调用顺带验证客户端 SDK 的兼容性from openai import OpenAI # 一体机内网地址和端口网关部署后替换为网关地址 client OpenAI( api_keylocal-test-key, base_urlhttp://127.0.0.1:8000/v1 ) resp client.chat.completions.create( modeldeepseek-r1-14b, messages[{role: user, content: DeepSeek 一体机上如何做模型备份}], max_tokens256 ) print(resp.choices[0].message.content)这段脚本验证的不只是模型能不能生成还包括 OpenAI SDK 的兼容层是否正常。vLLM 返回的对象结构和官方 API 几乎一致所以业务代码根本不需要改造只需要把base_url指向一体机内网地址。这也是方案里“应用接入层”能快速对接各种业务系统的原因生态里大量现成的 Agent 框架、IDE 插件、企业微信应用都认 OpenAI 兼容接口。4. 把 DeepSeek 当长跑服务运营systemd 开机自启、模型热切换与 API 网关服务跑通只是开始一体机要住进机房长期运行必须解决三个运营问题数据目录怎么规划、断电重启后服务怎么自动回来、多个业务系统怎么安全地共用模型资源。这一章全部围绕“长跑”来讲都是我交付过程中反复踩过的点。4.1 模型目录与数据分区权重、缓存、日志分开存放一体机的存储规划要在部署第一天定好否则后面迁移和排障会非常痛苦。我习惯把所有数据组织在/data下按用途拆成四个目录目录用途权限/data/models存放 DeepSeek 权重和 config只读挂载root 可写业务进程只读/data/cacheHuggingFace 和 vLLM 的缓存文件业务进程可写/data/logsvLLM 和网关日志按天滚动业务进程可写/data/backup模型迁移包、旧版本备份root 可写权重目录只读这个细节很重要。模型文件一旦被误删或覆盖重新下载几百 GB 成本极高。把/data/models以只读方式挂载给容器物理上杜绝误操作。日志目录单独放是因为日志增长很快如果和系统盘混在一起可能把根分区塞满导致机器异常单独分区后可以很放心地写日志清理策略。模型切换的常规做法是“目录 软链”。在/data/models/releases下按版本建目录比如v1.0-14b-bf16、v1.1-14b-awq然后用一个软链指向当前版本# 发布新版本时先解压到 releases 目录再切换软链 ln -sfn /data/models/releases/v1.1-14b-awq /data/models/current # 修改 systemd 启动参数指向 /data/models/current然后重启服务软链方案的好处是回滚只需改一条命令不用复制几百 GB 文件。配合 4.2 节的 systemd 服务整个切换过程可以控制在分钟级。4.2 用 systemd 把 vLLM 变成开机自启的长跑服务裸跑python -m vllm...会在终端退出时把服务带走这是交付现场的低级事故。把 vLLM 放进 systemd 统一管理是最稳妥的长跑方案# 写入 systemd 服务单元注意 ExecStart 里的路径和参数要和实际部署一致 sudo tee /etc/systemd/system/deepseek-vllm.service /dev/null EOF [Unit] DescriptionDeepSeek vLLM Inference Service Afternetwork-online.target local-fs.target docker.service Requiresdocker.service [Service] Restartalways RestartSec15 ExecStart/usr/bin/docker run --rm --name deepseek-vllm \ --gpus all \ -v /data/models:/data/models:ro \ -v /data/cache:/root/.cache \ -v /data/logs:/logs \ -p 8000:8000 \ vllm/vllm-openai:latest \ python -m vllm.entrypoints.openai.api_server \ --model /data/models/current \ --served-model-name deepseek-r1-14b \ --port 8000 [Install] WantedBymulti-user.target EOF sudo systemctl daemon-reload sudo systemctl enable --now deepseek-vllm这个单元文件里几个细节值得说。Restartalways配合RestartSec15保证进程崩溃后自动拉起不会出现“半夜没人重启服务”的情况。After和Requires声明了依赖关系确保网络、磁盘、容器都就绪后才启动推理服务。--model /data/models/current配合软链模型切换和回滚都不用改单元文件。docker run --rm的意思是容器退出即销毁下次由 systemd 重新拉一个新的容器实例这样不会出现多个同名容器互相争抢 GPU 的情况。启动后用systemctl status deepseek-vllm查看状态用journalctl -u deepseek-vllm -f跟踪实时日志。4.3 API 网关与多业务接入让一体机的接口不裸奔推理服务默认监听0.0.0.0:8000如果把 8000 端口直接暴露给业务网会带来两个问题没有鉴权、没有限流。常规做法是在一体机内部再跑一层 Nginx 网关把 8000 端口隐藏起来业务方只能访问网关端口# 网关监听 8080所有 /v1/ 请求反向代理到 vLLM 的 8000 端口 upstream deepseek_backend { server 127.0.0.1:8000; keepalive 32; } server { listen 8080; location /v1/ { proxy_pass http://deepseek_backend/v1/; proxy_http_version 1.1; proxy_set_header Connection ; } }keepalive 32复用后端连接避免高并发时频繁创建 TCP 连接导致端口资源耗尽。网关层可以继续叠加auth_request做 token 校验或者按 client IP 做限流。企业微信、OA 系统、开发工具接入时只需要把模型的base_url配成http://一体机内网IP:8080/v1即可。VSCode、Codex 这类开发工具只要支持配置 OpenAI 兼容地址都能用同一个网关接入无需改业务代码。网关的另一个职责是计量。Nginx 的 access log 里记录了每个请求的模型名、响应码、耗时和来源 IP后续做账单分摊和容量规划都有依据。日志建议单独挂载到/data/logs/nginx和推理日志分开排障时可以并行查。5. 一体机常见故障排查5 个翻车场景及处置办法跑通和长跑是两回事。以下 5 个问题是我在一体机交付和客户回访中遇到频率最高的每个都按“现象 → 原因 → 解决”顺序讲清楚。排查思路上先看日志、再看显存、最后看配置不要上来就重启。5.1 现象启动即报 CUDA OOM服务根本起不来现象是torch.cuda.OutOfMemoryError或者是 vLLM 加载权重时直接退出而nvidia-smi显示系统中还有空闲显存。原因通常有两个一是--gpu-memory-utilization设得过高框架认为显存全部可占用结果和别的进程撞了二是两张卡中间有一张被其他业务占了程序没感知到真实可用显存。解决方法是先把nvidia-smi输出拉出来确认哪张卡真正空闲然后用环境变量限定可见卡# 只让推理进程使用物理编号为 0 和 1 的两张卡 CUDA_VISIBLE_DEVICES0,1 python -m vllm.entrypoints.openai.api_server \ --model /data/models/current \ --served-model-name deepseek-r1-14b \ --gpu-memory-utilization 0.88同时把gpu-memory-utilization从 0.92 降到 0.85 到 0.88给驱动和其他库留出余量。如果还是 OOM就要考虑换更小的蒸馏模型或启用量化版本硬顶着跑迟早会在高压并发时出问题。5.2 现象Agent 工具调用报错 “messages tool calls need immediate results”这个报错在接 Agent 框架时很常见。现象是模型第一轮正常返回了tool_calls但后续请求把它当普通消息提交API 就拒绝继续生成提示工具调用需要立即返回结果。原因在于 DeepSeek 的对话接口要求模型发起工具调用后下一轮用户消息里必须立刻携带带有对应tool_call_id的tool类型消息中间不能插入其他内容或长时间等待。解决方式是在 Agent 编排侧严格按协议补发工具结果# 收到模型返回的 tool_calls 后立刻把结果回传给模型 messages.append({ role: tool, tool_call_id: tool_call.id, content: 工具执行结果成功 }) # 再调用一次接口让模型基于工具结果继续生成 resp client.chat.completions.create( modeldeepseek-r1-14b, messagesmessages )这段代码的关键是tool_call_id必须原样带回role必须是tool顺序上紧跟在带tool_calls的 assistant 消息之后。如果工具执行本身需要几秒钟可以在业务侧先把结果存到变量里等执行完再拼到messages里发出去不要在等待期间插入新的对话消息。5.3 现象生成速度慢GPU 利用率低但并发一高就排队这个故障最常见的表象是单请求体感 3 到 5 秒看起来还能接受一旦并发到了 10响应立刻拖到十几秒。原因通常是max-model-len设得太大KV cache 预分配过多可并发数量被显存锁死或者是请求的输入太长每轮都要重新计算 prefix。解决方法是按场景压缩上下文长度并开启 vLLM 的前缀缓存# 把上下文长度压到业务实际需要的 8192开启 prefix caching 减少重复计算 python -m vllm.entrypoints.openai.api_server \ --model /data/models/current \ --served-model-name deepseek-r1-14b \ --max-model-len 8192 \ --enable-prefix-caching--enable-prefix-caching让多个请求共享相同的前缀计算结果知识库问答这种“长文档短问题”的场景提升非常明显。调完之后再用第 6 章的压测脚本看数据不要凭感觉判断。5.4 现象一体机重启后服务消失端口连不上断电和机房巡检重启后客户反馈“昨天还能用的服务今天连不上了”。原因大多是部署时直接用命令行起服务没有注册成 systemd 服务或者 systemd 单元里没有声明对网络和挂载目录的依赖开机顺序不对导致启动失败。解决方法是把服务写进 systemd 并开机自启检查时用这几条命令定位# 查看服务当前状态和最近 100 行日志 systemctl status deepseek-vllm journalctl -u deepseek-vllm -n 100 --no-pager如果日志显示local-fs.target相关的挂载失败比如/data/models还没挂上就启动容器需要调整单元里的After顺序。这个故障最好的解决办法是预防交付验收清单里永远包含一次“关机重启全流程验证”确认断电恢复后服务能自动回来再签字。5.5 现象模型输出乱码或客户端报 model not found这两个问题看着不同根因都是模型版本和接口配置不一致。模型乱码多半是权重文件和 config 不匹配比如下载了一半、迁移时丢文件、或者把量化模型当原始精度加载。model not found则是客户端请求里的model字段和--served-model-name不一致常见于老代码还在调用官方的deepseek-chat模型名。解决方式分两路模型文件用校验和兜底发布前跑一遍sha256sum -c 校验文件模型名则统一在网关上做映射或者在交付文档里写明“一体机上的模型名统一为 deepseek-r1-14b”。客户端如果不想改代码也可以在 Nginx 层把deepseek-chat转发到实际模型名但这只适合内部过渡不建议长期维护。6. 从“跑通服务”到上线交付一体机性能校验与参数调优服务稳定运行之后还有最后一公里怎么证明这台一体机“能扛住业务”怎么把参数调到最佳状态。我交付时都会做一轮压测和调参并把结果直接附在验收报告里。这里分享我每次必做的三件事。6.1 三个最影响体感的推理参数上下文长度、显存利用率、并发上限进过一个又一个坑之后我一般只动这三个参数。max-model-len决定单次请求能处理多长的输入但它直接侵占 KV cache 显存gpu-memory-utilization决定框架能用多少显存设太高容易 OOM设太低浪费算力max-num-seqs决定同时有多少请求在排队生成太小则并发能力受限太大会让单请求等待时间拉长。参数保守起步值调优方向--max-model-len8192业务侧重长文档则 16384纯短问答可以降到 4096--gpu-memory-utilization0.85稳定性确认后升到 0.90 到 0.92--max-num-seqs8压测后逐步加到 16 或 32观察延迟曲线调参的优先级是先定上下文再调显存利用率最后加并发。上下文长度加大 1 倍KV cache 占用几乎等比上涨显存利用率如果没有富余。这三个参数改完必须重启服务所以调参窗口最好选在业务低峰期。6.2 用多线程脚本做一次最简压测敢在交付前出示数值压测不需要复杂工具一个 Python 多线程脚本就能拿到关键指标。脚本要测的是端到端延迟和系统吞吐也就是“业务方实际能感受到的响应速度”和“一小时内能处理多少请求”。import concurrent.futures import time from openai import OpenAI BASE_URL http://127.0.0.1:8000/v1 MODEL deepseek-r1-14b def single_request(seq): client OpenAI(api_keylocal-test, base_urlBASE_URL) t0 time.time() resp client.chat.completions.create( modelMODEL, messages[{role: user, content: 写一条 Linux 巡检命令}], max_tokens256 ) return time.time() - t0 with concurrent.futures.ThreadPoolExecutor(max_workers8) as pool: latencies list(pool.map(single_request, range(32))) avg sum(latencies) / len(latencies) tps len(latencies) / sum(latencies) print(f平均延迟: {avg:.2f} 秒, 端到端吞吐: {tps:.2f} 请求/秒)这段脚本里ThreadPoolExecutor(max_workers8)模拟 8 个并发用户每个用户连续提交 4 次请求总计 32 个样本。打印的“平均延迟”包含排队和生成时间是业务体感的直接体现tps是本轮压测的端到端吞吐。如果平均延迟超过 5 秒说明并发上限设高了或上下文设长了如果延迟稳定但 tps 很低说明 GPU 算力有富余可以上调max-num-seqs。6.3 交付前快速验收清单从监控指标到数据备份压测通过后我的习惯是再走一遍验收清单绝不跳过任何一项。清单包括断网重启验证 systemd 是否拉起服务、模型目录校验和是否匹配、网关鉴权是否生效、GPU 显存占用是否有残余进程、备份目录是否可读可写、/data/logs是否能正常滚动归档。监控上至少盯四个指标GPU 显存使用率、GPU 计算利用率、8000 端口连通性、请求平均延迟。这四个指标能覆盖 90% 的运行时故障。有一次交付我为了“留余量”把max-model-len调到了 32768结果机器能支撑的并发掉到 2 个客户现场演示时请求排队排到天荒地老只能连夜把参数调回 8192 并按业务输入长度增加前置分段。后来我给自己定了一条规矩上下文只给场景留 1.5 倍余量多余的显存优先给并发。这些调参经验看起来像玄学本质都是显存和延迟的权衡压测数据做一次就有了实际依据。希望帮到你。本文还有配套的精品资源点击获取
返回列表