
“梦所用之笔头上生花后天才赡逸 梦所用之笔头上生花后天才赡逸, ,, 名闻天下。”—— 王仁裕《开元天宝遗事 · 梦笔头生花》
Textbox 2.0 : 미리 훈련 된 언어 모델이있는 텍스트 생성 라이브러리
Textbox 2.0은 Python 및 Pytorch를 기반으로 한 최신 텍스트 생성 라이브러리로, 사전 훈련 된 언어 모델을 텍스트 생성에 적용하기위한 통합 및 표준화 된 파이프 라인 구축에 중점을 둡니다.
이전 버전의 텍스트 박스와 비교 하여이 확장은 주로 PLM 기반 텍스트 생성 모델을 더 잘 지원하기 위해 통합적이고 유연하며 표준화 된 프레임 워크를 구축하는 데 중점을 둡니다. Textbox 2.0에는 다음과 같은 세 가지 장점이 있습니다.

Textbox 2.0의 전체 프레임 워크
수정 된 버전의 트랜스포머가 설치 될 것이라는 점을 고려하면 새로운 콘다 환경을 만드는 것이 좋습니다.
conda create -n TextBox python=3.8그런 다음 저장소를 복제하여 원 클릭으로 설치할 수 있습니다.
git clone https://github.com/RUCAIBox/TextBox.git && cd TextBox
bash install.sh files2rouge 설치할 때 ROUGE-1.5.5.pl - XML::Parser dependency error 에 직면하면이 문제를 참조 할 수 있습니다.
엔드 투 엔드 파이프 라인에서 텍스트 박스 2.0을 실행하는 스크립트 템플릿입니다.
python run_textbox.py --model= < model-name > --dataset= < dataset-name > --model_path= < hf-or-local-path > 대체 --model=<xxx> , --dataset=<xxx> 및 --model_path=<xxx> 선택하십시오.
model 과 model_path 의 선택은 모델에서 찾을 수 있습니다. 해당 페이지에서 각 모델의 자세한 지침을 제공합니다.
dataset 의 선택은 데이터 세트에서 찾을 수 있습니다. https://huggingface.co/rucaibox에서 데이터 세트를 다운로드하고 다운로드 된 데이터 세트를 Samsum과 같은 dataset 폴더 아래에 넣어야합니다. 자신의 데이터 세트를 사용하려면 여기를 참조하십시오.
아래 스크립트는 samsum 데이터 세트에서 Facebook BART-base 모델을 실행합니다.
python run_textbox.py --model=BART --dataset=samsum --model_path=facebook/bart-base기본 교육을 위해서는 Optimizer, Scheduler, Validation Frequency, Early Stopping 등과 같은 일반적으로 사용되는 매개 변수를 설정하기위한 자세한 튜토리얼 (여기)을 제공합니다.
Textbox 2.0은 언어 모델링, 마스크 시퀀스-시퀀스 모델링, 자동 인코딩 및 마스크 된 스팬 예측을 포함하여 사용자가 처음부터 모델을 미리 훈련 할 수 있도록 4 가지 사전 훈련 목표를 제공합니다. 자세한 자습서는 사전 훈련 문서를 참조하십시오.
PLM의 최적화를 개선하기위한 4 가지 유용한 훈련 방법이 제공됩니다 : 분산 데이터 병렬, 효율적인 디코딩, 하이퍼 매개 변수 최적화 및 반복 실험. 자세한 지침은 여기에 제공됩니다.
Textbox 2.0은 텍스트 생성에 대한 PLM의 빠른 진행을 지원하기 위해 일반, 번역, 중국어, 대화식, 제어 가능, 증류, 프롬프트 및 경량 모델 (모듈)의 범주를 다루는 47 개의 모델/모듈을 통합합니다. 각 모델, 미리 훈련 된 모델 매개 변수 및 생성 매개 변수의 자세한 사용 지침에 대한 정보는 모델 문서를 참조하십시오.
이제 우리는 13 개의 세대 작업 (예 : 번역 및 스토리 생성) 및 해당 83 개의 데이터 세트를 지원합니다. 또한 각 데이터 세트에 대한 설명, 기본 통계, 교육/검증/테스트 샘플 및 리더 보드도 제공합니다. 자세한 내용은 여기를 참조하십시오.
Textbox 2.0은 4 개의 범주 17 개의 자동 메트릭과 다양한 시각화 도구를 지원하여 생성 된 텍스트를 다양한 차원에서 탐색하고 분석합니다. 평가 세부 사항은 평가 문서를 참조하십시오.
| 릴리스 | 날짜 | 특징 |
|---|---|---|
| v2.0.1 | 24/12/2022 | 텍스트 박스 2.0 |
| v2.0.0 | 20/08/2022 | 텍스트 박스 2.0 베타 |
| v0.2.1 | 15/04/2021 | 텍스트 상자 |
| v0.1.5 | 01/11/2021 | 기본 텍스트 상자 |
버그가 발생하거나 문제를 제기하여 제안이 있으면 알려주십시오.
우리는 버그 수정에서 새로운 기능 및 확장에 이르기까지 모든 기여를 환영합니다.
우리는 이슈 트래커에서 논의 된 모든 기여와 PRS를 통과 할 것으로 예상합니다.
HRED 모델과 여러 평가 지표에 기여한 @LucastSui0725에 감사드립니다.
변압기 API에서 Pointernet과 20 개 이상의 언어 모델에 기여한 @WXDAI에 감사드립니다.
TextBox는 AI Box에서 개발 및 유지 관리됩니다.
TextBox는 MIT 라이센스를 사용합니다.
연구 또는 개발에 유용한 TextBox 2.0이 다음과 같은 논문을 인용하십시오.
@inproceedings{tang-etal-2022-textbox,
title = "{T}ext{B}ox 2.0: A Text Generation Library with Pre-trained Language Models",
author = "Tang, Tianyi and Li, Junyi and Chen, Zhipeng and Hu, Yiwen and Yu, Zhuohao and Dai, Wenxun and Zhao, Wayne Xin and Nie, Jian-yun and Wen, Ji-rong",
booktitle = "Proceedings of the The 2022 Conference on Empirical Methods in Natural Language Processing: System Demonstrations",
month = dec,
year = "2022",
address = "Abu Dhabi, UAE",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2022.emnlp-demos.42",
pages = "435--444",
}
@inproceedings{textbox,
title = "{T}ext{B}ox: A Unified, Modularized, and Extensible Framework for Text Generation",
author = "Li, Junyi and Tang, Tianyi and He, Gaole and Jiang, Jinhao and Hu, Xiaoxuan and Xie, Puzhao and Chen, Zhipeng and Yu, Zhuohao and Zhao, Wayne Xin and Wen, Ji-Rong",
booktitle = "Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing: System Demonstrations",
month = aug,
year = "2021",
address = "Online",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2021.acl-demo.4",
doi = "10.18653/v1/2021.acl-demo.4",
pages = "30--39",
}