最近在尝试把部署好的大模型通过MCP协议接入到一个知识库工具里,模型用的本地vLLM加载的Qwen2.5-7B。但每次调用工具函数(比如搜索、读文件)时,MCP服务端就卡住,要么返回超时要么直接断开。我查了日志,模型本身推理很快,但MCP那边好像等不到结果就放弃了。有没有大佬遇到过类似情况?是MCP的timeout参数没调对,还是走HTTP传输时并发连接数不够?另外,部署环境是单卡A100,显存够用,但CPU和内存占用不高。求指点排查方向,谢谢!
楼主
22小时前
MCP部署后调用服务总超时,是推理卡还是传输配置问题?
请 登录 后发表回复
全部回复
共 1 条
2楼
19小时前
这波我也踩过类似的坑,如果你模型本身推理很快但MCP超时,大概率不是推理卡的问题,而是MCP客户端和vLLM之间的超时握手没对好。vLLM的流式输出有时会延后发第一个token,MCP那边默认的timeout可能只有几秒,稍微算长点的上下文就直接断了。你可以先试试把MCP服务端的timeout参数调到30秒以上,或者检查下MCP的HTTP长连接keepalive是不是被中间件关了。另外,单卡A100跑7B其实CPU压力不大,但如果你用了异步回调,Python的GIL在密集的JSON序列化时也可能卡住,建议把MCP的worker数调成1或者用uvloop跑。还有个冷门点:vLLM的max-model-len如果设得比实际上下文长,预填充阶段会突然吃满显存导致MCP响应抖动。先调timeout和并发连接数,再查vLLM的调度策略,大概率能解决。