Skip to content

Installation guide

이 문서에서는 타 레포(예: SaigeSegmentation2, SaigeDefectGeneration 등)에서 SaigeToolkit을 설치하여 사용하는 방법에 대해 설명합니다.


Development

  • 다른 레포에서 SaigeToolkit을 패키지로 설치하여 사용할 때는 pip install을 활용합니다.
    • 아래와 같이 requirements/develop.txt를 작성해주세요.
      --trusted-host data.saige.in
      --find-links http://data.saige.in:8000/database_personal/research/python_packages/develop/SaigeToolkit
      SaigeToolkit>={version}
      (other libraries)
      
    • 그 후, pip install -r requirements/develop.txt 를 실행하면 SaigeToolkit이 설치됩니다.
    • SaigeToolkitResearchToolkit이 같이 설치됩니다.
  • 설치 후, 아래와 같이 import하여 사용할 수 있습니다.
    from SaigeToolkit.learning.trainer import BaseTrainer
    from ResearchToolkit.experiment.multiprocessing import MultiJobHandler
    

Deploy

  • SaigeToolkit을 사용하는 레포를 배포할 경우, 세이지 내부 저장소에서 cythonize 된 SaigeToolkit 패키지를 직접 설치할 수 있습니다.
    • requirements/deploy.txt를 deploy 용으로 별도로 작성합니다.
      --trusted-host data.saige.in
      --find-links http://data.saige.in:8000/database_personal/research/python_packages/deploy/SaigeToolkit
      SaigeToolkit>={version}
      (other libraries)
      
    • 그 후, pip install -r requirements/deploy.txt 를 실행하면 SaigeToolkit이 설치됩니다.
    • ResearchToolkit을 제외한 SaigeToolkit만 cythonize되어 설치됩니다.
    • 위와 같은 사항을 해당 레포의 배포 가이드("라이브러리 빌드")에 추가해주세요.

Docs

  • 타 레포에서 SaigeToolkit을 패키지로 설치하여 사용하고, 해당 레포의 docs에 SaigeToolkit의 api가 포함될 경우
    • 예를 들어, SaigeSegmentation2에서는 SaigeToolkit의 ImageProcessor, ROIHandlerAPI 등을 api로 제공하여 아래의 작업이 필요합니다.
    • 해당 레포의 azure-pipelines.yml에서 mkdocs 빌드 전, agent에 SaigeToolkit이 설치되어 있어야 합니다.
      • saigetoolkit을 "requirements.txt"에서 "saigetoolkit.txt" 파일로 분리해줍니다.
        git+https://dev.azure.com/SaigeResearch/Research/_git/SaigeToolkit@{hash}
        
      • CD_stage에서 기존의 "Build documentation" script 위에 아래와 같은 script를 추가합니다.
        # mkdocs 빌드 시, SaigeToolkit 설치 필요
        - script: |
            for file in $(find . -name saigetoolkit.txt)
            do
                sed -i -e "s/git+https:\/\/dev.azure.com\/SaigeResearch/git+https:\/\/$(System.AccessToken)@dev.azure.com\/SaigeResearch/g" $file
            done
        
            PACKAGEMODE=Docs pip install -r saigetoolkit.txt
        
            displayName: "Install SaigeToolkit"