「图文详解」Pycharm 远程服务器Debug

首先声明一点,社区版的无法使用,需要使用 专业版Pycharm 才可以使用,至于密钥可以去TB购入,价格低廉、有效期长

相信很多小伙伴会面临本地电脑显存不够,但是服务器代码又无法直观的调试,只能靠打日志的方法查看结果,对于普通程序员可能勉强够用,但是对于一名深度学习算法工程师而言,这真的一点也无法接受,因为算法工程师对变量的各个属性以及变量的维度变化十分看中,这个是靠打日志无法实现的,所以必须上远程Debug方法,目前采用此方法使用了大半年了,基本跟本地Debug 一样,在此整理分享给大家,此外也为了方便日后,自己查阅

文章目录

1、Tools -> Deployment 连接服务器

2、配置SFTP

通过上图点击 Configuration 进入 Deployment界面之后,首先点击左上角的 + 好,选择 SFTP添加,然后给服务起个 name,然后配置 SSH Configuration

对于第一次配置 SSH的小伙伴,在上图的2步骤点击右侧的 三个点,进入下图

以此填写 Host、Port、Username、Password

最后可以点击 Test Connection 进行链接测试,如果链接通了就说明成功了,点击OK即可

配置好图二之后,从Connection 切换到 Mappings子页,点击选中左侧的 SFTP链接,然后以此填写 Local Path本地代码路径 和 Deployment Path服务器部署代码路径,填写好之后,点击 OK即可

3、配置 Python Interpreter编译器

配置完 SFTP 文件映射之后,需要将服务器的编译器映射到Pycharm

点击 File-> Settings 进入下图

然后采用 SSH 添加Interpreter编译器

在弹出的窗口中依次填写服务器的 Host、Port、Username(此处的需要跟SFTP链接的同一台服务器)

输入密码

SSH 连接

连接成功之后,开始配置 Python Interpreter编译器,见下图所示,这里我选择的是加载conda编译器,首先需要找到conda的安装路径,将 Conda Executable设置成 conda 安装路径下的 condabin/conda文件地址,然后点击右侧的 Load Environments加载conda环境;可以在下方的 Use existing environment中看到创建的所有conda环境,选择对应的即可

最后将 Sync Folders 同步下项目的文件路径,点击右侧的文件夹按钮,会出现下方的同步设置

此处需要注意,本地的路径如果不存在的话,Pycharm并不会自动创建,所以需要提前创建好

4、上传下载操作

首先配置完上述设置之后,就可以对文件进行下载/上传操作了,有两种方法可以操作

  1. 选中项目文件夹/文件 直接鼠标右键找到 Deployment 进行上传下载

  2. 在工具栏中找到 Tools-> Deployment

5、自动上传服务器改动

注意: 此处如果是修改本地的文件夹名称,会将整个本地的文件夹上传到服务器,并不具备 git的版本管理工程,慎重修改文件名(可以服务器修改,本地同步)

代码的自动上传一般都是默认打开的,如下图红框

可以点击上方的绿框进行设置为手动上传

6、配置 cli 终端的命令参数

首先找到需要 Debug的脚本,然后鼠标点击右键调出设置,如下图

只需要在 More Run/Debug -> Modify Run Configuration

只需要将需要配置的参数填入下方的框中即可,可以拉大放入更多

7、SSH Terminal 终端映射

同理在 Files -> Settings 进入设置界面,找到 Tools -> SSH Terminal 即可选择使用本地的 Terminal 还是 服务器的 Terminal,为了比较出现乱码,记得将 Default Encoding 设置成 UTF-8

参考链接

  1. https://blog.csdn.net/fengbao24/article/details/125515542
  2. https://blog.csdn.net/ds1302__/article/details/120597769
相关推荐
摸鱼仙人~1 小时前
Attention Free Transformer (AFT)-2020论文笔记
论文阅读·深度学习·transformer
python算法(魔法师版)2 小时前
深度学习深度解析:从基础到前沿
人工智能·深度学习
小王子10242 小时前
设计模式Python版 组合模式
python·设计模式·组合模式
kakaZhui2 小时前
【llm对话系统】大模型源码分析之 LLaMA 位置编码 RoPE
人工智能·深度学习·chatgpt·aigc·llama
利刃大大2 小时前
【回溯+剪枝】找出所有子集的异或总和再求和 && 全排列Ⅱ
c++·算法·深度优先·剪枝
struggle20253 小时前
一个开源 GenBI AI 本地代理(确保本地数据安全),使数据驱动型团队能够与其数据进行互动,生成文本到 SQL、图表、电子表格、报告和 BI
人工智能·深度学习·目标检测·语言模型·自然语言处理·数据挖掘·集成学习
Rachela_z3 小时前
代码随想录算法训练营第十四天| 二叉树2
数据结构·算法
细嗅蔷薇@3 小时前
迪杰斯特拉(Dijkstra)算法
数据结构·算法
追求源于热爱!3 小时前
记5(一元逻辑回归+线性分类器+多元逻辑回归
算法·机器学习·逻辑回归
ElseWhereR3 小时前
C++ 写一个简单的加减法计算器
开发语言·c++·算法