프로젝트 구조 소개
이 문서는 팀 레포지토리의 구조에 대해 서술합니다.
최상위 폴더
-
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, 라이센스 고지, 로고 등