Spaces:
Runtime error
Runtime error
freemt
commited on
Commit
β’
b78ad07
0
Parent(s):
First commit
Browse files- .flake8 +19 -0
- .github/workflows/codeql-analysis.yml +67 -0
- .github/workflows/routine-tests.yml +30 -0
- LICENSE +21 -0
- README.md +26 -0
- convbot/__init__.py +5 -0
- convbot/convbot.py +124 -0
- nodemon.json +21 -0
- package.json +27 -0
- poetry.lock +869 -0
- pyproject.toml +39 -0
- pyrightconfig.json +9 -0
- pytest.ini +3 -0
- rsync-from-acone3.bat +1 -0
- rundown.bat_ +41 -0
- tbump.toml +44 -0
- tests/__init__.py +1 -0
- tests/test_convbot.py +22 -0
.flake8
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
[flake8]
|
2 |
+
ignore =
|
3 |
+
D203,
|
4 |
+
# line too long
|
5 |
+
E501
|
6 |
+
per-file-ignores =
|
7 |
+
# imported but unused
|
8 |
+
# __init__.py: F401
|
9 |
+
test_*.py: F401
|
10 |
+
exclude =
|
11 |
+
.git,
|
12 |
+
__pycache__,
|
13 |
+
docs/source/conf.py,
|
14 |
+
old,
|
15 |
+
build,
|
16 |
+
dist,
|
17 |
+
.venv
|
18 |
+
pad*.py
|
19 |
+
max-complexity = 25
|
.github/workflows/codeql-analysis.yml
ADDED
@@ -0,0 +1,67 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# For most projects, this workflow file will not need changing; you simply need
|
2 |
+
# to commit it to your repository.
|
3 |
+
#
|
4 |
+
# You may wish to alter this file to override the set of languages analyzed,
|
5 |
+
# or to provide custom queries or build logic.
|
6 |
+
#
|
7 |
+
# ******** NOTE ********
|
8 |
+
# We have attempted to detect the languages in your repository. Please check
|
9 |
+
# the `language` matrix defined below to confirm you have the correct set of
|
10 |
+
# supported CodeQL languages.
|
11 |
+
#
|
12 |
+
name: "CodeQL"
|
13 |
+
|
14 |
+
on:
|
15 |
+
push:
|
16 |
+
branches: [ master ]
|
17 |
+
pull_request:
|
18 |
+
# The branches below must be a subset of the branches above
|
19 |
+
branches: [ master ]
|
20 |
+
schedule:
|
21 |
+
- cron: '16 15 * * 2'
|
22 |
+
|
23 |
+
jobs:
|
24 |
+
analyze:
|
25 |
+
name: Analyze
|
26 |
+
runs-on: ubuntu-latest
|
27 |
+
|
28 |
+
strategy:
|
29 |
+
fail-fast: false
|
30 |
+
matrix:
|
31 |
+
language: [ 'python' ]
|
32 |
+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
|
33 |
+
# Learn more:
|
34 |
+
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
|
35 |
+
|
36 |
+
steps:
|
37 |
+
- name: Checkout repository
|
38 |
+
uses: actions/checkout@v2
|
39 |
+
|
40 |
+
# Initializes the CodeQL tools for scanning.
|
41 |
+
- name: Initialize CodeQL
|
42 |
+
uses: github/codeql-action/init@v1
|
43 |
+
with:
|
44 |
+
languages: ${{ matrix.language }}
|
45 |
+
# If you wish to specify custom queries, you can do so here or in a config file.
|
46 |
+
# By default, queries listed here will override any specified in a config file.
|
47 |
+
# Prefix the list here with "+" to use these queries and those in the config file.
|
48 |
+
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
49 |
+
|
50 |
+
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
51 |
+
# If this step fails, then you should remove it and run the build manually (see below)
|
52 |
+
- name: Autobuild
|
53 |
+
uses: github/codeql-action/autobuild@v1
|
54 |
+
|
55 |
+
# βΉοΈ Command-line programs to run using the OS shell.
|
56 |
+
# π https://git.io/JvXDl
|
57 |
+
|
58 |
+
# βοΈ If the Autobuild fails above, remove it and uncomment the following three lines
|
59 |
+
# and modify them (or add more) to build your code if your project
|
60 |
+
# uses a compiled language
|
61 |
+
|
62 |
+
#- run: |
|
63 |
+
# make bootstrap
|
64 |
+
# make release
|
65 |
+
|
66 |
+
- name: Perform CodeQL Analysis
|
67 |
+
uses: github/codeql-action/analyze@v1
|
.github/workflows/routine-tests.yml
ADDED
@@ -0,0 +1,30 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
name: tests
|
2 |
+
|
3 |
+
on:
|
4 |
+
push:
|
5 |
+
|
6 |
+
jobs:
|
7 |
+
flake8-pytest:
|
8 |
+
strategy:
|
9 |
+
fail-fast: false
|
10 |
+
matrix:
|
11 |
+
python-version: [3.7, 3.8]
|
12 |
+
poetry-version: [1.1.2]
|
13 |
+
os: [ubuntu-18.04, macos-latest, windows-latest]
|
14 |
+
runs-on: ${{ matrix.os }}
|
15 |
+
steps:
|
16 |
+
- uses: actions/checkout@v2
|
17 |
+
- uses: actions/setup-python@v2
|
18 |
+
with:
|
19 |
+
python-version: ${{ matrix.python-version }}
|
20 |
+
- uses: abatilo/[email protected]
|
21 |
+
with:
|
22 |
+
poetry-version: ${{ matrix.poetry-version }}
|
23 |
+
- name: Install packages
|
24 |
+
run: poetry install # --no-dev
|
25 |
+
- name: Run flake8
|
26 |
+
run: |
|
27 |
+
poetry run flake8 --exit-zero
|
28 |
+
# poetry run pytest
|
29 |
+
- name: Run pytest
|
30 |
+
run: poetry run pytest
|
LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
MIT License
|
2 |
+
|
3 |
+
Copyright (c) 2020 ffreemt
|
4 |
+
|
5 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6 |
+
of this software and associated documentation files (the "Software"), to deal
|
7 |
+
in the Software without restriction, including without limitation the rights
|
8 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9 |
+
copies of the Software, and to permit persons to whom the Software is
|
10 |
+
furnished to do so, subject to the following conditions:
|
11 |
+
|
12 |
+
The above copyright notice and this permission notice shall be included in all
|
13 |
+
copies or substantial portions of the Software.
|
14 |
+
|
15 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
21 |
+
SOFTWARE.
|
README.md
ADDED
@@ -0,0 +1,26 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# convbot
|
2 |
+
[![tests](https://github.com/ffreemt/convbot/actions/workflows/routine-tests.yml/badge.svg)](https://github.com/ffreemt/convbot/actions)[![python](https://img.shields.io/static/v1?label=python+&message=3.7%2B&color=blue)](https://img.shields.io/static/v1?label=python+&message=3.7%2B&color=blue)[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)[![PyPI version](https://badge.fury.io/py/convbot.svg)](https://badge.fury.io/py/convbot)
|
3 |
+
|
4 |
+
A conversational bot based on huggingface transformers
|
5 |
+
|
6 |
+
## Install it
|
7 |
+
|
8 |
+
```shell
|
9 |
+
pip install convbot
|
10 |
+
# or poetry add convbot
|
11 |
+
# pip install git+htts://github.com/ffreemt/convbot
|
12 |
+
# poetry add git+htts://github.com/ffreemt/convbot
|
13 |
+
|
14 |
+
# To upgrade
|
15 |
+
pip install convbot -U
|
16 |
+
# or poetry add convbot@latest
|
17 |
+
```
|
18 |
+
|
19 |
+
## Use it
|
20 |
+
```python
|
21 |
+
from convbot import convbot
|
22 |
+
|
23 |
+
convertbot("How are you?")
|
24 |
+
# I am good # or along that line
|
25 |
+
|
26 |
+
```
|
convbot/__init__.py
ADDED
@@ -0,0 +1,5 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
"""Init."""
|
2 |
+
__version__ = "0.1.0"
|
3 |
+
from .convbot import convbot
|
4 |
+
|
5 |
+
__all__ = ("convbot",)
|
convbot/convbot.py
ADDED
@@ -0,0 +1,124 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
"""Generate a response."""
|
2 |
+
# pylint:disable=line-too-long, too-many-argument
|
3 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
4 |
+
import torch
|
5 |
+
from logzero import logger
|
6 |
+
|
7 |
+
# model_name = "microsoft/DialoGPT-large"
|
8 |
+
# model_name = "microsoft/DialoGPT-small"
|
9 |
+
# pylint: disable=invalid-name
|
10 |
+
model_name = "microsoft/DialoGPT-medium"
|
11 |
+
tokenizer = AutoTokenizer.from_pretrained(model_name)
|
12 |
+
model = AutoModelForCausalLM.from_pretrained(model_name)
|
13 |
+
|
14 |
+
|
15 |
+
def _convbot(
|
16 |
+
text: str,
|
17 |
+
max_length: int = 1000,
|
18 |
+
do_sample: bool = True,
|
19 |
+
top_p: float = 0.95,
|
20 |
+
top_k: int = 0,
|
21 |
+
temperature: float = 0.75,
|
22 |
+
) -> str:
|
23 |
+
"""Generate a reponse.
|
24 |
+
|
25 |
+
Args
|
26 |
+
n_retires: retry if response is "" or the same as previouse resp.
|
27 |
+
|
28 |
+
Returns
|
29 |
+
reply
|
30 |
+
"""
|
31 |
+
try:
|
32 |
+
chat_history_ids = _convbot.chat_history_ids
|
33 |
+
except AttributeError:
|
34 |
+
chat_history_ids = ""
|
35 |
+
|
36 |
+
try:
|
37 |
+
chat_history_ids = _convbot.chat_history_ids
|
38 |
+
except AttributeError:
|
39 |
+
chat_history_ids = ""
|
40 |
+
|
41 |
+
input_ids = tokenizer.encode(text + tokenizer.eos_token, return_tensors="pt")
|
42 |
+
if chat_history_ids:
|
43 |
+
bot_input_ids = torch.cat([chat_history_ids, input_ids], dim=-1)
|
44 |
+
else:
|
45 |
+
bot_input_ids = input_ids
|
46 |
+
|
47 |
+
# generate a bot response
|
48 |
+
chat_history_ids = model.generate(
|
49 |
+
bot_input_ids,
|
50 |
+
max_length=max_length,
|
51 |
+
do_sample=do_sample,
|
52 |
+
top_p=top_p,
|
53 |
+
top_k=top_k,
|
54 |
+
temperature=temperature,
|
55 |
+
pad_token_id=tokenizer.eos_token_id
|
56 |
+
)
|
57 |
+
|
58 |
+
output = tokenizer.decode(chat_history_ids[:, bot_input_ids.shape[-1]:][0], skip_special_tokens=True)
|
59 |
+
_convbot.chat_history_ids = chat_history_ids
|
60 |
+
|
61 |
+
return output
|
62 |
+
|
63 |
+
|
64 |
+
def convbot(
|
65 |
+
text: str,
|
66 |
+
n_reties: int = 3,
|
67 |
+
max_length: int = 1000,
|
68 |
+
do_sample: bool = True,
|
69 |
+
top_p: float = 0.95,
|
70 |
+
top_k: int = 0,
|
71 |
+
temperature: float = 0.75,
|
72 |
+
) -> str:
|
73 |
+
"""Generate a response."""
|
74 |
+
try:
|
75 |
+
n_reties = int(n_reties)
|
76 |
+
except Exception as e:
|
77 |
+
logger.error(e)
|
78 |
+
raise
|
79 |
+
try:
|
80 |
+
prev_resp = convbot.prev_resp
|
81 |
+
except AttributeError:
|
82 |
+
prev_resp = ""
|
83 |
+
|
84 |
+
resp = _convbot(text, max_length, top_p, top_p, temperature)
|
85 |
+
|
86 |
+
# retry n_retires if resp is empty
|
87 |
+
if not resp.strip():
|
88 |
+
idx = 0
|
89 |
+
while idx < n_retires:
|
90 |
+
idx += 1
|
91 |
+
_convbot.chat_history_ids = ""
|
92 |
+
resp = _convbot(text, max_length, top_p, top_p, temperature)
|
93 |
+
if resp.strip():
|
94 |
+
break
|
95 |
+
else:
|
96 |
+
logger.warning("bot acting up (empty response), something has gone awry")
|
97 |
+
|
98 |
+
# check repeated responses
|
99 |
+
if resp.strip() == convbot.prev_resp:
|
100 |
+
idx = 0
|
101 |
+
while idx < n_retires:
|
102 |
+
idx += 1
|
103 |
+
resp = _convbot(text, max_length, top_p, top_p, temperature)
|
104 |
+
if resp.strip() != convbot.prev_resp:
|
105 |
+
break
|
106 |
+
else:
|
107 |
+
logger.warning("bot acting up (repeating), something has gone awry")
|
108 |
+
|
109 |
+
convbot.prev_resp = resp
|
110 |
+
|
111 |
+
return resp
|
112 |
+
|
113 |
+
|
114 |
+
def main():
|
115 |
+
print("Talk to me")
|
116 |
+
while 1:
|
117 |
+
text = input("You: ")
|
118 |
+
resp = _convbot(text)
|
119 |
+
print("Bot: ", resp)
|
120 |
+
|
121 |
+
|
122 |
+
if __name__ == "__main__":
|
123 |
+
main()
|
124 |
+
|
nodemon.json
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"restartable": "rs",
|
3 |
+
"ignore": [
|
4 |
+
".venv",
|
5 |
+
".git",
|
6 |
+
"node_modules/**/node_modules"
|
7 |
+
],
|
8 |
+
"verbose": true,
|
9 |
+
"execMap": {
|
10 |
+
"js": "node --harmony"
|
11 |
+
},
|
12 |
+
"watch": [
|
13 |
+
"tests",
|
14 |
+
"test/fixtures/",
|
15 |
+
"test/samples/"
|
16 |
+
],
|
17 |
+
"env": {
|
18 |
+
"NODE_ENV": "development"
|
19 |
+
},
|
20 |
+
"ext": "js json py"
|
21 |
+
}
|
package.json
ADDED
@@ -0,0 +1,27 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "convbot",
|
3 |
+
"version": "0.1.0",
|
4 |
+
"description": "description",
|
5 |
+
"main": "index.js",
|
6 |
+
"repository": "[email protected]:ffreemt/convbot.git",
|
7 |
+
"author": "ffreemt",
|
8 |
+
"license": "MIT",
|
9 |
+
"dependencies": {
|
10 |
+
"npm-run-all": "^4.1.5"
|
11 |
+
},
|
12 |
+
"scripts": {
|
13 |
+
"start": "pyright && pytest && yarn style",
|
14 |
+
"test": "nodemon -w tests -w convbot -x pytest tests",
|
15 |
+
"pyright": "nodemon -w convbot -w .venv -e .py -x pyright convbot tests",
|
16 |
+
"pytest": "nodemon -w tests -w convbot -e .py -x pytest tests convbot",
|
17 |
+
"style": "nodemon -w convbot -w tests -x \"black tests convbot && python -m flake8\"",
|
18 |
+
"docstyle": "nodemon -w convbot -w tests -x pydocstyle --convention=google tests convbot",
|
19 |
+
"pylint": "nodemon -w convbot -e .py -x pylint convbot",
|
20 |
+
"test:convbot": "nodemon -w tests -e .py -x pytest -k convbot tests",
|
21 |
+
"publish": "poetry build && poetry publish",
|
22 |
+
"black": "black tests convbot",
|
23 |
+
"flake8": "flake8 tests convbot",
|
24 |
+
"pep257": "pep257 tests convbot",
|
25 |
+
"final": "run-s pep257 black flake8 pytest"
|
26 |
+
}
|
27 |
+
}
|
poetry.lock
ADDED
@@ -0,0 +1,869 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
[[package]]
|
2 |
+
name = "atomicwrites"
|
3 |
+
version = "1.4.0"
|
4 |
+
description = "Atomic file writes."
|
5 |
+
category = "dev"
|
6 |
+
optional = false
|
7 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
8 |
+
|
9 |
+
[[package]]
|
10 |
+
name = "attrs"
|
11 |
+
version = "19.3.0"
|
12 |
+
description = "Classes Without Boilerplate"
|
13 |
+
category = "dev"
|
14 |
+
optional = false
|
15 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
16 |
+
|
17 |
+
[package.extras]
|
18 |
+
azure-pipelines = ["coverage", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "zope.interface", "pytest-azurepipelines"]
|
19 |
+
dev = ["coverage", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "zope.interface", "sphinx", "pre-commit"]
|
20 |
+
docs = ["sphinx", "zope.interface"]
|
21 |
+
tests = ["coverage", "hypothesis", "pympler", "pytest (>=4.3.0)", "six", "zope.interface"]
|
22 |
+
|
23 |
+
[[package]]
|
24 |
+
name = "certifi"
|
25 |
+
version = "2021.5.30"
|
26 |
+
description = "Python package for providing Mozilla's CA Bundle."
|
27 |
+
category = "main"
|
28 |
+
optional = false
|
29 |
+
python-versions = "*"
|
30 |
+
|
31 |
+
[[package]]
|
32 |
+
name = "charset-normalizer"
|
33 |
+
version = "2.0.3"
|
34 |
+
description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet."
|
35 |
+
category = "main"
|
36 |
+
optional = false
|
37 |
+
python-versions = ">=3.5.0"
|
38 |
+
|
39 |
+
[package.extras]
|
40 |
+
unicode_backport = ["unicodedata2"]
|
41 |
+
|
42 |
+
[[package]]
|
43 |
+
name = "cli-ui"
|
44 |
+
version = "0.10.3"
|
45 |
+
description = "Build Nice User Interfaces In The Terminal"
|
46 |
+
category = "dev"
|
47 |
+
optional = false
|
48 |
+
python-versions = ">=3.5,<4.0"
|
49 |
+
|
50 |
+
[package.dependencies]
|
51 |
+
colorama = ">=0.4.1,<0.5.0"
|
52 |
+
tabulate = ">=0.8.3,<0.9.0"
|
53 |
+
unidecode = ">=1.0.23,<2.0.0"
|
54 |
+
|
55 |
+
[[package]]
|
56 |
+
name = "click"
|
57 |
+
version = "8.0.1"
|
58 |
+
description = "Composable command line interface toolkit"
|
59 |
+
category = "main"
|
60 |
+
optional = false
|
61 |
+
python-versions = ">=3.6"
|
62 |
+
|
63 |
+
[package.dependencies]
|
64 |
+
colorama = {version = "*", markers = "platform_system == \"Windows\""}
|
65 |
+
importlib-metadata = {version = "*", markers = "python_version < \"3.8\""}
|
66 |
+
|
67 |
+
[[package]]
|
68 |
+
name = "colorama"
|
69 |
+
version = "0.4.4"
|
70 |
+
description = "Cross-platform colored terminal text."
|
71 |
+
category = "main"
|
72 |
+
optional = false
|
73 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
|
74 |
+
|
75 |
+
[[package]]
|
76 |
+
name = "contextlib2"
|
77 |
+
version = "21.6.0"
|
78 |
+
description = "Backports and enhancements for the contextlib module"
|
79 |
+
category = "dev"
|
80 |
+
optional = false
|
81 |
+
python-versions = ">=3.6"
|
82 |
+
|
83 |
+
[[package]]
|
84 |
+
name = "docopt"
|
85 |
+
version = "0.6.2"
|
86 |
+
description = "Pythonic argument parser, that will make you smile"
|
87 |
+
category = "dev"
|
88 |
+
optional = false
|
89 |
+
python-versions = "*"
|
90 |
+
|
91 |
+
[[package]]
|
92 |
+
name = "filelock"
|
93 |
+
version = "3.0.12"
|
94 |
+
description = "A platform independent file lock."
|
95 |
+
category = "main"
|
96 |
+
optional = false
|
97 |
+
python-versions = "*"
|
98 |
+
|
99 |
+
[[package]]
|
100 |
+
name = "flake8"
|
101 |
+
version = "3.9.2"
|
102 |
+
description = "the modular source code checker: pep8 pyflakes and co"
|
103 |
+
category = "dev"
|
104 |
+
optional = false
|
105 |
+
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7"
|
106 |
+
|
107 |
+
[package.dependencies]
|
108 |
+
importlib-metadata = {version = "*", markers = "python_version < \"3.8\""}
|
109 |
+
mccabe = ">=0.6.0,<0.7.0"
|
110 |
+
pycodestyle = ">=2.7.0,<2.8.0"
|
111 |
+
pyflakes = ">=2.3.0,<2.4.0"
|
112 |
+
|
113 |
+
[[package]]
|
114 |
+
name = "huggingface-hub"
|
115 |
+
version = "0.0.12"
|
116 |
+
description = "Client library to download and publish models on the huggingface.co hub"
|
117 |
+
category = "main"
|
118 |
+
optional = false
|
119 |
+
python-versions = ">=3.6.0"
|
120 |
+
|
121 |
+
[package.dependencies]
|
122 |
+
filelock = "*"
|
123 |
+
importlib-metadata = {version = "*", markers = "python_version < \"3.8\""}
|
124 |
+
packaging = ">=20.9"
|
125 |
+
requests = "*"
|
126 |
+
tqdm = "*"
|
127 |
+
typing-extensions = "*"
|
128 |
+
|
129 |
+
[package.extras]
|
130 |
+
all = ["pytest", "black (>=20.8b1)", "isort (>=5.5.4)", "flake8 (>=3.8.3)"]
|
131 |
+
dev = ["pytest", "black (>=20.8b1)", "isort (>=5.5.4)", "flake8 (>=3.8.3)"]
|
132 |
+
quality = ["black (>=20.8b1)", "isort (>=5.5.4)", "flake8 (>=3.8.3)"]
|
133 |
+
testing = ["pytest"]
|
134 |
+
torch = ["torch"]
|
135 |
+
|
136 |
+
[[package]]
|
137 |
+
name = "idna"
|
138 |
+
version = "3.2"
|
139 |
+
description = "Internationalized Domain Names in Applications (IDNA)"
|
140 |
+
category = "main"
|
141 |
+
optional = false
|
142 |
+
python-versions = ">=3.5"
|
143 |
+
|
144 |
+
[[package]]
|
145 |
+
name = "importlib-metadata"
|
146 |
+
version = "4.6.1"
|
147 |
+
description = "Read metadata from Python packages"
|
148 |
+
category = "main"
|
149 |
+
optional = false
|
150 |
+
python-versions = ">=3.6"
|
151 |
+
|
152 |
+
[package.dependencies]
|
153 |
+
typing-extensions = {version = ">=3.6.4", markers = "python_version < \"3.8\""}
|
154 |
+
zipp = ">=0.5"
|
155 |
+
|
156 |
+
[package.extras]
|
157 |
+
docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"]
|
158 |
+
perf = ["ipython"]
|
159 |
+
testing = ["pytest (>=4.6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "packaging", "pep517", "pyfakefs", "flufl.flake8", "pytest-perf (>=0.9.2)", "pytest-black (>=0.3.7)", "pytest-mypy", "importlib-resources (>=1.3)"]
|
160 |
+
|
161 |
+
[[package]]
|
162 |
+
name = "joblib"
|
163 |
+
version = "1.0.1"
|
164 |
+
description = "Lightweight pipelining with Python functions"
|
165 |
+
category = "main"
|
166 |
+
optional = false
|
167 |
+
python-versions = ">=3.6"
|
168 |
+
|
169 |
+
[[package]]
|
170 |
+
name = "logzero"
|
171 |
+
version = "1.7.0"
|
172 |
+
description = "Robust and effective logging for Python 2 and 3"
|
173 |
+
category = "main"
|
174 |
+
optional = false
|
175 |
+
python-versions = "*"
|
176 |
+
|
177 |
+
[package.dependencies]
|
178 |
+
colorama = {version = "*", markers = "sys_platform == \"win32\""}
|
179 |
+
|
180 |
+
[[package]]
|
181 |
+
name = "mccabe"
|
182 |
+
version = "0.6.1"
|
183 |
+
description = "McCabe checker, plugin for flake8"
|
184 |
+
category = "dev"
|
185 |
+
optional = false
|
186 |
+
python-versions = "*"
|
187 |
+
|
188 |
+
[[package]]
|
189 |
+
name = "more-itertools"
|
190 |
+
version = "8.8.0"
|
191 |
+
description = "More routines for operating on iterables, beyond itertools"
|
192 |
+
category = "dev"
|
193 |
+
optional = false
|
194 |
+
python-versions = ">=3.5"
|
195 |
+
|
196 |
+
[[package]]
|
197 |
+
name = "numpy"
|
198 |
+
version = "1.21.1"
|
199 |
+
description = "NumPy is the fundamental package for array computing with Python."
|
200 |
+
category = "main"
|
201 |
+
optional = false
|
202 |
+
python-versions = ">=3.7"
|
203 |
+
|
204 |
+
[[package]]
|
205 |
+
name = "packaging"
|
206 |
+
version = "21.0"
|
207 |
+
description = "Core utilities for Python packages"
|
208 |
+
category = "main"
|
209 |
+
optional = false
|
210 |
+
python-versions = ">=3.6"
|
211 |
+
|
212 |
+
[package.dependencies]
|
213 |
+
pyparsing = ">=2.0.2"
|
214 |
+
|
215 |
+
[[package]]
|
216 |
+
name = "pastel"
|
217 |
+
version = "0.2.1"
|
218 |
+
description = "Bring colors to your terminal."
|
219 |
+
category = "dev"
|
220 |
+
optional = false
|
221 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
222 |
+
|
223 |
+
[[package]]
|
224 |
+
name = "pep257"
|
225 |
+
version = "0.7.0"
|
226 |
+
description = "Python docstring style checker"
|
227 |
+
category = "dev"
|
228 |
+
optional = false
|
229 |
+
python-versions = "*"
|
230 |
+
|
231 |
+
[[package]]
|
232 |
+
name = "pluggy"
|
233 |
+
version = "0.13.1"
|
234 |
+
description = "plugin and hook calling mechanisms for python"
|
235 |
+
category = "dev"
|
236 |
+
optional = false
|
237 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
238 |
+
|
239 |
+
[package.dependencies]
|
240 |
+
importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""}
|
241 |
+
|
242 |
+
[package.extras]
|
243 |
+
dev = ["pre-commit", "tox"]
|
244 |
+
|
245 |
+
[[package]]
|
246 |
+
name = "poethepoet"
|
247 |
+
version = "0.10.0"
|
248 |
+
description = "A task runner that works well with poetry."
|
249 |
+
category = "dev"
|
250 |
+
optional = false
|
251 |
+
python-versions = ">=3.6,<4.0"
|
252 |
+
|
253 |
+
[package.dependencies]
|
254 |
+
pastel = ">=0.2.0,<0.3.0"
|
255 |
+
tomlkit = ">=0.6.0,<1.0.0"
|
256 |
+
|
257 |
+
[[package]]
|
258 |
+
name = "py"
|
259 |
+
version = "1.10.0"
|
260 |
+
description = "library with cross-python path, ini-parsing, io, code, log facilities"
|
261 |
+
category = "dev"
|
262 |
+
optional = false
|
263 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
264 |
+
|
265 |
+
[[package]]
|
266 |
+
name = "pycodestyle"
|
267 |
+
version = "2.7.0"
|
268 |
+
description = "Python style guide checker"
|
269 |
+
category = "dev"
|
270 |
+
optional = false
|
271 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
272 |
+
|
273 |
+
[[package]]
|
274 |
+
name = "pyflakes"
|
275 |
+
version = "2.3.1"
|
276 |
+
description = "passive checker of Python programs"
|
277 |
+
category = "dev"
|
278 |
+
optional = false
|
279 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
280 |
+
|
281 |
+
[[package]]
|
282 |
+
name = "pyparsing"
|
283 |
+
version = "2.4.7"
|
284 |
+
description = "Python parsing module"
|
285 |
+
category = "main"
|
286 |
+
optional = false
|
287 |
+
python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
|
288 |
+
|
289 |
+
[[package]]
|
290 |
+
name = "pytest"
|
291 |
+
version = "5.4.3"
|
292 |
+
description = "pytest: simple powerful testing with Python"
|
293 |
+
category = "dev"
|
294 |
+
optional = false
|
295 |
+
python-versions = ">=3.5"
|
296 |
+
|
297 |
+
[package.dependencies]
|
298 |
+
atomicwrites = {version = ">=1.0", markers = "sys_platform == \"win32\""}
|
299 |
+
attrs = ">=17.4.0"
|
300 |
+
colorama = {version = "*", markers = "sys_platform == \"win32\""}
|
301 |
+
importlib-metadata = {version = ">=0.12", markers = "python_version < \"3.8\""}
|
302 |
+
more-itertools = ">=4.0.0"
|
303 |
+
packaging = "*"
|
304 |
+
pluggy = ">=0.12,<1.0"
|
305 |
+
py = ">=1.5.0"
|
306 |
+
wcwidth = "*"
|
307 |
+
|
308 |
+
[package.extras]
|
309 |
+
checkqa-mypy = ["mypy (==v0.761)"]
|
310 |
+
testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xmlschema"]
|
311 |
+
|
312 |
+
[[package]]
|
313 |
+
name = "pyyaml"
|
314 |
+
version = "5.4.1"
|
315 |
+
description = "YAML parser and emitter for Python"
|
316 |
+
category = "main"
|
317 |
+
optional = false
|
318 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*"
|
319 |
+
|
320 |
+
[[package]]
|
321 |
+
name = "regex"
|
322 |
+
version = "2021.7.6"
|
323 |
+
description = "Alternative regular expression module, to replace re."
|
324 |
+
category = "main"
|
325 |
+
optional = false
|
326 |
+
python-versions = "*"
|
327 |
+
|
328 |
+
[[package]]
|
329 |
+
name = "requests"
|
330 |
+
version = "2.26.0"
|
331 |
+
description = "Python HTTP for Humans."
|
332 |
+
category = "main"
|
333 |
+
optional = false
|
334 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*"
|
335 |
+
|
336 |
+
[package.dependencies]
|
337 |
+
certifi = ">=2017.4.17"
|
338 |
+
charset-normalizer = {version = ">=2.0.0,<2.1.0", markers = "python_version >= \"3\""}
|
339 |
+
idna = {version = ">=2.5,<4", markers = "python_version >= \"3\""}
|
340 |
+
urllib3 = ">=1.21.1,<1.27"
|
341 |
+
|
342 |
+
[package.extras]
|
343 |
+
socks = ["PySocks (>=1.5.6,!=1.5.7)", "win-inet-pton"]
|
344 |
+
use_chardet_on_py3 = ["chardet (>=3.0.2,<5)"]
|
345 |
+
|
346 |
+
[[package]]
|
347 |
+
name = "sacremoses"
|
348 |
+
version = "0.0.45"
|
349 |
+
description = "SacreMoses"
|
350 |
+
category = "main"
|
351 |
+
optional = false
|
352 |
+
python-versions = "*"
|
353 |
+
|
354 |
+
[package.dependencies]
|
355 |
+
click = "*"
|
356 |
+
joblib = "*"
|
357 |
+
regex = "*"
|
358 |
+
six = "*"
|
359 |
+
tqdm = "*"
|
360 |
+
|
361 |
+
[[package]]
|
362 |
+
name = "schema"
|
363 |
+
version = "0.7.4"
|
364 |
+
description = "Simple data validation library"
|
365 |
+
category = "dev"
|
366 |
+
optional = false
|
367 |
+
python-versions = "*"
|
368 |
+
|
369 |
+
[package.dependencies]
|
370 |
+
contextlib2 = ">=0.5.5"
|
371 |
+
|
372 |
+
[[package]]
|
373 |
+
name = "six"
|
374 |
+
version = "1.16.0"
|
375 |
+
description = "Python 2 and 3 compatibility utilities"
|
376 |
+
category = "main"
|
377 |
+
optional = false
|
378 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*"
|
379 |
+
|
380 |
+
[[package]]
|
381 |
+
name = "tabulate"
|
382 |
+
version = "0.8.9"
|
383 |
+
description = "Pretty-print tabular data"
|
384 |
+
category = "dev"
|
385 |
+
optional = false
|
386 |
+
python-versions = "*"
|
387 |
+
|
388 |
+
[package.extras]
|
389 |
+
widechars = ["wcwidth"]
|
390 |
+
|
391 |
+
[[package]]
|
392 |
+
name = "tbump"
|
393 |
+
version = "6.3.2"
|
394 |
+
description = "Bump software releases"
|
395 |
+
category = "dev"
|
396 |
+
optional = false
|
397 |
+
python-versions = ">=3.6,<4.0"
|
398 |
+
|
399 |
+
[package.dependencies]
|
400 |
+
attrs = ">=19.3.0,<20.0.0"
|
401 |
+
cli-ui = ">=0.10.3,<0.11.0"
|
402 |
+
docopt = ">=0.6.2,<0.7.0"
|
403 |
+
schema = ">=0.7.1,<0.8.0"
|
404 |
+
tomlkit = ">=0.5.8"
|
405 |
+
|
406 |
+
[[package]]
|
407 |
+
name = "tokenizers"
|
408 |
+
version = "0.10.3"
|
409 |
+
description = "Fast and Customizable Tokenizers"
|
410 |
+
category = "main"
|
411 |
+
optional = false
|
412 |
+
python-versions = "*"
|
413 |
+
|
414 |
+
[package.extras]
|
415 |
+
testing = ["pytest"]
|
416 |
+
|
417 |
+
[[package]]
|
418 |
+
name = "tomlkit"
|
419 |
+
version = "0.7.2"
|
420 |
+
description = "Style preserving TOML library"
|
421 |
+
category = "dev"
|
422 |
+
optional = false
|
423 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
|
424 |
+
|
425 |
+
[[package]]
|
426 |
+
name = "torch"
|
427 |
+
version = "1.9.0"
|
428 |
+
description = "Tensors and Dynamic neural networks in Python with strong GPU acceleration"
|
429 |
+
category = "main"
|
430 |
+
optional = false
|
431 |
+
python-versions = ">=3.6.2"
|
432 |
+
|
433 |
+
[package.dependencies]
|
434 |
+
typing-extensions = "*"
|
435 |
+
|
436 |
+
[[package]]
|
437 |
+
name = "tqdm"
|
438 |
+
version = "4.61.2"
|
439 |
+
description = "Fast, Extensible Progress Meter"
|
440 |
+
category = "main"
|
441 |
+
optional = false
|
442 |
+
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7"
|
443 |
+
|
444 |
+
[package.dependencies]
|
445 |
+
colorama = {version = "*", markers = "platform_system == \"Windows\""}
|
446 |
+
|
447 |
+
[package.extras]
|
448 |
+
dev = ["py-make (>=0.1.0)", "twine", "wheel"]
|
449 |
+
notebook = ["ipywidgets (>=6)"]
|
450 |
+
telegram = ["requests"]
|
451 |
+
|
452 |
+
[[package]]
|
453 |
+
name = "transformers"
|
454 |
+
version = "4.9.0"
|
455 |
+
description = "State-of-the-art Natural Language Processing for TensorFlow 2.0 and PyTorch"
|
456 |
+
category = "main"
|
457 |
+
optional = false
|
458 |
+
python-versions = ">=3.6.0"
|
459 |
+
|
460 |
+
[package.dependencies]
|
461 |
+
filelock = "*"
|
462 |
+
huggingface-hub = "0.0.12"
|
463 |
+
importlib-metadata = {version = "*", markers = "python_version < \"3.8\""}
|
464 |
+
numpy = ">=1.17"
|
465 |
+
packaging = "*"
|
466 |
+
pyyaml = ">=5.1"
|
467 |
+
regex = "!=2019.12.17"
|
468 |
+
requests = "*"
|
469 |
+
sacremoses = "*"
|
470 |
+
tokenizers = ">=0.10.1,<0.11"
|
471 |
+
tqdm = ">=4.27"
|
472 |
+
|
473 |
+
[package.extras]
|
474 |
+
all = ["tensorflow (>=2.3)", "onnxconverter-common", "keras2onnx", "torch (>=1.0)", "jax (>=0.2.8)", "jaxlib (>=0.1.65)", "flax (>=0.3.4)", "optax (>=0.0.8)", "sentencepiece (==0.1.91)", "protobuf", "tokenizers (>=0.10.1,<0.11)", "soundfile", "torchaudio", "pillow", "optuna", "ray", "timm", "codecarbon (==1.2.0)"]
|
475 |
+
codecarbon = ["codecarbon (==1.2.0)"]
|
476 |
+
deepspeed = ["deepspeed (>=0.4.3)"]
|
477 |
+
dev = ["tensorflow (>=2.3)", "onnxconverter-common", "keras2onnx", "torch (>=1.0)", "jax (>=0.2.8)", "jaxlib (>=0.1.65)", "flax (>=0.3.4)", "optax (>=0.0.8)", "sentencepiece (==0.1.91)", "protobuf", "tokenizers (>=0.10.1,<0.11)", "soundfile", "torchaudio", "pillow", "optuna", "ray", "timm", "codecarbon (==1.2.0)", "pytest", "pytest-xdist", "timeout-decorator", "parameterized", "psutil", "datasets", "pytest-timeout", "black (==21.4b0)", "sacrebleu (>=1.4.12)", "rouge-score", "nltk", "gitpython", "faiss-cpu", "cookiecutter (==1.7.2)", "isort (>=5.5.4)", "flake8 (>=3.8.3)", "fugashi (>=1.0)", "ipadic (>=1.0.0,<2.0)", "unidic-lite (>=1.0.7)", "unidic (>=1.0.2)", "docutils (==0.16.0)", "recommonmark", "sphinx (==3.2.1)", "sphinx-markdown-tables", "sphinx-rtd-theme (==0.4.3)", "sphinx-copybutton", "sphinxext-opengraph (==0.4.1)", "scikit-learn"]
|
478 |
+
docs = ["tensorflow (>=2.3)", "onnxconverter-common", "keras2onnx", "torch (>=1.0)", "jax (>=0.2.8)", "jaxlib (>=0.1.65)", "flax (>=0.3.4)", "optax (>=0.0.8)", "sentencepiece (==0.1.91)", "protobuf", "tokenizers (>=0.10.1,<0.11)", "soundfile", "torchaudio", "pillow", "optuna", "ray", "timm", "codecarbon (==1.2.0)", "docutils (==0.16.0)", "recommonmark", "sphinx (==3.2.1)", "sphinx-markdown-tables", "sphinx-rtd-theme (==0.4.3)", "sphinx-copybutton", "sphinxext-opengraph (==0.4.1)"]
|
479 |
+
docs_specific = ["docutils (==0.16.0)", "recommonmark", "sphinx (==3.2.1)", "sphinx-markdown-tables", "sphinx-rtd-theme (==0.4.3)", "sphinx-copybutton", "sphinxext-opengraph (==0.4.1)"]
|
480 |
+
fairscale = ["fairscale (>0.3)"]
|
481 |
+
flax = ["jax (>=0.2.8)", "jaxlib (>=0.1.65)", "flax (>=0.3.4)", "optax (>=0.0.8)"]
|
482 |
+
integrations = ["optuna", "ray"]
|
483 |
+
ja = ["fugashi (>=1.0)", "ipadic (>=1.0.0,<2.0)", "unidic-lite (>=1.0.7)", "unidic (>=1.0.2)"]
|
484 |
+
modelcreation = ["cookiecutter (==1.7.2)"]
|
485 |
+
onnx = ["onnxconverter-common", "keras2onnx", "onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)"]
|
486 |
+
onnxruntime = ["onnxruntime (>=1.4.0)", "onnxruntime-tools (>=1.4.2)"]
|
487 |
+
optuna = ["optuna"]
|
488 |
+
quality = ["black (==21.4b0)", "isort (>=5.5.4)", "flake8 (>=3.8.3)"]
|
489 |
+
ray = ["ray"]
|
490 |
+
retrieval = ["faiss-cpu", "datasets"]
|
491 |
+
sagemaker = ["sagemaker (>=2.31.0)"]
|
492 |
+
sentencepiece = ["sentencepiece (==0.1.91)", "protobuf"]
|
493 |
+
serving = ["pydantic", "uvicorn", "fastapi", "starlette"]
|
494 |
+
sklearn = ["scikit-learn"]
|
495 |
+
speech = ["soundfile", "torchaudio"]
|
496 |
+
testing = ["pytest", "pytest-xdist", "timeout-decorator", "parameterized", "psutil", "datasets", "pytest-timeout", "black (==21.4b0)", "sacrebleu (>=1.4.12)", "rouge-score", "nltk", "gitpython", "faiss-cpu", "cookiecutter (==1.7.2)"]
|
497 |
+
tf = ["tensorflow (>=2.3)", "onnxconverter-common", "keras2onnx"]
|
498 |
+
tf-cpu = ["tensorflow-cpu (>=2.3)", "onnxconverter-common", "keras2onnx"]
|
499 |
+
timm = ["timm"]
|
500 |
+
tokenizers = ["tokenizers (>=0.10.1,<0.11)"]
|
501 |
+
torch = ["torch (>=1.0)"]
|
502 |
+
torchhub = ["filelock", "huggingface-hub (==0.0.12)", "importlib-metadata", "numpy (>=1.17)", "packaging", "protobuf", "regex (!=2019.12.17)", "requests", "sacremoses", "sentencepiece (==0.1.91)", "torch (>=1.0)", "tokenizers (>=0.10.1,<0.11)", "tqdm (>=4.27)"]
|
503 |
+
vision = ["pillow"]
|
504 |
+
|
505 |
+
[[package]]
|
506 |
+
name = "typing-extensions"
|
507 |
+
version = "3.10.0.0"
|
508 |
+
description = "Backported and Experimental Type Hints for Python 3.5+"
|
509 |
+
category = "main"
|
510 |
+
optional = false
|
511 |
+
python-versions = "*"
|
512 |
+
|
513 |
+
[[package]]
|
514 |
+
name = "unidecode"
|
515 |
+
version = "1.2.0"
|
516 |
+
description = "ASCII transliterations of Unicode text"
|
517 |
+
category = "dev"
|
518 |
+
optional = false
|
519 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
520 |
+
|
521 |
+
[[package]]
|
522 |
+
name = "urllib3"
|
523 |
+
version = "1.26.6"
|
524 |
+
description = "HTTP library with thread-safe connection pooling, file post, and more."
|
525 |
+
category = "main"
|
526 |
+
optional = false
|
527 |
+
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, <4"
|
528 |
+
|
529 |
+
[package.extras]
|
530 |
+
brotli = ["brotlipy (>=0.6.0)"]
|
531 |
+
secure = ["pyOpenSSL (>=0.14)", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "certifi", "ipaddress"]
|
532 |
+
socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"]
|
533 |
+
|
534 |
+
[[package]]
|
535 |
+
name = "wcwidth"
|
536 |
+
version = "0.2.5"
|
537 |
+
description = "Measures the displayed width of unicode strings in a terminal"
|
538 |
+
category = "dev"
|
539 |
+
optional = false
|
540 |
+
python-versions = "*"
|
541 |
+
|
542 |
+
[[package]]
|
543 |
+
name = "zipp"
|
544 |
+
version = "3.5.0"
|
545 |
+
description = "Backport of pathlib-compatible object wrapper for zip files"
|
546 |
+
category = "main"
|
547 |
+
optional = false
|
548 |
+
python-versions = ">=3.6"
|
549 |
+
|
550 |
+
[package.extras]
|
551 |
+
docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"]
|
552 |
+
testing = ["pytest (>=4.6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "jaraco.itertools", "func-timeout", "pytest-black (>=0.3.7)", "pytest-mypy"]
|
553 |
+
|
554 |
+
[metadata]
|
555 |
+
lock-version = "1.1"
|
556 |
+
python-versions = "^3.7"
|
557 |
+
content-hash = "b01467819fe6bc6296d6713719a2ade93ceb9fc4fa93def79634a9480ae852f5"
|
558 |
+
|
559 |
+
[metadata.files]
|
560 |
+
atomicwrites = [
|
561 |
+
{file = "atomicwrites-1.4.0-py2.py3-none-any.whl", hash = "sha256:6d1784dea7c0c8d4a5172b6c620f40b6e4cbfdf96d783691f2e1302a7b88e197"},
|
562 |
+
{file = "atomicwrites-1.4.0.tar.gz", hash = "sha256:ae70396ad1a434f9c7046fd2dd196fc04b12f9e91ffb859164193be8b6168a7a"},
|
563 |
+
]
|
564 |
+
attrs = [
|
565 |
+
{file = "attrs-19.3.0-py2.py3-none-any.whl", hash = "sha256:08a96c641c3a74e44eb59afb61a24f2cb9f4d7188748e76ba4bb5edfa3cb7d1c"},
|
566 |
+
{file = "attrs-19.3.0.tar.gz", hash = "sha256:f7b7ce16570fe9965acd6d30101a28f62fb4a7f9e926b3bbc9b61f8b04247e72"},
|
567 |
+
]
|
568 |
+
certifi = [
|
569 |
+
{file = "certifi-2021.5.30-py2.py3-none-any.whl", hash = "sha256:50b1e4f8446b06f41be7dd6338db18e0990601dce795c2b1686458aa7e8fa7d8"},
|
570 |
+
{file = "certifi-2021.5.30.tar.gz", hash = "sha256:2bbf76fd432960138b3ef6dda3dde0544f27cbf8546c458e60baf371917ba9ee"},
|
571 |
+
]
|
572 |
+
charset-normalizer = [
|
573 |
+
{file = "charset-normalizer-2.0.3.tar.gz", hash = "sha256:c46c3ace2d744cfbdebceaa3c19ae691f53ae621b39fd7570f59d14fb7f2fd12"},
|
574 |
+
{file = "charset_normalizer-2.0.3-py3-none-any.whl", hash = "sha256:88fce3fa5b1a84fdcb3f603d889f723d1dd89b26059d0123ca435570e848d5e1"},
|
575 |
+
]
|
576 |
+
cli-ui = [
|
577 |
+
{file = "cli-ui-0.10.3.tar.gz", hash = "sha256:be517ec1a5385eb22c06d578c08ca65be59a33f00a0c09aa111db44a2f9dd211"},
|
578 |
+
{file = "cli_ui-0.10.3-py3-none-any.whl", hash = "sha256:b1085140a4c843f7fb6053d25a25763ddf4c63106a3345a0b12303a4ff840a25"},
|
579 |
+
]
|
580 |
+
click = [
|
581 |
+
{file = "click-8.0.1-py3-none-any.whl", hash = "sha256:fba402a4a47334742d782209a7c79bc448911afe1149d07bdabdf480b3e2f4b6"},
|
582 |
+
{file = "click-8.0.1.tar.gz", hash = "sha256:8c04c11192119b1ef78ea049e0a6f0463e4c48ef00a30160c704337586f3ad7a"},
|
583 |
+
]
|
584 |
+
colorama = [
|
585 |
+
{file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"},
|
586 |
+
]
|
587 |
+
contextlib2 = [
|
588 |
+
{file = "contextlib2-21.6.0-py2.py3-none-any.whl", hash = "sha256:3fbdb64466afd23abaf6c977627b75b6139a5a3e8ce38405c5b413aed7a0471f"},
|
589 |
+
{file = "contextlib2-21.6.0.tar.gz", hash = "sha256:ab1e2bfe1d01d968e1b7e8d9023bc51ef3509bba217bb730cee3827e1ee82869"},
|
590 |
+
]
|
591 |
+
docopt = [
|
592 |
+
{file = "docopt-0.6.2.tar.gz", hash = "sha256:49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491"},
|
593 |
+
]
|
594 |
+
filelock = [
|
595 |
+
{file = "filelock-3.0.12-py3-none-any.whl", hash = "sha256:929b7d63ec5b7d6b71b0fa5ac14e030b3f70b75747cef1b10da9b879fef15836"},
|
596 |
+
{file = "filelock-3.0.12.tar.gz", hash = "sha256:18d82244ee114f543149c66a6e0c14e9c4f8a1044b5cdaadd0f82159d6a6ff59"},
|
597 |
+
]
|
598 |
+
flake8 = [
|
599 |
+
{file = "flake8-3.9.2-py2.py3-none-any.whl", hash = "sha256:bf8fd333346d844f616e8d47905ef3a3384edae6b4e9beb0c5101e25e3110907"},
|
600 |
+
{file = "flake8-3.9.2.tar.gz", hash = "sha256:07528381786f2a6237b061f6e96610a4167b226cb926e2aa2b6b1d78057c576b"},
|
601 |
+
]
|
602 |
+
huggingface-hub = [
|
603 |
+
{file = "huggingface_hub-0.0.12-py3-none-any.whl", hash = "sha256:5c82ff96897a72e1ed48a94c1796686f120dea05888200522f3994f130c12e6a"},
|
604 |
+
{file = "huggingface_hub-0.0.12.tar.gz", hash = "sha256:661b17fab0c475276fd71603ee7e16c3b3d1d6e812e1b29f40144f64d361e59d"},
|
605 |
+
]
|
606 |
+
idna = [
|
607 |
+
{file = "idna-3.2-py3-none-any.whl", hash = "sha256:14475042e284991034cb48e06f6851428fb14c4dc953acd9be9a5e95c7b6dd7a"},
|
608 |
+
{file = "idna-3.2.tar.gz", hash = "sha256:467fbad99067910785144ce333826c71fb0e63a425657295239737f7ecd125f3"},
|
609 |
+
]
|
610 |
+
importlib-metadata = [
|
611 |
+
{file = "importlib_metadata-4.6.1-py3-none-any.whl", hash = "sha256:9f55f560e116f8643ecf2922d9cd3e1c7e8d52e683178fecd9d08f6aa357e11e"},
|
612 |
+
{file = "importlib_metadata-4.6.1.tar.gz", hash = "sha256:079ada16b7fc30dfbb5d13399a5113110dab1aa7c2bc62f66af75f0b717c8cac"},
|
613 |
+
]
|
614 |
+
joblib = [
|
615 |
+
{file = "joblib-1.0.1-py3-none-any.whl", hash = "sha256:feeb1ec69c4d45129954f1b7034954241eedfd6ba39b5e9e4b6883be3332d5e5"},
|
616 |
+
{file = "joblib-1.0.1.tar.gz", hash = "sha256:9c17567692206d2f3fb9ecf5e991084254fe631665c450b443761c4186a613f7"},
|
617 |
+
]
|
618 |
+
logzero = [
|
619 |
+
{file = "logzero-1.7.0-py2.py3-none-any.whl", hash = "sha256:23eb1f717a2736f9ab91ca0d43160fd2c996ad49ae6bad34652d47aba908769d"},
|
620 |
+
{file = "logzero-1.7.0.tar.gz", hash = "sha256:7f73ddd3ae393457236f081ffebd044a3aa2e423a47ae6ddb5179ab90d0ad082"},
|
621 |
+
]
|
622 |
+
mccabe = [
|
623 |
+
{file = "mccabe-0.6.1-py2.py3-none-any.whl", hash = "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42"},
|
624 |
+
{file = "mccabe-0.6.1.tar.gz", hash = "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f"},
|
625 |
+
]
|
626 |
+
more-itertools = [
|
627 |
+
{file = "more-itertools-8.8.0.tar.gz", hash = "sha256:83f0308e05477c68f56ea3a888172c78ed5d5b3c282addb67508e7ba6c8f813a"},
|
628 |
+
{file = "more_itertools-8.8.0-py3-none-any.whl", hash = "sha256:2cf89ec599962f2ddc4d568a05defc40e0a587fbc10d5989713638864c36be4d"},
|
629 |
+
]
|
630 |
+
numpy = [
|
631 |
+
{file = "numpy-1.21.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:38e8648f9449a549a7dfe8d8755a5979b45b3538520d1e735637ef28e8c2dc50"},
|
632 |
+
{file = "numpy-1.21.1-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:fd7d7409fa643a91d0a05c7554dd68aa9c9bb16e186f6ccfe40d6e003156e33a"},
|
633 |
+
{file = "numpy-1.21.1-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a75b4498b1e93d8b700282dc8e655b8bd559c0904b3910b144646dbbbc03e062"},
|
634 |
+
{file = "numpy-1.21.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1412aa0aec3e00bc23fbb8664d76552b4efde98fb71f60737c83efbac24112f1"},
|
635 |
+
{file = "numpy-1.21.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e46ceaff65609b5399163de5893d8f2a82d3c77d5e56d976c8b5fb01faa6b671"},
|
636 |
+
{file = "numpy-1.21.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:c6a2324085dd52f96498419ba95b5777e40b6bcbc20088fddb9e8cbb58885e8e"},
|
637 |
+
{file = "numpy-1.21.1-cp37-cp37m-win32.whl", hash = "sha256:73101b2a1fef16602696d133db402a7e7586654682244344b8329cdcbbb82172"},
|
638 |
+
{file = "numpy-1.21.1-cp37-cp37m-win_amd64.whl", hash = "sha256:7a708a79c9a9d26904d1cca8d383bf869edf6f8e7650d85dbc77b041e8c5a0f8"},
|
639 |
+
{file = "numpy-1.21.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:95b995d0c413f5d0428b3f880e8fe1660ff9396dcd1f9eedbc311f37b5652e16"},
|
640 |
+
{file = "numpy-1.21.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:635e6bd31c9fb3d475c8f44a089569070d10a9ef18ed13738b03049280281267"},
|
641 |
+
{file = "numpy-1.21.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4a3d5fb89bfe21be2ef47c0614b9c9c707b7362386c9a3ff1feae63e0267ccb6"},
|
642 |
+
{file = "numpy-1.21.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:8a326af80e86d0e9ce92bcc1e65c8ff88297de4fa14ee936cb2293d414c9ec63"},
|
643 |
+
{file = "numpy-1.21.1-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:791492091744b0fe390a6ce85cc1bf5149968ac7d5f0477288f78c89b385d9af"},
|
644 |
+
{file = "numpy-1.21.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0318c465786c1f63ac05d7c4dbcecd4d2d7e13f0959b01b534ea1e92202235c5"},
|
645 |
+
{file = "numpy-1.21.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9a513bd9c1551894ee3d31369f9b07460ef223694098cf27d399513415855b68"},
|
646 |
+
{file = "numpy-1.21.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:91c6f5fc58df1e0a3cc0c3a717bb3308ff850abdaa6d2d802573ee2b11f674a8"},
|
647 |
+
{file = "numpy-1.21.1-cp38-cp38-win32.whl", hash = "sha256:978010b68e17150db8765355d1ccdd450f9fc916824e8c4e35ee620590e234cd"},
|
648 |
+
{file = "numpy-1.21.1-cp38-cp38-win_amd64.whl", hash = "sha256:9749a40a5b22333467f02fe11edc98f022133ee1bfa8ab99bda5e5437b831214"},
|
649 |
+
{file = "numpy-1.21.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:d7a4aeac3b94af92a9373d6e77b37691b86411f9745190d2c351f410ab3a791f"},
|
650 |
+
{file = "numpy-1.21.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d9e7912a56108aba9b31df688a4c4f5cb0d9d3787386b87d504762b6754fbb1b"},
|
651 |
+
{file = "numpy-1.21.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:25b40b98ebdd272bc3020935427a4530b7d60dfbe1ab9381a39147834e985eac"},
|
652 |
+
{file = "numpy-1.21.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:8a92c5aea763d14ba9d6475803fc7904bda7decc2a0a68153f587ad82941fec1"},
|
653 |
+
{file = "numpy-1.21.1-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:05a0f648eb28bae4bcb204e6fd14603de2908de982e761a2fc78efe0f19e96e1"},
|
654 |
+
{file = "numpy-1.21.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f01f28075a92eede918b965e86e8f0ba7b7797a95aa8d35e1cc8821f5fc3ad6a"},
|
655 |
+
{file = "numpy-1.21.1-cp39-cp39-win32.whl", hash = "sha256:88c0b89ad1cc24a5efbb99ff9ab5db0f9a86e9cc50240177a571fbe9c2860ac2"},
|
656 |
+
{file = "numpy-1.21.1-cp39-cp39-win_amd64.whl", hash = "sha256:01721eefe70544d548425a07c80be8377096a54118070b8a62476866d5208e33"},
|
657 |
+
{file = "numpy-1.21.1-pp37-pypy37_pp73-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:2d4d1de6e6fb3d28781c73fbde702ac97f03d79e4ffd6598b880b2d95d62ead4"},
|
658 |
+
{file = "numpy-1.21.1.zip", hash = "sha256:dff4af63638afcc57a3dfb9e4b26d434a7a602d225b42d746ea7fe2edf1342fd"},
|
659 |
+
]
|
660 |
+
packaging = [
|
661 |
+
{file = "packaging-21.0-py3-none-any.whl", hash = "sha256:c86254f9220d55e31cc94d69bade760f0847da8000def4dfe1c6b872fd14ff14"},
|
662 |
+
{file = "packaging-21.0.tar.gz", hash = "sha256:7dc96269f53a4ccec5c0670940a4281106dd0bb343f47b7471f779df49c2fbe7"},
|
663 |
+
]
|
664 |
+
pastel = [
|
665 |
+
{file = "pastel-0.2.1-py2.py3-none-any.whl", hash = "sha256:4349225fcdf6c2bb34d483e523475de5bb04a5c10ef711263452cb37d7dd4364"},
|
666 |
+
{file = "pastel-0.2.1.tar.gz", hash = "sha256:e6581ac04e973cac858828c6202c1e1e81fee1dc7de7683f3e1ffe0bfd8a573d"},
|
667 |
+
]
|
668 |
+
pep257 = [
|
669 |
+
{file = "pep257-0.7.0-py2.py3-none-any.whl", hash = "sha256:d26cd2a4f572e0592f6967277136f581f924a4fe2aa38dcb7d4e532232689e80"},
|
670 |
+
{file = "pep257-0.7.0.tar.gz", hash = "sha256:f3d67547f5617a9cfeb4b8097ed94a954888315defaf6e9b518ff1719363bf03"},
|
671 |
+
]
|
672 |
+
pluggy = [
|
673 |
+
{file = "pluggy-0.13.1-py2.py3-none-any.whl", hash = "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d"},
|
674 |
+
{file = "pluggy-0.13.1.tar.gz", hash = "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0"},
|
675 |
+
]
|
676 |
+
poethepoet = [
|
677 |
+
{file = "poethepoet-0.10.0-py3-none-any.whl", hash = "sha256:6fb3021603d4421c6fcc40072bbcf150a6c52ef70ff4d3be089b8b04e015ef5a"},
|
678 |
+
{file = "poethepoet-0.10.0.tar.gz", hash = "sha256:70b97cb194b978dc464c70793e85e6f746cddf82b84a38bfb135946ad71ae19c"},
|
679 |
+
]
|
680 |
+
py = [
|
681 |
+
{file = "py-1.10.0-py2.py3-none-any.whl", hash = "sha256:3b80836aa6d1feeaa108e046da6423ab8f6ceda6468545ae8d02d9d58d18818a"},
|
682 |
+
{file = "py-1.10.0.tar.gz", hash = "sha256:21b81bda15b66ef5e1a777a21c4dcd9c20ad3efd0b3f817e7a809035269e1bd3"},
|
683 |
+
]
|
684 |
+
pycodestyle = [
|
685 |
+
{file = "pycodestyle-2.7.0-py2.py3-none-any.whl", hash = "sha256:514f76d918fcc0b55c6680472f0a37970994e07bbb80725808c17089be302068"},
|
686 |
+
{file = "pycodestyle-2.7.0.tar.gz", hash = "sha256:c389c1d06bf7904078ca03399a4816f974a1d590090fecea0c63ec26ebaf1cef"},
|
687 |
+
]
|
688 |
+
pyflakes = [
|
689 |
+
{file = "pyflakes-2.3.1-py2.py3-none-any.whl", hash = "sha256:7893783d01b8a89811dd72d7dfd4d84ff098e5eed95cfa8905b22bbffe52efc3"},
|
690 |
+
{file = "pyflakes-2.3.1.tar.gz", hash = "sha256:f5bc8ecabc05bb9d291eb5203d6810b49040f6ff446a756326104746cc00c1db"},
|
691 |
+
]
|
692 |
+
pyparsing = [
|
693 |
+
{file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"},
|
694 |
+
{file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"},
|
695 |
+
]
|
696 |
+
pytest = [
|
697 |
+
{file = "pytest-5.4.3-py3-none-any.whl", hash = "sha256:5c0db86b698e8f170ba4582a492248919255fcd4c79b1ee64ace34301fb589a1"},
|
698 |
+
{file = "pytest-5.4.3.tar.gz", hash = "sha256:7979331bfcba207414f5e1263b5a0f8f521d0f457318836a7355531ed1a4c7d8"},
|
699 |
+
]
|
700 |
+
pyyaml = [
|
701 |
+
{file = "PyYAML-5.4.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:3b2b1824fe7112845700f815ff6a489360226a5609b96ec2190a45e62a9fc922"},
|
702 |
+
{file = "PyYAML-5.4.1-cp27-cp27m-win32.whl", hash = "sha256:129def1b7c1bf22faffd67b8f3724645203b79d8f4cc81f674654d9902cb4393"},
|
703 |
+
{file = "PyYAML-5.4.1-cp27-cp27m-win_amd64.whl", hash = "sha256:4465124ef1b18d9ace298060f4eccc64b0850899ac4ac53294547536533800c8"},
|
704 |
+
{file = "PyYAML-5.4.1-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:bb4191dfc9306777bc594117aee052446b3fa88737cd13b7188d0e7aa8162185"},
|
705 |
+
{file = "PyYAML-5.4.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:6c78645d400265a062508ae399b60b8c167bf003db364ecb26dcab2bda048253"},
|
706 |
+
{file = "PyYAML-5.4.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:4e0583d24c881e14342eaf4ec5fbc97f934b999a6828693a99157fde912540cc"},
|
707 |
+
{file = "PyYAML-5.4.1-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:72a01f726a9c7851ca9bfad6fd09ca4e090a023c00945ea05ba1638c09dc3347"},
|
708 |
+
{file = "PyYAML-5.4.1-cp36-cp36m-manylinux2014_s390x.whl", hash = "sha256:895f61ef02e8fed38159bb70f7e100e00f471eae2bc838cd0f4ebb21e28f8541"},
|
709 |
+
{file = "PyYAML-5.4.1-cp36-cp36m-win32.whl", hash = "sha256:3bd0e463264cf257d1ffd2e40223b197271046d09dadf73a0fe82b9c1fc385a5"},
|
710 |
+
{file = "PyYAML-5.4.1-cp36-cp36m-win_amd64.whl", hash = "sha256:e4fac90784481d221a8e4b1162afa7c47ed953be40d31ab4629ae917510051df"},
|
711 |
+
{file = "PyYAML-5.4.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:5accb17103e43963b80e6f837831f38d314a0495500067cb25afab2e8d7a4018"},
|
712 |
+
{file = "PyYAML-5.4.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:e1d4970ea66be07ae37a3c2e48b5ec63f7ba6804bdddfdbd3cfd954d25a82e63"},
|
713 |
+
{file = "PyYAML-5.4.1-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:cb333c16912324fd5f769fff6bc5de372e9e7a202247b48870bc251ed40239aa"},
|
714 |
+
{file = "PyYAML-5.4.1-cp37-cp37m-manylinux2014_s390x.whl", hash = "sha256:fe69978f3f768926cfa37b867e3843918e012cf83f680806599ddce33c2c68b0"},
|
715 |
+
{file = "PyYAML-5.4.1-cp37-cp37m-win32.whl", hash = "sha256:dd5de0646207f053eb0d6c74ae45ba98c3395a571a2891858e87df7c9b9bd51b"},
|
716 |
+
{file = "PyYAML-5.4.1-cp37-cp37m-win_amd64.whl", hash = "sha256:08682f6b72c722394747bddaf0aa62277e02557c0fd1c42cb853016a38f8dedf"},
|
717 |
+
{file = "PyYAML-5.4.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d2d9808ea7b4af864f35ea216be506ecec180628aced0704e34aca0b040ffe46"},
|
718 |
+
{file = "PyYAML-5.4.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:8c1be557ee92a20f184922c7b6424e8ab6691788e6d86137c5d93c1a6ec1b8fb"},
|
719 |
+
{file = "PyYAML-5.4.1-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:fd7f6999a8070df521b6384004ef42833b9bd62cfee11a09bda1079b4b704247"},
|
720 |
+
{file = "PyYAML-5.4.1-cp38-cp38-manylinux2014_s390x.whl", hash = "sha256:bfb51918d4ff3d77c1c856a9699f8492c612cde32fd3bcd344af9be34999bfdc"},
|
721 |
+
{file = "PyYAML-5.4.1-cp38-cp38-win32.whl", hash = "sha256:fa5ae20527d8e831e8230cbffd9f8fe952815b2b7dae6ffec25318803a7528fc"},
|
722 |
+
{file = "PyYAML-5.4.1-cp38-cp38-win_amd64.whl", hash = "sha256:0f5f5786c0e09baddcd8b4b45f20a7b5d61a7e7e99846e3c799b05c7c53fa696"},
|
723 |
+
{file = "PyYAML-5.4.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:294db365efa064d00b8d1ef65d8ea2c3426ac366c0c4368d930bf1c5fb497f77"},
|
724 |
+
{file = "PyYAML-5.4.1-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:74c1485f7707cf707a7aef42ef6322b8f97921bd89be2ab6317fd782c2d53183"},
|
725 |
+
{file = "PyYAML-5.4.1-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:d483ad4e639292c90170eb6f7783ad19490e7a8defb3e46f97dfe4bacae89122"},
|
726 |
+
{file = "PyYAML-5.4.1-cp39-cp39-manylinux2014_s390x.whl", hash = "sha256:fdc842473cd33f45ff6bce46aea678a54e3d21f1b61a7750ce3c498eedfe25d6"},
|
727 |
+
{file = "PyYAML-5.4.1-cp39-cp39-win32.whl", hash = "sha256:49d4cdd9065b9b6e206d0595fee27a96b5dd22618e7520c33204a4a3239d5b10"},
|
728 |
+
{file = "PyYAML-5.4.1-cp39-cp39-win_amd64.whl", hash = "sha256:c20cfa2d49991c8b4147af39859b167664f2ad4561704ee74c1de03318e898db"},
|
729 |
+
{file = "PyYAML-5.4.1.tar.gz", hash = "sha256:607774cbba28732bfa802b54baa7484215f530991055bb562efbed5b2f20a45e"},
|
730 |
+
]
|
731 |
+
regex = [
|
732 |
+
{file = "regex-2021.7.6-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:e6a1e5ca97d411a461041d057348e578dc344ecd2add3555aedba3b408c9f874"},
|
733 |
+
{file = "regex-2021.7.6-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:6afe6a627888c9a6cfbb603d1d017ce204cebd589d66e0703309b8048c3b0854"},
|
734 |
+
{file = "regex-2021.7.6-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:ccb3d2190476d00414aab36cca453e4596e8f70a206e2aa8db3d495a109153d2"},
|
735 |
+
{file = "regex-2021.7.6-cp36-cp36m-manylinux2010_i686.whl", hash = "sha256:ed693137a9187052fc46eedfafdcb74e09917166362af4cc4fddc3b31560e93d"},
|
736 |
+
{file = "regex-2021.7.6-cp36-cp36m-manylinux2010_x86_64.whl", hash = "sha256:99d8ab206a5270c1002bfcf25c51bf329ca951e5a169f3b43214fdda1f0b5f0d"},
|
737 |
+
{file = "regex-2021.7.6-cp36-cp36m-manylinux2014_i686.whl", hash = "sha256:b85ac458354165405c8a84725de7bbd07b00d9f72c31a60ffbf96bb38d3e25fa"},
|
738 |
+
{file = "regex-2021.7.6-cp36-cp36m-manylinux2014_x86_64.whl", hash = "sha256:3f5716923d3d0bfb27048242a6e0f14eecdb2e2a7fac47eda1d055288595f222"},
|
739 |
+
{file = "regex-2021.7.6-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e5983c19d0beb6af88cb4d47afb92d96751fb3fa1784d8785b1cdf14c6519407"},
|
740 |
+
{file = "regex-2021.7.6-cp36-cp36m-win32.whl", hash = "sha256:c92831dac113a6e0ab28bc98f33781383fe294df1a2c3dfd1e850114da35fd5b"},
|
741 |
+
{file = "regex-2021.7.6-cp36-cp36m-win_amd64.whl", hash = "sha256:791aa1b300e5b6e5d597c37c346fb4d66422178566bbb426dd87eaae475053fb"},
|
742 |
+
{file = "regex-2021.7.6-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:59506c6e8bd9306cd8a41511e32d16d5d1194110b8cfe5a11d102d8b63cf945d"},
|
743 |
+
{file = "regex-2021.7.6-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:564a4c8a29435d1f2256ba247a0315325ea63335508ad8ed938a4f14c4116a5d"},
|
744 |
+
{file = "regex-2021.7.6-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:59c00bb8dd8775473cbfb967925ad2c3ecc8886b3b2d0c90a8e2707e06c743f0"},
|
745 |
+
{file = "regex-2021.7.6-cp37-cp37m-manylinux2010_i686.whl", hash = "sha256:9a854b916806c7e3b40e6616ac9e85d3cdb7649d9e6590653deb5b341a736cec"},
|
746 |
+
{file = "regex-2021.7.6-cp37-cp37m-manylinux2010_x86_64.whl", hash = "sha256:db2b7df831c3187a37f3bb80ec095f249fa276dbe09abd3d35297fc250385694"},
|
747 |
+
{file = "regex-2021.7.6-cp37-cp37m-manylinux2014_i686.whl", hash = "sha256:173bc44ff95bc1e96398c38f3629d86fa72e539c79900283afa895694229fe6a"},
|
748 |
+
{file = "regex-2021.7.6-cp37-cp37m-manylinux2014_x86_64.whl", hash = "sha256:15dddb19823f5147e7517bb12635b3c82e6f2a3a6b696cc3e321522e8b9308ad"},
|
749 |
+
{file = "regex-2021.7.6-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2ddeabc7652024803666ea09f32dd1ed40a0579b6fbb2a213eba590683025895"},
|
750 |
+
{file = "regex-2021.7.6-cp37-cp37m-win32.whl", hash = "sha256:f080248b3e029d052bf74a897b9d74cfb7643537fbde97fe8225a6467fb559b5"},
|
751 |
+
{file = "regex-2021.7.6-cp37-cp37m-win_amd64.whl", hash = "sha256:d8bbce0c96462dbceaa7ac4a7dfbbee92745b801b24bce10a98d2f2b1ea9432f"},
|
752 |
+
{file = "regex-2021.7.6-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:edd1a68f79b89b0c57339bce297ad5d5ffcc6ae7e1afdb10f1947706ed066c9c"},
|
753 |
+
{file = "regex-2021.7.6-cp38-cp38-manylinux1_i686.whl", hash = "sha256:422dec1e7cbb2efbbe50e3f1de36b82906def93ed48da12d1714cabcd993d7f0"},
|
754 |
+
{file = "regex-2021.7.6-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:cbe23b323988a04c3e5b0c387fe3f8f363bf06c0680daf775875d979e376bd26"},
|
755 |
+
{file = "regex-2021.7.6-cp38-cp38-manylinux2010_i686.whl", hash = "sha256:0eb2c6e0fcec5e0f1d3bcc1133556563222a2ffd2211945d7b1480c1b1a42a6f"},
|
756 |
+
{file = "regex-2021.7.6-cp38-cp38-manylinux2010_x86_64.whl", hash = "sha256:1c78780bf46d620ff4fff40728f98b8afd8b8e35c3efd638c7df67be2d5cddbf"},
|
757 |
+
{file = "regex-2021.7.6-cp38-cp38-manylinux2014_i686.whl", hash = "sha256:bc84fb254a875a9f66616ed4538542fb7965db6356f3df571d783f7c8d256edd"},
|
758 |
+
{file = "regex-2021.7.6-cp38-cp38-manylinux2014_x86_64.whl", hash = "sha256:598c0a79b4b851b922f504f9f39a863d83ebdfff787261a5ed061c21e67dd761"},
|
759 |
+
{file = "regex-2021.7.6-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:875c355360d0f8d3d827e462b29ea7682bf52327d500a4f837e934e9e4656068"},
|
760 |
+
{file = "regex-2021.7.6-cp38-cp38-win32.whl", hash = "sha256:e586f448df2bbc37dfadccdb7ccd125c62b4348cb90c10840d695592aa1b29e0"},
|
761 |
+
{file = "regex-2021.7.6-cp38-cp38-win_amd64.whl", hash = "sha256:2fe5e71e11a54e3355fa272137d521a40aace5d937d08b494bed4529964c19c4"},
|
762 |
+
{file = "regex-2021.7.6-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:6110bab7eab6566492618540c70edd4d2a18f40ca1d51d704f1d81c52d245026"},
|
763 |
+
{file = "regex-2021.7.6-cp39-cp39-manylinux1_i686.whl", hash = "sha256:4f64fc59fd5b10557f6cd0937e1597af022ad9b27d454e182485f1db3008f417"},
|
764 |
+
{file = "regex-2021.7.6-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:89e5528803566af4df368df2d6f503c84fbfb8249e6631c7b025fe23e6bd0cde"},
|
765 |
+
{file = "regex-2021.7.6-cp39-cp39-manylinux2010_i686.whl", hash = "sha256:2366fe0479ca0e9afa534174faa2beae87847d208d457d200183f28c74eaea59"},
|
766 |
+
{file = "regex-2021.7.6-cp39-cp39-manylinux2010_x86_64.whl", hash = "sha256:f9392a4555f3e4cb45310a65b403d86b589adc773898c25a39184b1ba4db8985"},
|
767 |
+
{file = "regex-2021.7.6-cp39-cp39-manylinux2014_i686.whl", hash = "sha256:2bceeb491b38225b1fee4517107b8491ba54fba77cf22a12e996d96a3c55613d"},
|
768 |
+
{file = "regex-2021.7.6-cp39-cp39-manylinux2014_x86_64.whl", hash = "sha256:f98dc35ab9a749276f1a4a38ab3e0e2ba1662ce710f6530f5b0a6656f1c32b58"},
|
769 |
+
{file = "regex-2021.7.6-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:319eb2a8d0888fa6f1d9177705f341bc9455a2c8aca130016e52c7fe8d6c37a3"},
|
770 |
+
{file = "regex-2021.7.6-cp39-cp39-win32.whl", hash = "sha256:eaf58b9e30e0e546cdc3ac06cf9165a1ca5b3de8221e9df679416ca667972035"},
|
771 |
+
{file = "regex-2021.7.6-cp39-cp39-win_amd64.whl", hash = "sha256:4c9c3155fe74269f61e27617529b7f09552fbb12e44b1189cebbdb24294e6e1c"},
|
772 |
+
{file = "regex-2021.7.6.tar.gz", hash = "sha256:8394e266005f2d8c6f0bc6780001f7afa3ef81a7a2111fa35058ded6fce79e4d"},
|
773 |
+
]
|
774 |
+
requests = [
|
775 |
+
{file = "requests-2.26.0-py2.py3-none-any.whl", hash = "sha256:6c1246513ecd5ecd4528a0906f910e8f0f9c6b8ec72030dc9fd154dc1a6efd24"},
|
776 |
+
{file = "requests-2.26.0.tar.gz", hash = "sha256:b8aa58f8cf793ffd8782d3d8cb19e66ef36f7aba4353eec859e74678b01b07a7"},
|
777 |
+
]
|
778 |
+
sacremoses = [
|
779 |
+
{file = "sacremoses-0.0.45-py3-none-any.whl", hash = "sha256:fa93db44bc04542553ba6090818b892f603d02aa0d681e6c5c3023baf17e8564"},
|
780 |
+
{file = "sacremoses-0.0.45.tar.gz", hash = "sha256:58176cc28391830789b763641d0f458819bebe88681dac72b41a19c0aedc07e9"},
|
781 |
+
]
|
782 |
+
schema = [
|
783 |
+
{file = "schema-0.7.4-py2.py3-none-any.whl", hash = "sha256:cf97e4cd27e203ab6bb35968532de1ed8991bce542a646f0ff1d643629a4945d"},
|
784 |
+
{file = "schema-0.7.4.tar.gz", hash = "sha256:fbb6a52eb2d9facf292f233adcc6008cffd94343c63ccac9a1cb1f3e6de1db17"},
|
785 |
+
]
|
786 |
+
six = [
|
787 |
+
{file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"},
|
788 |
+
{file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"},
|
789 |
+
]
|
790 |
+
tabulate = [
|
791 |
+
{file = "tabulate-0.8.9-py3-none-any.whl", hash = "sha256:d7c013fe7abbc5e491394e10fa845f8f32fe54f8dc60c6622c6cf482d25d47e4"},
|
792 |
+
{file = "tabulate-0.8.9.tar.gz", hash = "sha256:eb1d13f25760052e8931f2ef80aaf6045a6cceb47514db8beab24cded16f13a7"},
|
793 |
+
]
|
794 |
+
tbump = [
|
795 |
+
{file = "tbump-6.3.2-py3-none-any.whl", hash = "sha256:27ea1ab9eba00ce7db45240c7ec454c0b1d5ddb49bd8a6df93d68b5ca1d72a42"},
|
796 |
+
{file = "tbump-6.3.2.tar.gz", hash = "sha256:49a933f28c48b35346e41059b3a2dd830724f7b55058c812ad353c3a69dfb19f"},
|
797 |
+
]
|
798 |
+
tokenizers = [
|
799 |
+
{file = "tokenizers-0.10.3-cp36-cp36m-macosx_10_11_x86_64.whl", hash = "sha256:4ab688daf4692a6c31dfe42f1f3a4a8c22050705eb69d58d3efde9d55f434586"},
|
800 |
+
{file = "tokenizers-0.10.3-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:c26dbc3b2a3d71d3d40c50975ec62145932f05aea73f03ea35c48ebd3a717611"},
|
801 |
+
{file = "tokenizers-0.10.3-cp36-cp36m-win32.whl", hash = "sha256:6b84673997990b3c260ae2f7c57fdf1f835e316820eff14aca46dc68be3c0c74"},
|
802 |
+
{file = "tokenizers-0.10.3-cp36-cp36m-win_amd64.whl", hash = "sha256:2a9ee3ee574d4aa740e099b0ad6ef8e63f52f48cde359bb31801146a5aa614dc"},
|
803 |
+
{file = "tokenizers-0.10.3-cp37-cp37m-macosx_10_11_x86_64.whl", hash = "sha256:2f8c5fefef0d0a03be613547e613fbda06b9e6ee0891236649524964c3e54d80"},
|
804 |
+
{file = "tokenizers-0.10.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4cc194104c8e427ffc4f54c7866488b42f2b1f6351a6cad0d045ca5ab8108e42"},
|
805 |
+
{file = "tokenizers-0.10.3-cp37-cp37m-win32.whl", hash = "sha256:edd8cb85c16b4b65e87ea5ef9d400be9fdd53c4152adbaca8817e16dd3aa480b"},
|
806 |
+
{file = "tokenizers-0.10.3-cp37-cp37m-win_amd64.whl", hash = "sha256:7b11b373705d082d43657c08883b79b5330f1952f0668d17488b6b889c4d7feb"},
|
807 |
+
{file = "tokenizers-0.10.3-cp38-cp38-macosx_10_11_x86_64.whl", hash = "sha256:a7ce0c2f27f7c92aa3f895231de90319acdf960ce2e42ba591edc651fda7d3c9"},
|
808 |
+
{file = "tokenizers-0.10.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:ae7e40d9c8a77c5a4109731ac3e21633b0c609c56a8b58be6b863da61fa54636"},
|
809 |
+
{file = "tokenizers-0.10.3-cp38-cp38-win32.whl", hash = "sha256:a7ce051aafc53c564c9edbc09df300c2bd4f6ce87460fc22a276fed405d1892a"},
|
810 |
+
{file = "tokenizers-0.10.3-cp38-cp38-win_amd64.whl", hash = "sha256:91a8c045980594c7c437a52c3da5276eb3c530a662b4ef628ff32d81fb22b543"},
|
811 |
+
{file = "tokenizers-0.10.3-cp39-cp39-macosx_10_11_x86_64.whl", hash = "sha256:1d8867db210d75d97312360ae23b92aeb6a6b5bc65e15c1cd9d204b3fa3fc262"},
|
812 |
+
{file = "tokenizers-0.10.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:18c495e700f4588b9a00e58b4c41dc459c36daaa7c39a27faf880eb8f5533ce1"},
|
813 |
+
{file = "tokenizers-0.10.3-cp39-cp39-win32.whl", hash = "sha256:ad700fd9da518884fd58bf89f0b6dfeecef9b4e2d2db8765ef259f66d6c14980"},
|
814 |
+
{file = "tokenizers-0.10.3-cp39-cp39-win_amd64.whl", hash = "sha256:e9d147e545cdfeca560646c7a703bf287afe45645da426506ccd5eb78aab5ef5"},
|
815 |
+
{file = "tokenizers-0.10.3.tar.gz", hash = "sha256:1a5d3b596c6d3a237e1ad7f46c472d467b0246be7fd1a364f12576eb8db8f7e6"},
|
816 |
+
]
|
817 |
+
tomlkit = [
|
818 |
+
{file = "tomlkit-0.7.2-py2.py3-none-any.whl", hash = "sha256:173ad840fa5d2aac140528ca1933c29791b79a374a0861a80347f42ec9328117"},
|
819 |
+
{file = "tomlkit-0.7.2.tar.gz", hash = "sha256:d7a454f319a7e9bd2e249f239168729327e4dd2d27b17dc68be264ad1ce36754"},
|
820 |
+
]
|
821 |
+
torch = [
|
822 |
+
{file = "torch-1.9.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:3a2d070cf28860d285d4ab156f3954c0c1d12f4c037aa312a7c029227c0d106b"},
|
823 |
+
{file = "torch-1.9.0-cp36-cp36m-manylinux2014_aarch64.whl", hash = "sha256:b296e65e25081af147af936f1e3a1f17f583a9afacfa5309742678ffef728ace"},
|
824 |
+
{file = "torch-1.9.0-cp36-cp36m-win_amd64.whl", hash = "sha256:117098d4924b260a24a47c6b3fe37f2ae41f04a2ea2eff9f553ae9210b12fa54"},
|
825 |
+
{file = "torch-1.9.0-cp36-none-macosx_10_9_x86_64.whl", hash = "sha256:d6103b9a634993bd967337a1149f9d8b23922f42a3660676239399e15c1b4515"},
|
826 |
+
{file = "torch-1.9.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:0164673908e6b291ace592d382eba3e258b3bad009b8078cad8f3b9e00d8f23e"},
|
827 |
+
{file = "torch-1.9.0-cp37-cp37m-manylinux2014_aarch64.whl", hash = "sha256:52548b45efff772fe3810fe91daf34f981ac0ca1a7227f6226fd5693f53b5b88"},
|
828 |
+
{file = "torch-1.9.0-cp37-cp37m-win_amd64.whl", hash = "sha256:62c0a7e433681d0861494d1ede96d2485e4dbb3ea8fd867e8419addebf5de1af"},
|
829 |
+
{file = "torch-1.9.0-cp37-none-macosx_10_9_x86_64.whl", hash = "sha256:d88333091fd1627894bbf0d6dcef58a90e36bdf0d90a5d4675b5e07e72075511"},
|
830 |
+
{file = "torch-1.9.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:1d8139dcc864f48dc316376384f50e47a459284ad1cb84449242f4964e25aaec"},
|
831 |
+
{file = "torch-1.9.0-cp38-cp38-manylinux2014_aarch64.whl", hash = "sha256:0aa4cca3f16fab40cb8dae6a49d0eccdc8f4ead9d1a6428cd9ba12befe082b2a"},
|
832 |
+
{file = "torch-1.9.0-cp38-cp38-win_amd64.whl", hash = "sha256:646de1bef85d6c7590e98f8ea52e47acdcf58330982e4f5d73f5ca28dea2d552"},
|
833 |
+
{file = "torch-1.9.0-cp38-none-macosx_10_9_x86_64.whl", hash = "sha256:e596f0105f748cf09d4763152d8157aaf58d5231232eaf2c5673d4562ba86ad3"},
|
834 |
+
{file = "torch-1.9.0-cp38-none-macosx_11_0_arm64.whl", hash = "sha256:ecc7193fff7741ced3db1f760666c8454d6664956288c54d1b49613b987a42f4"},
|
835 |
+
{file = "torch-1.9.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:95eeec3a6c42fd35aca552777b7d9979ed489760423de97c0118a45e849a61f4"},
|
836 |
+
{file = "torch-1.9.0-cp39-cp39-manylinux2014_aarch64.whl", hash = "sha256:8a2b2012b3c7d6019e189496688fa77de7029a220840b406d8302d1c8021a11c"},
|
837 |
+
{file = "torch-1.9.0-cp39-cp39-win_amd64.whl", hash = "sha256:7e2b14fe5b3a8266cbe2f6740c0195497507974ced7bc21e99971561913a0c28"},
|
838 |
+
{file = "torch-1.9.0-cp39-none-macosx_10_9_x86_64.whl", hash = "sha256:0a9e74b5057463ce4e55d9332a5670993fc9e1299c52e1740e505eda106fb355"},
|
839 |
+
{file = "torch-1.9.0-cp39-none-macosx_11_0_arm64.whl", hash = "sha256:569ead6ae6bb0e636df0fc8af660ef03260e630dc5f2f4cf3198027e7b6bb481"},
|
840 |
+
]
|
841 |
+
tqdm = [
|
842 |
+
{file = "tqdm-4.61.2-py2.py3-none-any.whl", hash = "sha256:5aa445ea0ad8b16d82b15ab342de6b195a722d75fc1ef9934a46bba6feafbc64"},
|
843 |
+
{file = "tqdm-4.61.2.tar.gz", hash = "sha256:8bb94db0d4468fea27d004a0f1d1c02da3cdedc00fe491c0de986b76a04d6b0a"},
|
844 |
+
]
|
845 |
+
transformers = [
|
846 |
+
{file = "transformers-4.9.0-py3-none-any.whl", hash = "sha256:42d5f5fec3559947ce4f555f727553689ed31aa64173ad70072ed6a11dc8bb9f"},
|
847 |
+
{file = "transformers-4.9.0.tar.gz", hash = "sha256:c62617d174ccad5890f9c41ddaf9e0089d1ce4c64d1d324fd2ea1e2f2185f07a"},
|
848 |
+
]
|
849 |
+
typing-extensions = [
|
850 |
+
{file = "typing_extensions-3.10.0.0-py2-none-any.whl", hash = "sha256:0ac0f89795dd19de6b97debb0c6af1c70987fd80a2d62d1958f7e56fcc31b497"},
|
851 |
+
{file = "typing_extensions-3.10.0.0-py3-none-any.whl", hash = "sha256:779383f6086d90c99ae41cf0ff39aac8a7937a9283ce0a414e5dd782f4c94a84"},
|
852 |
+
{file = "typing_extensions-3.10.0.0.tar.gz", hash = "sha256:50b6f157849174217d0656f99dc82fe932884fb250826c18350e159ec6cdf342"},
|
853 |
+
]
|
854 |
+
unidecode = [
|
855 |
+
{file = "Unidecode-1.2.0-py2.py3-none-any.whl", hash = "sha256:12435ef2fc4cdfd9cf1035a1db7e98b6b047fe591892e81f34e94959591fad00"},
|
856 |
+
{file = "Unidecode-1.2.0.tar.gz", hash = "sha256:8d73a97d387a956922344f6b74243c2c6771594659778744b2dbdaad8f6b727d"},
|
857 |
+
]
|
858 |
+
urllib3 = [
|
859 |
+
{file = "urllib3-1.26.6-py2.py3-none-any.whl", hash = "sha256:39fb8672126159acb139a7718dd10806104dec1e2f0f6c88aab05d17df10c8d4"},
|
860 |
+
{file = "urllib3-1.26.6.tar.gz", hash = "sha256:f57b4c16c62fa2760b7e3d97c35b255512fb6b59a259730f36ba32ce9f8e342f"},
|
861 |
+
]
|
862 |
+
wcwidth = [
|
863 |
+
{file = "wcwidth-0.2.5-py2.py3-none-any.whl", hash = "sha256:beb4802a9cebb9144e99086eff703a642a13d6a0052920003a230f3294bbe784"},
|
864 |
+
{file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"},
|
865 |
+
]
|
866 |
+
zipp = [
|
867 |
+
{file = "zipp-3.5.0-py3-none-any.whl", hash = "sha256:957cfda87797e389580cb8b9e3870841ca991e2125350677b2ca83a0e99390a3"},
|
868 |
+
{file = "zipp-3.5.0.tar.gz", hash = "sha256:f5812b1e007e48cff63449a5e9f4e7ebea716b4111f9c4f9a645f91d579bf0c4"},
|
869 |
+
]
|
pyproject.toml
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
[tool.poetry]
|
2 |
+
name = "convbot"
|
3 |
+
version = "0.1.0"
|
4 |
+
description = "pack_name descr "
|
5 |
+
authors = ["ffreemt"]
|
6 |
+
license = "MIT"
|
7 |
+
readme = "README.md"
|
8 |
+
repository = "https://github.com/ffreemt/convbot"
|
9 |
+
include = ["LICENSE"]
|
10 |
+
|
11 |
+
[tool.poetry.dependencies]
|
12 |
+
python = "^3.7"
|
13 |
+
# python = "^3.6.7"
|
14 |
+
logzero = "^1.7.0"
|
15 |
+
transformers = "^4.9.0"
|
16 |
+
torch = {version = "^1.9.0", python = "^3.7", platform = "linux"}
|
17 |
+
|
18 |
+
[tool.poe.executor]
|
19 |
+
type = "poetry"
|
20 |
+
|
21 |
+
[tool.poe.tasks]
|
22 |
+
test = "pytest tests"
|
23 |
+
build = "poetry build"
|
24 |
+
_publish = "poetry publish"
|
25 |
+
release = ["test", "build", "_publish"]
|
26 |
+
lint = { cmd = "pylint convbot" }
|
27 |
+
format = "black tests convbot"
|
28 |
+
tunnel = {cmd ="ssh -CN ip_or_hostname_defined_in_hosts -L 9091:127.0.0.1:9091"}
|
29 |
+
|
30 |
+
[tool.poetry.dev-dependencies]
|
31 |
+
pytest = "^5.2"
|
32 |
+
flake8 = "^3.9.2"
|
33 |
+
pep257 = "^0.7.0"
|
34 |
+
tbump = "^6.3.2"
|
35 |
+
poethepoet = "^0.10.0"
|
36 |
+
|
37 |
+
[build-system]
|
38 |
+
requires = ["poetry-core>=1.0.0"]
|
39 |
+
build-backend = "poetry.core.masonry.api"
|
pyrightconfig.json
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"include": ["tests", "convbot"],
|
3 |
+
"venvPath": ".venv",
|
4 |
+
"reportTypeshedErrors": false,
|
5 |
+
"reportMissingImports": true,
|
6 |
+
"reportMissingTypeStubs": false,
|
7 |
+
"pythonVersion": "3.7",
|
8 |
+
"ignore": []
|
9 |
+
}
|
pytest.ini
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
[pytest]
|
2 |
+
addopts = --doctest-modules
|
3 |
+
log_cli = true
|
rsync-from-acone3.bat
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
rsync -uvaz acone3:myapps-acone3/convbot/ ./ --exclude=.venv --exclude=.pytest_cache --exclude=convbot/__pycache__/
|
rundown.bat_
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
cdto pypi
|
2 |
+
|
3 |
+
cookiecut cookiecutter-pypi-project
|
4 |
+
cd repo-name
|
5 |
+
poetry install
|
6 |
+
yarn
|
7 |
+
|
8 |
+
check cookiecutter.
|
9 |
+
rg --pcre2 "(?<!\.)(:?repo_name|pack_name|mod_name|func_name)" --hidden
|
10 |
+
|
11 |
+
git init
|
12 |
+
poetry37 add logzero
|
13 |
+
poetry37 add pylint flake8 tbump ipython pep257 --dev
|
14 |
+
|
15 |
+
yarn init
|
16 |
+
or pnpm init
|
17 |
+
or npm init
|
18 |
+
|
19 |
+
yarn add npm-run-all # run-s
|
20 |
+
|
21 |
+
tbump init 0.1.0
|
22 |
+
REM tbump init --pyproject 0.1.0
|
23 |
+
[[files]]
|
24 |
+
src = "*/__init__.py"
|
25 |
+
[[files]]
|
26 |
+
src = "package.json"
|
27 |
+
[[files]]
|
28 |
+
src = "tests/_test_*.py"
|
29 |
+
|
30 |
+
edit package.json
|
31 |
+
"scritpts": {
|
32 |
+
"start": "pyright && pytest tests && yarn style"
|
33 |
+
}
|
34 |
+
|
35 |
+
poetry version patch # Bumped to 0.1.x
|
36 |
+
git ac "Bump version"
|
37 |
+
tbump 0.1.x
|
38 |
+
|
39 |
+
poetry publish --build
|
40 |
+
REM or
|
41 |
+
poetry build && poetry publish
|
tbump.toml
ADDED
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Uncomment this if your project is hosted on GitHub:
|
2 |
+
# github_url = "https://github.com/<user or organization>/<project>/"
|
3 |
+
|
4 |
+
[version]
|
5 |
+
current = "0.1.0"
|
6 |
+
|
7 |
+
# Example of a semver regexp.
|
8 |
+
# Make sure this matches current_version before
|
9 |
+
# using tbump
|
10 |
+
regex = '''
|
11 |
+
(?P<major>\d+)
|
12 |
+
\.
|
13 |
+
(?P<minor>\d+)
|
14 |
+
\.
|
15 |
+
(?P<patch>\d+)
|
16 |
+
'''
|
17 |
+
|
18 |
+
[git]
|
19 |
+
message_template = "Bump to {new_version}"
|
20 |
+
tag_template = "v{new_version}"
|
21 |
+
|
22 |
+
# For each file to patch, add a [[file]] config
|
23 |
+
# section containing the path of the file, relative to the
|
24 |
+
# tbump.toml location.
|
25 |
+
[[file]]
|
26 |
+
src = "*/__init__.py"
|
27 |
+
[[file]]
|
28 |
+
src = "package.json"
|
29 |
+
[[file]]
|
30 |
+
src = "tests/test_*.py"
|
31 |
+
|
32 |
+
# You can specify a list of commands to
|
33 |
+
# run after the files have been patched
|
34 |
+
# and before the git commit is made
|
35 |
+
|
36 |
+
# [[before_commit]]
|
37 |
+
# name = "check changelog"
|
38 |
+
# cmd = "grep -q {new_version} Changelog.rst"
|
39 |
+
|
40 |
+
# Or run some commands after the git tag and the branch
|
41 |
+
# have been pushed:
|
42 |
+
# [[after_push]]
|
43 |
+
# name = "publish"
|
44 |
+
# cmd = "./publish.sh"
|
tests/__init__.py
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
"""Init."""
|
tests/test_convbot.py
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
"""Test convbot."""
|
2 |
+
from convbot import __version__
|
3 |
+
from convbot import convbot
|
4 |
+
|
5 |
+
|
6 |
+
def test_version():
|
7 |
+
"""Test version."""
|
8 |
+
assert __version__ == "0.1.0"
|
9 |
+
|
10 |
+
|
11 |
+
def test_sanity():
|
12 |
+
"""Sanity check."""
|
13 |
+
try:
|
14 |
+
assert not convbot()
|
15 |
+
except Exception:
|
16 |
+
assert True
|
17 |
+
|
18 |
+
|
19 |
+
def test_convbot():
|
20 |
+
resp = convbot("How are you?")
|
21 |
+
assert len(resp) > 3
|
22 |
+
|