Phase 00 - Lesson 08

Configuração do Editor

Seu editor é seu copiloto. Configure-o uma vez para que ele saia do seu caminho e comece a contribuir.

Tipo: Build Linguagens: -- Pré-requisitos: Fase 0, Lição 01 Tempo: ~20 minutos

Objetivos de Aprendizagem

  • Instalar o VS Code com extensões essenciais para Python, Jupyter, linting e SSH remoto
  • Configurar formatação ao salvar, verificação de tipos e rolagem de saída de notebooks para fluxos de trabalho de IA
  • Configurar o Remote SSH para editar e depurar código em máquinas GPU remotas como se fossem locais
  • Avaliar editores alternativos (Cursor, Windsurf, Neovim) e seus tradeoffs para o trabalho com IA

O Problema

Você passará milhares de horas dentro do seu editor escrevendo Python, rodando notebooks, depurando loops de treinamento e acessando máquinas GPU por SSH. Um editor mal configurado transforma cada sessão em atrito: sem autocompletar, sem dicas de tipo, sem erros inline, formatação manual e um fluxo de trabalho de terminal desajeitado.

A configuração certa leva 20 minutos. Pular essa etapa custa 20 minutos todos os dias.

O Conceito

Uma configuração de editor para engenharia de IA precisa de cinco coisas:

graph TD
    L5["5. Remote Development<br/>SSH into GPU boxes, cloud VMs"] --> L4
    L4["4. Terminal Integration<br/>Run scripts, debug, monitor GPU"] --> L3
    L3["3. AI-Specific Settings<br/>Auto-format, type checking, rulers"] --> L2
    L2["2. Extensions<br/>Python, Jupyter, Pylance, GitLens"] --> L1
    L1["1. Base Editor<br/>VS Code — free, extensible, universal"]

Mãos à Obra

Passo 1: Instalar o VS Code

O VS Code é o editor recomendado. É gratuito, roda em todos os sistemas operacionais, tem suporte de primeira classe a notebooks Jupyter, e o ecossistema de extensões cobre tudo o que você precisa para o trabalho com IA.

Baixe-o em code.visualstudio.com.

Verifique a partir do terminal:

code --version

Se code não for encontrado no macOS, abra o VS Code, pressione Cmd+Shift+P, digite "Shell Command" e selecione "Install 'code' command in PATH".

Passo 2: Instalar as Extensões Essenciais

Abra o terminal integrado no VS Code (Ctrl+`` ou Cmd+`) e instale as extensões que importam para o trabalho com IA:

code --install-extension ms-python.python
code --install-extension ms-python.vscode-pylance
code --install-extension ms-toolsai.jupyter
code --install-extension eamodio.gitlens
code --install-extension ms-vscode-remote.remote-ssh
code --install-extension ms-python.debugpy
code --install-extension ms-python.black-formatter
code --install-extension charliermarsh.ruff

O que cada uma faz:

Extensão Por quê
Python Suporte à linguagem, detecção de ambiente virtual, run/debug
Pylance Verificação de tipos rápida, autocompletar, resolução de imports
Jupyter Rodar notebooks dentro do VS Code, explorador de variáveis
GitLens Ver quem alterou o quê, git blame inline
Remote SSH Abrir uma pasta em uma máquina GPU remota como se fosse local
Debugpy Depuração passo a passo para Python
Black Formatter Formatação automática ao salvar, estilo consistente
Ruff Linting rápido, detecta erros comuns

O arquivo code/.vscode/extensions.json nesta lição contém a lista completa de recomendações. Ao abrir a pasta do projeto, o VS Code solicitará que você as instale.

Passo 3: Configurar as Settings

Copie as configurações de code/.vscode/settings.json nesta lição, ou aplique-as manualmente através de Settings > Open Settings (JSON).

As configurações-chave para o trabalho com IA:

{
    "python.analysis.typeCheckingMode": "basic",
    "editor.formatOnSave": true,
    "editor.rulers": [88, 120],
    "notebook.output.scrolling": true,
    "files.autoSave": "afterDelay"
}

Por que elas importam:

  • Verificação de tipos no modo basic: Detecta tipos de argumento errados antes de você rodar. Economiza tempo de depuração em incompatibilidades de shape de tensores e parâmetros de API errados.
  • Formatação ao salvar: Nunca mais pense em formatação. O Black cuida disso.
  • Rulers em 88 e 120: O Black quebra em 88. O marcador de 120 mostra quando docstrings e comentários estão ficando longos demais.
  • Rolagem de saída de notebook: Loops de treinamento imprimem milhares de linhas. Sem rolagem, o painel de saída explode.
  • Auto-save: Você vai esquecer de salvar. Seu script de treinamento vai rodar código desatualizado. O auto-save evita isso.

Passo 4: Integração com o Terminal

O terminal integrado do VS Code é onde você roda scripts de treinamento, monitora GPUs e gerencia ambientes.

Configure-o corretamente:

{
    "terminal.integrated.defaultProfile.osx": "zsh",
    "terminal.integrated.defaultProfile.linux": "bash",
    "terminal.integrated.fontSize": 13,
    "terminal.integrated.scrollback": 10000
}

Atalhos úteis:

Ação macOS Linux/Windows
Alternar terminal Ctrl+` Ctrl+`
Novo terminal Ctrl+Shift+`` Ctrl+Shift+``
Dividir terminal Cmd+\ Ctrl+\

Terminais divididos são úteis: um para rodar seu script, outro para monitorar a GPU com nvidia-smi -l 1 ou watch -n 1 nvidia-smi.

Passo 5: Desenvolvimento Remoto (SSH para Máquinas GPU)

Esta é a extensão mais importante para o trabalho com IA. Você rodará treinamentos em máquinas remotas (VMs na nuvem, servidores de laboratório, Lambda, Vast.ai). O Remote SSH permite abrir o sistema de arquivos remoto, editar arquivos, rodar terminais e depurar como se tudo fosse local.

Configuração:

  1. Instale a extensão Remote SSH (feito no Passo 2).
  2. Pressione Ctrl+Shift+P (ou Cmd+Shift+P), digite "Remote-SSH: Connect to Host".
  3. Insira user@your-gpu-box-ip.
  4. O VS Code instala seu componente de servidor na máquina remota automaticamente.

Para acesso sem senha, configure chaves SSH:

ssh-keygen -t ed25519 -C "your-email@example.com"
ssh-copy-id user@your-gpu-box-ip

Adicione o host a ~/.ssh/config por conveniência:

Host gpu-box
    HostName 203.0.113.50
    User ubuntu
    IdentityFile ~/.ssh/id_ed25519
    ForwardAgent yes

Agora Remote-SSH: Connect to Host > gpu-box conecta instantaneamente.

Alternativas

Cursor

O cursor.com é um fork do VS Code com geração de código por IA integrada. Ele usa o mesmo ecossistema de extensões e formato de configurações. Se você usa o Cursor, tudo nesta lição ainda se aplica. Importe os mesmos settings.json e extensions.json.

Windsurf

O windsurf.com é outro fork do VS Code com foco em IA. A mesma história: mesmas extensões, mesmo formato de configurações, mesmo suporte a Remote SSH.

Vim/Neovim

Se você já usa Vim ou Neovim e é produtivo nele, fique nele. A configuração mínima para trabalho com Python em IA:

  • pyright ou pylsp para verificação de tipos (via Mason ou instalação manual)
  • nvim-lspconfig para integração com language servers
  • jupyter-vim ou molten-nvim para execução estilo notebook
  • telescope.nvim para busca de arquivos/símbolos
  • none-ls.nvim com black e ruff para formatação/linting

Se você ainda não usa Vim, não comece agora. A curva de aprendizado vai competir com o aprendizado de engenharia de IA. Use o VS Code.

Use Isso

Com esta configuração, seu fluxo de trabalho diário fica assim:

  1. Abra a pasta do projeto no VS Code (ou conecte via Remote SSH a uma máquina GPU).
  2. Escreva Python no editor com autocompletar, dicas de tipo e erros inline.
  3. Rode notebooks Jupyter inline com a extensão Jupyter.
  4. Use o terminal integrado para scripts de treinamento, uv pip install e monitoramento de GPU.
  5. Revise as mudanças com o GitLens antes de fazer commit.

Exercícios

  1. Instale o VS Code e todas as extensões listadas no Passo 2
  2. Copie o settings.json desta lição para a sua configuração do VS Code
  3. Abra um arquivo Python e verifique se o Pylance mostra dicas de tipo e se o Black formata ao salvar
  4. Se você tiver acesso a uma máquina remota, configure o Remote SSH e abra uma pasta nela

Termos-Chave

Termo O que as pessoas dizem O que realmente significa
LSP "Motor de autocompletar" Language Server Protocol: um padrão para editores obterem informações de tipo, sugestões e diagnósticos a partir de um servidor específico da linguagem
Pylance "O plugin do Python" O language server de Python da Microsoft, que usa o Pyright para verificação de tipos e IntelliSense
Remote SSH "Trabalhar no servidor" Extensão do VS Code que roda um servidor leve em uma máquina remota e transmite a interface para o seu editor local
Formatação ao salvar "Auto-prettier" O editor roda um formatador (Black, Ruff) toda vez que você salva, então o estilo do código é sempre consistente
0 lifetime access. Curriculum based on AI Engineering from Scratch by Rohit Ghumare (MIT, used under attribution).