[argparse] Python 스크립트 실행 시 인자 값 전달하기

2023. 8. 13. 15:00·Python
반응형

argparse에 대해 학습 후 정리한 포스팅 입니다.

 

이번 포스팅에서는 argparse를 활용한 Python 스크립트 실행 시 인자값 전달하는 방법에 대해 학습합니다.

 

 

I) argparse 란?

`argparse`는 파이썬에서 커맨드 라인 인자를 파싱하고 처리하는 라이브러리입니다. 

 

 

 

 

 

II) AI 모델에서 argparse 

AI 모델에서는 `argparse`를 사용하여 스크립트를 실행할 때 모델 아키텍처, 하이퍼파라미터, 입력 데이터 경로, 출력 경로 등의 설정을 사용자가 지정할 수 있도록 할 수 있습니다. 

이를 통해 AI 모델이 더 다양한 상황에서 사용 가능하고 사용자 친화적인 모델이 됩니다.

 

 

 

 

 

III) argparse를 활용한 코드

import argparse

# argparse: 명령줄 인수를 파싱하는 기능을 제공하는 모듈. argparse.ArgumentParser: ArgumentParser 객체를 생성
parser = argparse.ArgumentParser(description='Argparse Test')

# add_argument()를 통해서 parser 객체에 인자에 대한 정보를 입력/ type, default, help 옵션 존재
parser.add_argument('--model', type=str, default='VGGNet', help = 'model_name'))
parser.add_argument('--epoch', type=int, default= 1000, help = 'epoch_size')
parser.add_argument('--batch_size',type=int, default=128, help = 'batch_size')
parser.add_argument('--random_seed',type=int, default=1, help = 'random_seed')

# parse_args()를 통해서 입력받은 인자를 파싱하고 args에 저장, args객체를 통해 인수에 접근 가능
args = parser.parse_args()

# 입력받은 인자값 출력
print(args.model)
print(args.epoch)
print(args.batch_size)
print(args.random_seed)

 

  • 터미널에서 실행
$ python main.py

> VGGNet
> 1000
> 128
> 1

# 세부 내용 확인
$ python main.py -help

# 입력 값 적용
$ python main.py --model='CNN' --epoch=2000 --batch_size=256 --random_seed=8
 
> 'CNN'
> 2000
> 256
> 8

 

  • 쉘 스크립트 파일로 실행 (bash main.sh)
#!/bin/bash
for i in {1..40}
    do
        python main.py --model 'LeNet' --epoch=2000 --baatchsize=256 --radnom_seed= $i
    done

40개의 radom_seed로 코드를 각각 실행하는 예시

 

 

 

 

 

 

 

ref:

[ python ] argparse 사용 방법. 예제.

 

[ python ] argparse 사용 방법. 예제.

[ python ] argparse 사용 방법. 예제. 머신러닝 모델의 하이퍼 파라미터를 쉽게 관리할 수 있다. 파이썬 3.7 기준 사용법 먼저, 다음과 같은 python file 을 만든다. import argparse # 인자값을 받을 수 있는 인

supermemi.tistory.com

[Python] argparse 사용법 (파이썬 인자값 추가하기)

 

[Python] argparse 사용법 (파이썬 인자값 추가하기)

파이썬 스크립트를 개발할 때, 호출 당시 인자값을 줘서 동작을 다르게 하고 싶은 경우가 있습니다. 이때, 파이썬 내장함수인 argparse 모듈을 사용하여 원하는 기능을 개발할 수 있습니다.아래 설

brownbears.tistory.com

 

 

 

<Summary>

- 데이터프레임 (argparse를 활용하여 Python 스크립트 실행 시 인자값 전달하기)

 

 

 

*유의사항

- AI 산업기능요원이 공부하여 남긴 정리입니다.

반응형
저작자표시 (새창열림)

'Python' 카테고리의 다른 글

[tqdm] 진행 상황 표시 모듈  (0) 2023.08.16
[PyTorch] AI 모델 저장 & 불러오기  (0) 2023.08.15
[DataFrame] Pandas DataFrame 다루기 - iloc & loc, 값 변경  (0) 2023.08.12
[DataFrame] Pandas DataFrame 다루기 - 특징, 생성, column 수정, index 수정  (0) 2023.08.11
[파이썬] 정렬 함수 (sort VS sorted)  (1) 2023.02.04
'Python' 카테고리의 다른 글
  • [tqdm] 진행 상황 표시 모듈
  • [PyTorch] AI 모델 저장 & 불러오기
  • [DataFrame] Pandas DataFrame 다루기 - iloc & loc, 값 변경
  • [DataFrame] Pandas DataFrame 다루기 - 특징, 생성, column 수정, index 수정
성 언
성 언
AI 학과 3학년 학생이자 RAG 기반 LLM 챗봇 개발 회사에서 근무 중입니다. AI 챗봇 개발과 관련된 기술, 연구, 그리고 실험 과정에서 얻은 인사이트를 공유합니다. 최신 AI 기술을 함께 탐구하며 성장해 나가요!
    반응형
  • 성 언
    AI EON
    성 언
  • 전체
    오늘
    어제
    • AII
      • NLP
      • AI Paper Review
      • MLOps
      • Python
      • Algorithm
      • Memo
      • Server Developer
        • Node.js
        • DataBase&Data Engineering
        • Server Basic
      • MATH
        • Linear Algebra
        • AI
      • etc
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    umc
    [Numpy] squeeze & unsqueeze
    스택
    c++
    transaction
    알고리즘
    docx-template
    트랜잭션
    node.js
    문서 자동화
    Signature 초격차 패키지
    배타 잠금
    Python
    패스트캠퍼스 수강 후기
    map 함수
    Ubuntu-20.04 APM 소스 설치
    그리디 알고리즘
    더티 쓰기
    더티 읽기
    word 자동화
    리랭커
    비반복 읽기
    배열의 모양 변경
    파이썬 문서 자동화
    팬텀 읽기
    reranker
    NVML
    백준
    파이썬
    다중 버전 동시성 제어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
성 언
[argparse] Python 스크립트 실행 시 인자 값 전달하기
상단으로

티스토리툴바