赞
踩
稍微google 了下,在左侧边栏,点击倒数第二个图标(有4个方块,其中一个方块脱离的图标),搜索 ssh,出来两个相关的插件,一个是 Remote - SSH,一个是 Remote - SSH: Editing Configuration Files ,我把2个插件都下载了,接着就要远程连接服务端了,也是摸索了半天
点击左侧最后一个图标(Remote Explore, 看着像是个远程的图标),如下图:
第一处要选择 Remote,表示的是用 ssh 连接,如果你下载了容器的插件和wsl 的插件,这里也是可以选的,点击第二处的设置图标,就会出现第三处,选择你电脑的ssh 配置,这个前提是,win10 的ssh 客户端你得先弄好,这里有好多教程的,然后会出现如下界面
填写自己的ip 和用户名就好了,默认是没有 Port 的,如果端口不是22,就需要自己去加,这里要注意,填完之后关闭,左侧有个刷新按钮,得刷新一下才行,然后点击向右的箭头去连接,密码是需要自己输入的,也可以不用输入,但需要自己配置,有教程的,可能需要生成秘钥啥的,我这里就没搞,自己手动输入密码
连接成功后,主界面上会出现 open files,就可以看到你服务器上的文件,然后打开就可以了
上面已经可以利用 vscode 打开服务端的代码了,但要调试上面的 python 代码,需要安装 Python 插件,当我点击安装时,显示一直在安装,一直安装不上,最后报如下错误
This extension is disabled in this workspace because it is defined to run in the Remote Extension Host. Please install the extension in 'SSH: 192.168.10.98' to enable. Learn More
大致意思是,我得去服务端把这个插件给装上,在这里貌似是不生效的,并且 给出了 learn more 链接,肯定是可以搞的,有空再研究吧
首先要做的就是选择 python 解释器,现在还不知道一开始怎么选择 python 解释器,但我知道,如果选择错误的python 解释器,可以怎么更改,在vscode 的最下方,点击如下圈红部分,然后vsconde 的上方会跳出选择解释器的位置,会列出你环境中已经存在的python解释器,选择你需要的解释器即可
在我安装完 wsl 的插件后,一开始 通过 vscode 连接 wsl 一直连接不上,后来可能我重启了 vscode ,可以连接到 wsl 了,就如上面简单探索里说的,把 1 的位置选择 WSL Targets,然后再去选择自己的子系统连接就可以了
连接上之后,我要调试 wsl 上的代码,依然需要 python 插件,我用同样的方法点击安装,依然装不上,后来我参考文章 Remote development in WSL ,就好使了,其实什么也没做
就学到了一点,在 wsl 上通过 code . 可以打开 windows 上的 vscode,而且莫名的,wsl 上的python 调试插件竟然安装好了,我都不知道为啥,因为之前直接打开 vscode 连接到 wsl 去安装 python 调试插件是一直安装不成功了,我不知道这和 code . 有没有关系,我猜测是有关系,我直接在 wsl 上 输入 code . 然后弹出 windows 的 vscode,相当于是 wsl 和 Windows 建立一个连接
插件安装好后,输入F5 进行调试,它会让你选择一个 python 解释器,这时候你 wsl 安装的 python 解释器都会被读出来,无论是 conda 的还是非conda 的python 解释器,下来就很方便了
Run -> Open Configurations 就会出现如下 launch.json
比如 python 的运行命令如下:
python main.py --do_train --train_file AdvertiseGen/train.json --validation_file AdvertiseGen/dev.json --prompt_column content --response_column summary --overwrite_cache --model_name_or_path /mnt/e/new_AI_Chat_doc/large_model/chat-glm-model --output_dir output/adgen-chatglm-6b-pt-128-2e-2 --overwrite_output_dir --max_source_length 64 --max_target_length 64 --per_device_train_batch_size 1 --per_device_eval_batch_size 1 --gradient_accumulation_steps 16 --predict_with_generate --max_steps 3000 --logging_steps 10 --save_steps 1000 --learning_rate 2e-2 --pre_seq_len 128 --quantization_bit 4
按照如上方式,添加 args 选项,注意参数前面的 - - 是不能去掉的,如果写成 “train_file”, “AdvertiseGen/train.json”,那么它运行的时候,也会去掉 - -,按如下方式运行
python main.py train_file AdvertiseGen/train.json
那显然是跑不通的
我这里的 name 是 “Python: Current File”,那么它就会运行当前打开的文件,你也可以写成具体运行的文件名称
按键说明:
按键 | 说明 |
---|---|
F5 | 开始调试 |
F10 | 单步调试 |
F11 | 进入函数内部 |
F5 | 继续运行 |
调试过程中,如何查看变量,或者执行python 命令:
如上图,在第2个位置,就可以打印变量
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。