Xoscar.errors.ServerClosed: [address=0.0.0.0:25940, Pid=142] Remote Server Unixsocket:///297795584 Closed: 0 Bytes Read On A Total Of 11 Expected Bytes
xoscar.errors.ServerClosed: [address=0.0.0.0:25940, pid=142] Remote server unixsocket:///297795584 closed: 0 bytes read on a total of 11 expected bytes
概述
在使用 Xinference 进行模型推理时,可能会遇到 xoscar.errors.ServerClosed
错误,这通常是由于远程服务器关闭或连接断开导致的。在本文中,我们将详细分析此错误的原因和解决方案。
系统信息
系统信息 / 系统信息
Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/xinference/api/restful_api.py", line 1002, in launch_model
model_uid = await (await self._get_supervisor_ref()).launch_builtin_model(
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/context.py", line 231, in send
return self._process_result_message(result)
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/context.py", line 102, in _process_result_message
raise message.as_instanceof_cause()
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/pool.py", line 667, in send
result = await self._run_coro(message.message_id, coro)
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/pool.py", line 370, in _run_coro
return await coro
File "/usr/local/lib/python3.10/dist-packages/xoscar/api.py", line 384, in __on_receive__
return await super().__on_receive__(message) # type: ignore
File "xoscar/core.pyx", line 558, in __on_receive__
raise ex
File "xoscar/core.pyx", line 520, in xoscar.core._BaseActor.__on_receive__
async with self._lock:
File "xoscar/core.pyx", line 521, in xoscar.core._BaseActor.__on_receive__
with debug_async_timeout('actor_lock_timeout',
File "xoscar/core.pyx", line 526, in xoscar.core._BaseActor.__on_receive__
result = await result
File "/usr/local/lib/python3.10/dist-packages/xinference/core/supervisor.py", line 1190, in launch_builtin_model
await _launch_model()
File "/usr/local/lib/python3.10/dist-packages/xinference/core/supervisor.py", line 1125, in _launch_model
subpool_address = await _launch_one_model(
File "/usr/local/lib/python3.10/dist-packages/xinference/core/supervisor.py", line 1083, in _launch_one_model
subpool_address = await worker_ref.launch_builtin_model(
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/context.py", line 231, in send
return self._process_result_message(result)
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/context.py", line 102, in _process_result_message
raise message.as_instanceof_cause()
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/pool.py", line 667, in send
result = await self._run_coro(message.message_id, coro)
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/pool.py", line 370, in _run_coro
return await coro
File "/usr/local/lib/python3.10/dist-packages/xoscar/api.py", line 384, in __on_receive__
return await super().__on_receive__(message) # type: ignore
File "xoscar/core.pyx", line 558, in __on_receive__
raise ex
File "xoscar/core.pyx", line 520, in xoscar.core._BaseActor.__on_receive__
async with self._lock:
File "xoscar/core.pyx", line 521, in xoscar.core._BaseActor.__on_receive__
with debug_async_timeout('actor_lock_timeout',
File "xoscar/core.pyx", line 526, in xoscar.core._BaseActor.__on_receive__
result = await result
File "/usr/local/lib/python3.10/dist-packages/xinference/core/utils.py", line 93, in wrapped
ret = await func(*args, **kwargs)
File "/usr/local/lib/python3.10/dist-packages/xinference/core/worker.py", line 926, in launch_builtin_model
await model_ref.load()
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/context.py", line 230, in send
result = await self._wait(future, actor_ref.address, send_message) # type: ignore
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/context.py", line 115, in _wait
return await future
File "/usr/local/lib/python3.10/dist-packages/xoscar/backends/core.py", line 90, in _listen
raise ServerClosed(
xoscar.errors.ServerClosed: [address=0.0.0.0:25940, pid=142] Remote server unixsocket:///297795584 closed: 0 bytes read on a total of 11 expected bytes
运行 Xinference with Docker? / 是否使用 Docker 运行 Xinference?
- [x] docker / docker
- [ ] pip install / 通过 pip install 安装
- [ ] installation from source / 从源码安装
版本信息 / 版本信息
xinference v1.3.1
启动 Xinference 的命令 / 用以启动 xinference 的命令
docker run --shm-size=300gb \
-v /root/.xinference:/root/.xinference \
-v /root/.cache/huggingface:/root/.cache/huggingface \
-v /root/.cache/modelscope:/root/.cache/modelscope \
-p 9997:9997 \
--gpus all \
xprobe/xinference:latest \
xinference-local -H 0.0.0.0
复现过程 / 复现过程
使用 llamacpp 运行 DeepSeek-R1 UD_IQS 版本模型,出错。算力是八卡 L40,加载模型的时候试过各种加载参数,xinference 是 docker 安装,尝试 qwq-32b 多卡运行没问题,但是 DeepSeek 就不行,报错如下:
我用了一个引擎 xinference 加载 deepseek 在咱自己算力没问题,但是到客户那边麒麟 v10。
期待表现 / 期待表现
应该如何解决呢?
解决方案
- 检查 Docker 容器状态:首先,检查 Docker 容器的状态是否正常。如果容器状态异常,可能会导致远程服务器关闭或连接断开。
- 检查网络连接:检查网络连接是否正常。如果网络连接异常,可能会导致远程服务器关闭或连接断开。
- 检查模型加载参数:检查模型加载参数是否正确。如果模型加载参数错误,可能会导致模型无法正常加载。
- 检查算力配置:检查算力配置是否正确。如果算力配置错误,可能会导致模型无法正常运行。
- 检查客户端配置:检查客户端配置是否正确。如果客户端配置���误,可能会导致模型无法正常运行。
总结
xoscar.errors.ServerClosed
错误通常是由于远程服务器关闭或连接断开导致的。在解决此错误时,需要检查 Docker 容器状态、网络连接、模型加载参数、算力配置和客户端配置等因素。通过检查和调整这些因素,可以解决 xoscar.errors.ServerClosed
错误。
xoscar.errors.ServerClosed: [address=0.0.0.0:25940, pid=142] Remote server unixsocket:///297795584 closed: 0 bytes read on a total of 11 expected bytes
Q&A
Q: 什么是 xoscar.errors.ServerClosed 错误?
A: xoscar.errors.ServerClosed 错误是由于远程服务器关闭或连接断开导致的。
Q: 如何解决 xoscar.errors.ServerClosed 错误?
A: 解决 xoscar.errors.ServerClosed 错误需要检查 Docker 容器状态、网络连接、模型加载参数、算力配置和客户端配置等因素。
Q: 如何检查 Docker 容器状态?
A: 可以使用 docker ps
命令检查 Docker 容器状态。
Q: 如何检查网络连接?
A: 可以使用 ping
命令检查网络连接。
Q: 如何检查模型加载参数?
A: 可以检查模型加载参数是否正确,包括模型路径、模型名称、模型版本等。
Q: 如何检查算力配置?
A: 可以检查算力配置是否正确,包括 GPU 数量、GPU 型号、GPU 内存等。
Q: 如何检查客户端配置?
A: 可以检查客户端配置是否正确,包括客户端版本、客户端参数等。
Q: 如果我遇到 xoscar.errors.ServerClosed 错误,应该如何处理?
A: 如果你遇到 xoscar.errors.ServerClosed 错误,应该首先检查 Docker 容器状态、网络连接、模型加载参数、算力配置和客户端配置等因素。如果这些因素都正常,可能需要检查远程服务器是否关闭或连接断开。
Q: 如何避免 xoscar.errors.ServerClosed 错误?
A: 可以通过以下方式避免 xoscar.errors.ServerClosed 错误:
- 检查 Docker 容器状态、网络连接、模型加载参数、算力配置和客户端配置等因素是否正常。
- 确保远程服务器正常运行。
- 确保网络连接正常。
- 确保模型加载参数正确。
- 确保算力配置正确。
- 确保客户端配置正确。
Q: 如果我遇到 xoscar.errors.ServerClosed 错误,应该如何联系支持团队?
A: 如果你遇到 xoscar.errors.ServerClosed 错误,应该联系支持团队,提供错误信息和相关配置信息,以便支持团队能够更好地帮助你解决问题。