본문 바로가기

Python

Python: pyragify와 NotebookLM을 활용한 프로젝트 분석

728x90
반응형

목적: 처음 접하는 programming repository에 대한 빠른 분석

 

Tool 들의 사용 이유:

  - NotebookLM : 자료 정리 및 질문에 대한 AI

  - pyragify         : 프로젝트를 NotebookLM에서 분석이 가능하도록 하나의 .txt 파일 도출

                            추가설명 -  .py 등의 파일 포맷이 NotebookLM에 사용이 불가능

                                              -> 프로젝트 코드들을 하나의 .txt 파일로 변환

 

사용 예제

  1. pyragify를 사용한 코드 추출 .txt 생성

    * 출처: pypi - https://pypi.org/project/pyragify/

    1) 설치

        * 설치하는 위치는, global하게 해도 되고, 가상환경에 설치해도 되며,

          추출할 프로젝트의 경로를 받아서 진행하기 때문에, 특정 프로젝트 내에 설치되어야 하는 것은 아님

        * uv 사용 권장

pip install uv
uv pip install pyragify

 

    2) config.yaml 파일 설정

       - 분석할 프로젝트 디렉토리 경로, 추출할 코드 파일, 추출 제외할 코드 파일, 사이즈 등을 설정 (아래 예시 파일 수정하여 사용)

repo_path: /path/to/repository
output_dir: /path/to/output
max_words: 200000
max_file_size: 10485760  # 10 MB
skip_patterns:
  - "*.log"
  - "*.tmp"
skip_dirs:
  - "__pycache__"
  - "node_modules"
verbose: false

 

    3) 코드 추출

uv run python -m pyragify --config-file config.yaml

     - remaing/chunk_0.txt, hashes.json, metadata.json 파일 생성됨

     -> remaing/chunk_0.txt를 사용

 

  2. NotebookLM을 통한 분석

   - 1에서 생성한 .txt 파일을 노트북 LM에 업로드하여 분석하여 사용

 

* 사용 예시 repository: https://github.com/Junanjunan/pyragify

728x90
반응형