Hydra Logo

프로젝트 구조 소개

이 문서는 팀 레포지토리의 구조에 대해 서술합니다.

최상위 폴더

  • install.sh 개발 환경을 자동으로 구축하도록 도와주는 Shell Script입니다. minjae1025(박민재)에 의해 작성되었습니다. 자세한 사항은 설치 스크립트 소개 페이지를 확인하십시오.

  • test.py ChatterBot에서 제공하는 테스트용 Python 프로그램입니다. 영문 데이터셋을 로드하여 학습하고 간단한 대화를 나눌 수 있는 기능을 갖고 있습니다. install.sh를 이용한 설치 이후 확인용으로 사용합니다. 별도의 옵션 없이 단순히 실행하여 결과를 확인할 수 있습니다.

  • dev-requirements.txt, requirements.txt 의존성을 가진 라이브러리 목록입니다. PyPI(pip 커맨드)를 통해 설치할 때 참조되며, install.sh에서도 참조하여 설치를 진행합니다.

/chatterbot

ChatterBot 라이브러리의 코어가 위치한 폴더입니다. 즉, 데이터셋 학습 및 입력에 따른 반응 도출 등 챗봇이 수행해야 하는 작업에 대한 로직이 포함되어 있습니다.

/chatterbot_corpus

ChatterBot의 학습 데이터셋이 존재하는 폴더입니다. ChatterBot 원본 레포지토리와 달리 별도의 레포지토리에서 관리되며, 팀 레포지토리에서는 ChatterBot의 일부로 포함되었습니다. 실제 데이터셋은 /data 내부에 위치해 있고, 언어 별로 폴더가 구분되어 있으며, 각 폴더 내에서도 대화 주제 별로 파일이 분리되어 있습니다.

예를 들어, 한국어 데이터셋은 data/korean 폴더에 위치해 있으며, 그 중 인사와 관련된 데이터셋은 data/korean/greetings.yml에서 확인할 수 있습니다.

/cbextras, /cbsextras

각각 ChatterBot과 Corpus의 코어를 제외한 항목들이 들어있는 폴더입니다. 본래 모듈에 포함되어 있는 요소이나, 팀 레포지토리에서는 핵심 요소를 더 쉽게 탐색하기 위해 분리하였습니다. 여기에 해당되는 항목들은 다음과 같습니다.

  • 문서 파일 (docs)
  • 테스트 파일 (tests, tests_django)
  • 예제 파일 (examples)
  • 모듈 설정 파일
  • 원본 README, 라이센스 고지, 로고 등