时间 | 版本 | 修改人 | 描述 |
---|---|---|---|
2024年5月16日14:54:41 | V0.1 | 宋全恒 | 新建文档 |
2024年5月16日17:21:36 | V1.0 | 宋全恒 | 完成文档的输出 |
简介
操作步骤
参考了vscode上python进行debug大全 - 知乎。
安装python和remote-ssh扩展
如果提示没有python解释器,哪怕之前已经安装了,也重新安装一下即可。

注意,如果之前安装过python扩展,但是无法产生断点和调试,则可以通过重新卸载python扩展,重新安装python扩展来解决。

生成文件配置入口程序和调试参数
{
"version": "0.2.0",
"configurations": [
{
"name": "Python 调试程序: 当前文件",
"type": "debugpy",
"request": "launch",
"program": "/home/yuzailiang/anaconda3/envs/vit2/bin/lmdeploy",
"console": "integratedTerminal",
"justMyCode": false,
"args": ["list"]
}
]
}
较为重要的事修改program,这个是入口文件,justMyCode则是修该断点生效的代码
justMyCode, 当设置为 true 时,仅调试自己的代码。false时包括非用户代码(如库代码,导入的模块)由于我要调试lmdeploy的相关程序,因此,修改为false。
选择python解释器
安装了扩展之后,并且可以点击产生断点,此时我们可以尝试点击运行,进行调试。

选择在工作区级别选择

选择自己索要的python解释器环境

选择之后,正常就可以开始调试。
远程调试

然后选择F11,即单步调试,即可进入相应的代码行。

其实在断点开始的时候,这些函数就已经可以来回跳转了。或许这也是代码调试的基本要求。
观察输出
需要注意的是,在远程调试的时候,也是发出了命令,这个可以在终端中看出,也可以打印一些日志。这些日志能够方便我们观察程序的运行。
(vit2) yuzailiang@ubuntu:/mnt/self-define/sunning/lmdeploy/lmdeploy$ cd /mnt/self-define/sunning/lmdeploy/lmdeploy ; /usr/bin/env /home/yuzailiang/anaconda3/envs/vit2/bin/python /home/yuzailiang/.vscode-server/extensions/ms-python.debugpy-2024.0.0-linux-x64/bundled/libs/debugpy/adapter/../../debugpy/launcher 59295 -- /home/yuzailiang/anaconda3/envs/vit2/bin/lmdeploy list
sys.argv[0]: /home/yuzailiang/anaconda3/envs/vit2/bin/lmdeploy
sys.argv: ['/home/yuzailiang/anaconda3/envs/vit2/bin/lmdeploy', 'list']
Supported model names:
baichuan-7b
baichuan2-7b
chatglm2-6b
codellama
falcon
internlm
internlm-20b
internlm-chat
internlm-chat-20b
internlm-chat-7b
internlm-chat-7b-8k
internlm2-20b
internlm2-7b
internlm2-chat-20b
internlm2-chat-7b
llama
llama-2
llama-2-chat
llama2
puyu
qwen-14b
qwen-7b
solar
solar-70b
ultracm
ultralm
vicuna
wizardlm
yi
yi-200k
yi-34b
yi-chat
总结
这个笔记记录了使用vscode调试远端服务器配置的过程,好记性不如烂笔头,还是多记录一些内容吧,我发现,当你遇到一个问题的时候,很有可能,你会重新遇到的。通过不断记忆,我们能够很好的建立联系这样就能比较自信的解决同样的问题。还能节省许多的实践。