O ambiente unificado de criação de corpus para modelos de idiomas.
langumo é um ambiente unificado de construção de corpus para modelos de idiomas . langumo fornece oleodutos para criar conjuntos de dados baseados em texto. A construção de conjuntos de dados requer pipelines complicados (por exemplo, análise, embaralhamento e tokenização). Além disso, se os corpora forem coletados de diferentes fontes, seria um problema extrair dados de vários formatos. langumo ajuda a criar um conjunto de dados com os diversos formatos simplesmente de uma só vez.
langumo pode ser instalado usando pip da seguinte forma:
$ pip install langumo Você pode instalar langumo a partir da fonte clonando o repositório e executando:
$ git clone https://github.com/affjljoo3581/langumo.git
$ cd langumo
$ python setup.py install Vamos construir um conjunto de dados da Wikipedia . Primeiro, instale langumo em seu ambiente virtual.
$ pip install langumo Depois de instalar langumo , crie um espaço de trabalho para usar no Build.
$ mkdir workspace
$ cd workspace Antes de criar o conjunto de dados, precisamos de um arquivo de despejo da Wikipedia (que é uma fonte do conjunto de dados). Você pode obter várias versões dos arquivos Wikipedia Dump daqui. Neste tutorial, usaremos uma parte do arquivo de despejo da Wikipedia. Faça o download do arquivo com seu navegador e vá para workspace/src . Ou use wget para obter o arquivo no terminal simplesmente:
$ wget -P src https://dumps.wikimedia.org/enwiki/20200901/enwiki-20200901-pages-articles1.xml-p1p30303.bz2 langumo precisa de um arquivo de configuração de compilação que contém os detalhes do conjunto de dados. Crie o arquivo build.yml no workspace e escreva a Bellows:
langumo :
inputs :
- path : src/enwiki-20200901-pages-articles1.xml-p1p30303.bz2
parser : langumo.parsers.WikipediaParser
build :
parsing :
num-workers : 8 # The number of CPU cores you have.
tokenization :
vocab-size : 32000 # The vocabulary size. Agora estamos prontos para criar nosso primeiro conjunto de dados. Run langumo !
$ langumoEntão você pode ver as saídas abaixo:
[*] import file from src/enwiki-20200901-pages-articles1.xml-p1p30303.bz2
[*] parse raw-formatted corpus file with WikipediaParser
[*] merge 1 files into one
[*] shuffle raw corpus file: 100%|██████████████████████████████| 118042/118042 [00:01<00:00, 96965.15it/s]
[00:00:10] Reading files (256 Mo) ███████████████████████████████████ 100
[00:00:00] Tokenize words ███████████████████████████████████ 418863 / 418863
[00:00:01] Count pairs ███████████████████████████████████ 418863 / 418863
[00:00:02] Compute merges ███████████████████████████████████ 28942 / 28942
[*] export the processed file to build/vocab.txt
[*] tokenize sentences with WordPiece model: 100%|███████████████| 236084/236084 [00:23<00:00, 9846.67it/s]
[*] split validation corpus - 23609 of 236084 lines
[*] export the processed file to build/corpus.train.txt
[*] export the processed file to build/corpus.eval.txt
Depois de construir o conjunto de dados, workspace conteria os arquivos abaixo:
workspace
├── build
│ ├── corpus.eval.txt
│ ├── corpus.train.txt
│ └── vocab.txt
├── src
│ └── enwiki-20200901-pages-articles1.xml-p1p30303.bz2
└── build.yml
usage: langumo [-h] [config]
The unified corpus building environment for Language Models.
positional arguments:
config langumo build configuration
optional arguments:
-h, --help show this help message and exit
Você pode encontrar a documentação langumo no site.
langumo é o Apache-2.0 licenciado.