github와 함께 google colaboratory에서 MLflow를 사용하여 편안한 환경 구축: VS 코드

소개



이전 기사에서 기계 학습 실험을 수행할 수 있는 아늑한 환경을 구축했습니다.
  • google colaboratory(실험을 수행하기 위해)
  • github (각 실험의 소스코드 및 정보 관리)
  • ngrok(mlflow 창에 연결하기 위해)

  • 나쁘지는 않은데 환경이 조금 좁은게 얼마나 아늑하던지. 두 가지 이유가 있습니다.
  • Google Colab의 텍스트 편집기가 편안하지 않습니다.
  • 매번 커밋하고 푸시할 때 일부 셀을 실행하는 것이 번거롭습니다.

  • google colab pro [ ] 계정을 사면 단말기를 사용할 수 있는데 그런 번거로움을 제외하고는 지금은 pro 계정이 필요하지 않습니다. 그럼 어떻게 해야 할까요? 답변 중 하나는 Google Colab을 사용하는 vscode입니다.

    저는 보통 Windows 10을 사용하며 다음 설명은 Windows용입니다.

    프로세스



    컴퓨터에 vs code가 설치되어 있다고 가정하겠습니다.

    클라우드플레어 다운로드 중



    1.[ cloudflare zero trust ]에서 실행 파일을 다운로드합니다.

    2. 파일 이름을 cloudflare.exe로 변경

    대 코드에 remote-ssh 확장 설치



    1. 실행 대 코드

    2.remote-ssh 확장 설치
    Ctrl + Shift + X 을 누르면 확장 프로그램 탭이 열립니다. 아래와 같이 검색창에 remote ssh를 입력하면 확장자가 나옵니다.



    거기는! 이미 받았기 때문에 사진의 확장 프로그램에 녹색 설치 버튼이 없는데 녹색 설치 버튼을 클릭하면 설치됩니다.

    3. ssh 구성 설정
    config 와 같은 홈 디렉토리에 ~/.ssh/config 파일이 있습니다. 파일은 다음과 같아야 합니다.

    Host *.trycloudflare.com
        HostName %h
        User root
        Port 22
        ProxyCommand <absolute path to cloudflare.exe> access ssh --hostname %h
    


    내 경우에는 C 디렉토리에 cloudflare.exe를 넣었으므로 ProxyCommand 줄은 ProxyCommand C:\\cloudflared.exe access ssh --hostname %h 입니다.

    구성 데이터 준비



    1.구글 드라이브에 config 디렉토리 생성

    2.general_config.yaml를 생성하고 config 디렉토리에 업로드합니다.
    general_config.yaml에는 다음 정보가 있어야 합니다.

    github:
      username: username
      email: email
      token: access token
    cloudflare:
      password: password_you_decided
    

    tokengithub 블록 클라우드는 [ Creating a personal access token ]을 따라 얻을 수 있습니다.

    새로운 Google Colab 노트북 만들기



    1. 코드에서 Google Colab에 액세스하기 위해 새로운 Google Colab 노트북을 만듭니다.

    2. 다음 코드 실행

    # Prepare environment
    !pip install colab_ssh --upgrade
    
    # Import necessary modules
    import os
    from colab_ssh import launch_ssh_cloudflared
    from google.colab import drive
    import yaml
    
    # Mount my google drive
    drive_path = "/content/gdrive"
    drive.mount(drive_path)
    
    # Load general config
    config_path = os.path.join(drive_path, "MyDrive", "config", "general_config.yaml")
    with open(config_path, 'r') as yml:
      config = yaml.safe_load(yml)
    
    # Set git config
    config_github = config["github"]
    !git config --global user.email {config_github["email"]}
    !git config --global user.name {config_github["username"]}
    
    # Create symbolic link
    !ln -sfn /content/gdrive/MyDrive/ /root/workspace
    
    # Launch ssh cloudflare
    launch_ssh_cloudflared(password=config["cloudflare"]["password"])
    


    출력된 셀에는 다음과 같은 정보가 있습니다.



    3.VSCode Remote SSH 블록에 URL 복사

    vs 코드에서 Google Colab에 액세스



    1.Ctrl + Shift + P를 눌러 vs code에서 명령 팔레트를 엽니다.

    2. 상자에 Remote-SSH: Connect to Host...를 입력하고 Enter 키를 누릅니다.

    3. 복사한 URL을 상자에 입력하고 Enter 키를 누릅니다.

    4. 상자에 Continue를 입력하고 Enter 키를 누릅니다.

    5. 상자에 general_config.yaml에 적힌 비밀번호를 입력하고 엔터를 누릅니다.

    우리는 거기에 갈! vs 코드는 이미 구글 코랩에 접속되어 있습니다. Ctrl + Shift + @를 누른 다음 python -V 또는 pip list를 입력합니다. Google Colab 노트북에서 동일한 코드를 실행할 때와 동일한 출력을 볼 수 있습니다.

    결론



    이제 vs 코드의 모든 파일을 편집하고 vs 코드의 터미널에서 커밋 및 푸시할 수 있습니다. 저에게는 상당히 아늑합니다. 또한 이전 글에서 조금 소개해드린 mlflow를 클라우드로 사용하고 있습니다. 터미널에서 mlflow ui를 실행하고 출력된 URL을 브라우저에서 여십시오.

    누군가 아래 토론 상자에서 팁을 공유하면 감사하겠습니다.

    좋은 웹페이지 즐겨찾기