이 저장소는 유지 관리되지 않으며 보관되었습니다.
Donkeybot은 엔드투엔드 질문 응답 시스템입니다. 여러 데이터 소스, FAQ 테이블 및 BERT와 같은 전이 학습 언어 모델을 활용하여 Rucio 지원 질문에 답변합니다.
GSoC 2020에 따른 프로젝트의 목표는 자연어 처리(NLP)를 사용하여 Rucio 사용자에게 만족스러운 답변을 제공하고 특정 수준의 복잡성까지 지원 요청을 처리할 수 있는 지능형 봇 프로토타입을 개발하는 것입니다. 전문가.
Donkeybot은 필요에 따라 질문 답변 시스템으로 확장 및 적용할 수 있습니다. 특정 사용 사례 및 데이터에 Donkeybot을 사용하려면 코드를 변경해야 합니다. 현재 구현은 Rucio 특정 데이터 소스에 적용됩니다.
데이터 저장소 : Rucio 도메인별 데이터를 보관하는 데이터 저장소입니다. 모듈의 현재 구현은 빠른 프로토타이핑을 위해 SQLite에 있습니다. 데이터 소스에는 Rucio 사용자의 안전한 익명 지원 이메일, Rucio GitHub 문제 및 Rucio 문서가 포함됩니다.
질문 감지 : 주어진 텍스트에서 질문을 감지하고 추출하는 모듈입니다. 정규식을 활용하여 지원 이메일 및 GitHub 이슈에서 과거 질문을 추출하는 데 사용됩니다. 이러한 질문은 문서로 보관되며 다른 모듈에서 사용됩니다.
문서 검색 : 답변 감지 모듈에서 컨텍스트로 사용할 상위 n개의 가장 유사한 문서(이전에 질문한 질문 또는 Rucio 문서)를 검색하기 위해 BM25 알고리즘을 사용하는 검색 엔진 모듈입니다.
답변 감지 : 전이 학습 방식과 지도 방식을 모두 따르는 답변 감지 모듈입니다.
추가 기능은 다음과 같습니다.
FAQ 생성 GUI : 사용자는 제공된 GUI를 인터페이스로 사용하여 데이터 저장소와 상호 작용하고, FAQ 질문을 삽입하고, 검색 엔진을 다시 색인화하고, Donkeybot의 지식 기반을 확장할 수 있습니다.
이름 해싱 : Stanford의 NER 태거를 사용하여 지원 이메일에서 개인 사용자 정보를 감지하고 해시하는 스크립트입니다. 따라서 CERN의 개인 정보 보호 지침을 따르고 모든 데이터를 익명으로 유지합니다.
예제, 운영 세부정보 및 기타 정보는 전체 설명서를 참조하세요.
자세한 일정, 학생 정보, 직면한 문제, 향후 개선 제안, 독서 목록 등은 FAQ: GSoC를 참조하세요.
Donkeybot에게 직접 물어보세요!
슬랙봇 사용:
또는 CLI를 사용할 수 있습니다.
$ python . s cripts a sk_donkeybot.py
더 많은 예제와 정보는 사용 방법 섹션에서 확인할 수 있습니다.
1단계: PyTorch에는 64비트 Python 3.x 설치가 필요합니다.
2단계: PyTorch를 설치하려면 https://pytorch.org/로 가서 운영 체제에 따른 빠른 시작 가이드를 따르세요.
# versions used in development
torch == 1.6 . 0 - - find - links https : // download . pytorch . org / whl / torch_stable . html
torchvision == 0.7 . 0 - - find - links https : // download . pytorch . org / whl / torch_stable . html
3단계: 리포지토리를 개발 머신에 복제합니다.
$ git clone https://github.com/rucio/donkeybot.git
$ cd donkeybot
4단계: 추가 요구사항을 실행하려면 다음을 실행하세요.
$ pip install -r requirements.txt
5단계: Donkeybot의 데이터 저장소를 구축하고 채웁니다.
$ python scripts/build_donkeybot -t < GITHUB_API_TOKEN >
기여, 개발자 모드 시작 및 테스트에 대한 자세한 내용은 시작하기 페이지를 참조하세요.
버그, 질문 및 토론이 있는 경우 GitHub 문제를 사용하거나 @mageirakos 학생에게 문의하세요.
Apache 라이센스 버전 2.0에 따라 라이센스가 부여되었습니다.
http://www.apache.org/licenses/LICENSE-2.0