PyCharm 调试 Xinference 遇到问题及解决方案

本文使用的 PyCharm 2024.2.1 版本,如果使用低版本 PyCharm,那么在调试 Xinference v0.15.1 源码时可能会报错 Connection to Python debugger failed Socket closed

一.PyCharm 调试 Xinference 源码

由于 Xinference 中的一些依赖包仅支持 Linux,所以在 PyCharm 调试 Xinference 源码时,最好使用 PyCharm+WSL2 环境,或者直接使用 PyCharm+Ubuntu 22.04 环境,以此实现 PyCharm 对 Xinference 源码调试。

1.环境配置

环境为 Python 3.10.12 版本,WSL2,如下所示:

根据配置文件 inference\setup.cfg 可知,debug 入口点为 inference/xinference/deploy/cmdline.py。如下所示:

Run/Debug Configuration 参数及配置,如下所示:

2.运行前端代码

bash 复制代码
npm install  # 安装依赖包
npm run start  # 实际执行react-scripts start

自动打开链接 http://localhost:3000/#/launch_model/llm,如下所示:

3.运行后端代码

点击 Debug 调试 Xinference 源码,如下所示:

如果调试后端代码时遇到相对路径相关问题,那么修改为完整路径即可。如下所示:

(1)inference\xinference\deploy\cmdline.py

(2)inference\xinference\deploy\local.py

(3)inference\xinference\deploy\utils.py

(4)inference\xinference\deploy\worker.py

4.源码修改

比如,修改"Launch Model"为"启动模型",如下所示:

Web 前端页面也会跟随着相应变化,如下所示:

二.PyCharm+WSL2 调试遇到的问题

如果使用 PyCharm 版本过低,比如 PyCharm 2023.3.2。直接 Run 是可以的,但是 Debug 报错,如下所示:

复制代码
Connection to Python debugger failed Socket closed

使用版本为 PyCharm 2023.3.2,如下所示:

报该错误可能是 PyCharm 本身的问题,解决方案是升级为最新的 PyCharm 2024.2.1 版本。

三.PyCharm+WSL2 安装和运行

源码编译安装,如下所示:

复制代码
https://github.com/xorbitsai/inference
python setup.py install
xinference-local --host 0.0.0.0 --port 9997

打开链接 http://127.0.0.1/ui/#/cluster_info,如下所示:

参考文献

1 Xorbits 官网:https://xorbits.cn/inference

2 Xinference 官方文档:https://inference.readthedocs.io/zh-cn/latest/index.html

3 Xorbits Inference GitHub:https://github.com/xorbitsai/inference

NLP工程化(星球号)

相关推荐
Swift社区13 小时前
Python 开发环境怎么选?PyCharm、VS Code、Trae 谁更适合 AI 开发?
人工智能·python·pycharm
SMF191914 小时前
【PyCharm】让 PyCharm 使用 .venv 虚拟环境
ide·python·pycharm
维度攻城狮2 天前
PyCharm 使用 DevContainer 开发:打造一致、隔离、高效的开发环境
ide·python·pycharm·devcontainer
赵广陆2 天前
RAG进阶
pycharm·langchain
鱼日先生2 天前
Dify 中级实验(13):多 Agent 协作——如何编排多个智能体分工干活?
工作流·dify·ai agent·大模型应用·ai 训练
鱼日先生2 天前
Dify 中级实验(14):对话变量与状态管理——如何让工作流记住多轮对话的状态?
工作流·dify·ai agent·大模型应用·ai 训练
持敬chijing2 天前
超详细!Pycharm的激活安装与使用教程
python·pycharm
赵广陆3 天前
Jupyter和PyCharm完整集成
ide·jupyter·pycharm
鱼日先生5 天前
Dify 中级实验(04):迭代进阶——如何批量处理数据并守住性能边界?
agent·工作流·dify
二进制杯莫停5 天前
Pycharm直接使用uv管理项目
ide·pycharm·uv