Spaces:
Running
on
T4
Running
on
T4
sparkleman
commited on
Commit
Β·
b76f7cc
1
Parent(s):
d055fef
UPDATE: merge modelscope
Browse files- .gitattributes +21 -9
- Dockerfile +7 -4
- app.py +8 -1
- config.production-modelscope.yaml +68 -0
- config.production.yaml +18 -3
- {rwkv/cuda β cuda}/gemm_fp16_cublas.cpp +0 -0
- {rwkv/cuda β cuda}/operators.cu +0 -0
- {rwkv/cuda β cuda}/rwkv5.cu +0 -0
- {rwkv/cuda β cuda}/rwkv5_op.cpp +0 -0
- {rwkv/cuda β cuda}/rwkv6.cu +0 -0
- {rwkv/cuda β cuda}/rwkv6_op.cpp +0 -0
- {rwkv/cuda β cuda}/rwkv7.cu +0 -0
- {rwkv/cuda β cuda}/rwkv7_op.cpp +0 -0
- {rwkv/cuda β cuda}/wrapper.cpp +0 -0
- pyproject.toml +3 -1
- rwkv/__init__.py +0 -0
- rwkv/model.py +0 -0
- rwkv/rwkv_tokenizer.py +0 -103
- rwkv/rwkv_vocab_v20230424.txt +0 -0
- rwkv/utils.py +0 -135
- uv.lock +169 -0
.gitattributes
CHANGED
@@ -1,35 +1,47 @@
|
|
1 |
*.7z filter=lfs diff=lfs merge=lfs -text
|
2 |
*.arrow filter=lfs diff=lfs merge=lfs -text
|
3 |
*.bin filter=lfs diff=lfs merge=lfs -text
|
|
|
4 |
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
5 |
-
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
6 |
*.ftz filter=lfs diff=lfs merge=lfs -text
|
7 |
*.gz filter=lfs diff=lfs merge=lfs -text
|
8 |
*.h5 filter=lfs diff=lfs merge=lfs -text
|
9 |
*.joblib filter=lfs diff=lfs merge=lfs -text
|
10 |
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
11 |
-
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
12 |
*.model filter=lfs diff=lfs merge=lfs -text
|
13 |
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
14 |
-
*.npy filter=lfs diff=lfs merge=lfs -text
|
15 |
-
*.npz filter=lfs diff=lfs merge=lfs -text
|
16 |
*.onnx filter=lfs diff=lfs merge=lfs -text
|
17 |
*.ot filter=lfs diff=lfs merge=lfs -text
|
18 |
*.parquet filter=lfs diff=lfs merge=lfs -text
|
19 |
*.pb filter=lfs diff=lfs merge=lfs -text
|
20 |
-
*.pickle filter=lfs diff=lfs merge=lfs -text
|
21 |
-
*.pkl filter=lfs diff=lfs merge=lfs -text
|
22 |
*.pt filter=lfs diff=lfs merge=lfs -text
|
23 |
*.pth filter=lfs diff=lfs merge=lfs -text
|
24 |
*.rar filter=lfs diff=lfs merge=lfs -text
|
25 |
-
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
26 |
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
27 |
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
28 |
-
*.tar filter=lfs diff=lfs merge=lfs -text
|
29 |
*.tflite filter=lfs diff=lfs merge=lfs -text
|
30 |
*.tgz filter=lfs diff=lfs merge=lfs -text
|
31 |
-
*.wasm filter=lfs diff=lfs merge=lfs -text
|
32 |
*.xz filter=lfs diff=lfs merge=lfs -text
|
33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
1 |
*.7z filter=lfs diff=lfs merge=lfs -text
|
2 |
*.arrow filter=lfs diff=lfs merge=lfs -text
|
3 |
*.bin filter=lfs diff=lfs merge=lfs -text
|
4 |
+
*.bin.* filter=lfs diff=lfs merge=lfs -text
|
5 |
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
|
|
6 |
*.ftz filter=lfs diff=lfs merge=lfs -text
|
7 |
*.gz filter=lfs diff=lfs merge=lfs -text
|
8 |
*.h5 filter=lfs diff=lfs merge=lfs -text
|
9 |
*.joblib filter=lfs diff=lfs merge=lfs -text
|
10 |
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
|
|
11 |
*.model filter=lfs diff=lfs merge=lfs -text
|
12 |
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
13 |
*.onnx filter=lfs diff=lfs merge=lfs -text
|
14 |
*.ot filter=lfs diff=lfs merge=lfs -text
|
15 |
*.parquet filter=lfs diff=lfs merge=lfs -text
|
16 |
*.pb filter=lfs diff=lfs merge=lfs -text
|
|
|
|
|
17 |
*.pt filter=lfs diff=lfs merge=lfs -text
|
18 |
*.pth filter=lfs diff=lfs merge=lfs -text
|
19 |
*.rar filter=lfs diff=lfs merge=lfs -text
|
|
|
20 |
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
21 |
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
|
|
22 |
*.tflite filter=lfs diff=lfs merge=lfs -text
|
23 |
*.tgz filter=lfs diff=lfs merge=lfs -text
|
|
|
24 |
*.xz filter=lfs diff=lfs merge=lfs -text
|
25 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
26 |
+
*.zstandard filter=lfs diff=lfs merge=lfs -text
|
27 |
+
*.tfevents* filter=lfs diff=lfs merge=lfs -text
|
28 |
+
*.db* filter=lfs diff=lfs merge=lfs -text
|
29 |
+
*.ark* filter=lfs diff=lfs merge=lfs -text
|
30 |
+
**/*ckpt*data* filter=lfs diff=lfs merge=lfs -text
|
31 |
+
**/*ckpt*.meta filter=lfs diff=lfs merge=lfs -text
|
32 |
+
**/*ckpt*.index filter=lfs diff=lfs merge=lfs -text
|
33 |
+
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
34 |
+
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
35 |
+
*.gguf* filter=lfs diff=lfs merge=lfs -text
|
36 |
+
*.ggml filter=lfs diff=lfs merge=lfs -text
|
37 |
+
*.llamafile* filter=lfs diff=lfs merge=lfs -text
|
38 |
+
*.pt2 filter=lfs diff=lfs merge=lfs -text
|
39 |
+
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
40 |
+
*.npy filter=lfs diff=lfs merge=lfs -text
|
41 |
+
*.npz filter=lfs diff=lfs merge=lfs -text
|
42 |
+
*.pickle filter=lfs diff=lfs merge=lfs -text
|
43 |
+
*.pkl filter=lfs diff=lfs merge=lfs -text
|
44 |
+
*.tar filter=lfs diff=lfs merge=lfs -text
|
45 |
+
*.wasm filter=lfs diff=lfs merge=lfs -text
|
46 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
47 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
Dockerfile
CHANGED
@@ -17,7 +17,11 @@ RUN ["cargo", "install", "wasm-pack"]
|
|
17 |
WORKDIR /app
|
18 |
ENV PATH=/root/.cargo/bin:$PATH
|
19 |
RUN pnpm install
|
20 |
-
RUN
|
|
|
|
|
|
|
|
|
21 |
|
22 |
FROM nvidia/cuda:12.4.0-devel-ubuntu22.04 AS Backend
|
23 |
|
@@ -46,8 +50,7 @@ ENV HOME=/home/user \
|
|
46 |
PATH=/usr/local/cuda/bin:/home/user/.local/bin:$PATH \
|
47 |
LD_LIBRARY_PATH="/usr/local/cuda/lib64:${LD_LIBRARY_PATH}" \
|
48 |
CXX=/usr/bin/g++ \
|
49 |
-
TORCH_CUDA_ARCH_LIST="7.5"
|
50 |
-
HF_HOME="/data/.huggingface"
|
51 |
WORKDIR $HOME/app
|
52 |
|
53 |
COPY --chown=user . $HOME/app
|
@@ -56,4 +59,4 @@ COPY --chown=user --from=FrontendBuilder /app/dist $HOME/app/dist-frontend
|
|
56 |
|
57 |
RUN uv sync --frozen --extra cu124
|
58 |
|
59 |
-
CMD ["
|
|
|
17 |
WORKDIR /app
|
18 |
ENV PATH=/root/.cargo/bin:$PATH
|
19 |
RUN pnpm install
|
20 |
+
RUN if [ "$MODELSCOPE_ENVIRONMENT" = "studio" ]; then \
|
21 |
+
pnpm run build --mode target-rwkv-modelscope-space; \
|
22 |
+
else \
|
23 |
+
pnpm run build --mode target-rwkv-hf-space; \
|
24 |
+
fi
|
25 |
|
26 |
FROM nvidia/cuda:12.4.0-devel-ubuntu22.04 AS Backend
|
27 |
|
|
|
50 |
PATH=/usr/local/cuda/bin:/home/user/.local/bin:$PATH \
|
51 |
LD_LIBRARY_PATH="/usr/local/cuda/lib64:${LD_LIBRARY_PATH}" \
|
52 |
CXX=/usr/bin/g++ \
|
53 |
+
TORCH_CUDA_ARCH_LIST="7.5"
|
|
|
54 |
WORKDIR $HOME/app
|
55 |
|
56 |
COPY --chown=user . $HOME/app
|
|
|
59 |
|
60 |
RUN uv sync --frozen --extra cu124
|
61 |
|
62 |
+
CMD ["sh", "-c", "if [ \"$MODELSCOPE_ENVIRONMENT\" = \"studio\" ]; then CONFIG_FILE=\"./config.production-modelscope.yaml\"; else CONFIG_FILE=\"./config.production.yaml\"; fi; uv run app.py --config_file \"$CONFIG_FILE\""]
|
app.py
CHANGED
@@ -1,3 +1,10 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
from config import CONFIG, ModelConfig
|
2 |
from utils import (
|
3 |
cleanMessages,
|
@@ -6,7 +13,7 @@ from utils import (
|
|
6 |
format_bytes,
|
7 |
)
|
8 |
|
9 |
-
import
|
10 |
from huggingface_hub import hf_hub_download
|
11 |
from loguru import logger
|
12 |
from rich import print
|
|
|
1 |
+
import os
|
2 |
+
|
3 |
+
if os.environ.get("MODELSCOPE_ENVIRONMENT") == "studio":
|
4 |
+
from modelscope import patch_hub
|
5 |
+
|
6 |
+
patch_hub()
|
7 |
+
|
8 |
from config import CONFIG, ModelConfig
|
9 |
from utils import (
|
10 |
cleanMessages,
|
|
|
13 |
format_bytes,
|
14 |
)
|
15 |
|
16 |
+
import copy, types, gc, sys, re, time, collections, asyncio
|
17 |
from huggingface_hub import hf_hub_download
|
18 |
from loguru import logger
|
19 |
from rich import print
|
config.production-modelscope.yaml
ADDED
@@ -0,0 +1,68 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
HOST: "0.0.0.0"
|
2 |
+
PORT: 7860
|
3 |
+
STRATEGY: "cuda fp16"
|
4 |
+
RWKV_CUDA_ON: True
|
5 |
+
CHUNK_LEN: 256
|
6 |
+
MODELS:
|
7 |
+
- SERVICE_NAME: "rwkv7-g1-0.1b-20250307-ctx4096"
|
8 |
+
DOWNLOAD_MODEL_FILE_NAME: "rwkv7-g1-0.1b-20250307-ctx4096.pth"
|
9 |
+
DOWNLOAD_MODEL_REPO_ID: "RWKV/rwkv7-g1"
|
10 |
+
REASONING: True
|
11 |
+
DEFAULT_CHAT: True
|
12 |
+
DEFAULT_REASONING: True
|
13 |
+
DEFAULT_SAMPLER:
|
14 |
+
max_tokens: 4096
|
15 |
+
temperature: 1.0
|
16 |
+
top_p: 0.3
|
17 |
+
presence_penalty: 0.5
|
18 |
+
count_penalty: 0.5
|
19 |
+
penalty_decay: 0.996
|
20 |
+
stop:
|
21 |
+
- "\n\n"
|
22 |
+
stop_tokens:
|
23 |
+
- 0
|
24 |
+
- SERVICE_NAME: "RWKV7-G1-0.4B-75%trained-20250317-ctx4k"
|
25 |
+
DOWNLOAD_MODEL_FILE_NAME: "RWKV7-G1-0.4B-75%trained-20250317-ctx4k.pth"
|
26 |
+
DOWNLOAD_MODEL_REPO_ID: "RWKV/temp-latest-training-models"
|
27 |
+
REASONING: True
|
28 |
+
DEFAULT_SAMPLER:
|
29 |
+
max_tokens: 4096
|
30 |
+
temperature: 1.0
|
31 |
+
top_p: 0.3
|
32 |
+
presence_penalty: 0.5
|
33 |
+
count_penalty: 0.5
|
34 |
+
penalty_decay: 0.996
|
35 |
+
stop:
|
36 |
+
- "\n\n"
|
37 |
+
stop_tokens:
|
38 |
+
- 0
|
39 |
+
- SERVICE_NAME: "RWKV7-G1-1.5B-32%trained-20250319-ctx4k"
|
40 |
+
DOWNLOAD_MODEL_FILE_NAME: "RWKV7-G1-1.5B-32%trained-20250319-ctx4k.pth"
|
41 |
+
DOWNLOAD_MODEL_REPO_ID: "RWKV/temp-latest-training-models"
|
42 |
+
REASONING: True
|
43 |
+
DEFAULT_SAMPLER:
|
44 |
+
max_tokens: 4096
|
45 |
+
temperature: 1.0
|
46 |
+
top_p: 0.3
|
47 |
+
presence_penalty: 0.5
|
48 |
+
count_penalty: 0.5
|
49 |
+
penalty_decay: 0.996
|
50 |
+
stop:
|
51 |
+
- "\n\n"
|
52 |
+
stop_tokens:
|
53 |
+
- 0
|
54 |
+
- SERVICE_NAME: "RWKV7-G1-2.9B-16%trained-20250313-ctx4k"
|
55 |
+
DOWNLOAD_MODEL_FILE_NAME: "RWKV7-G1-2.9B-16%trained-20250313-ctx4k.pth"
|
56 |
+
DOWNLOAD_MODEL_REPO_ID: "RWKV/temp-latest-training-models"
|
57 |
+
REASONING: True
|
58 |
+
DEFAULT_SAMPLER:
|
59 |
+
max_tokens: 4096
|
60 |
+
temperature: 1.0
|
61 |
+
top_p: 0.3
|
62 |
+
presence_penalty: 0.5
|
63 |
+
count_penalty: 0.5
|
64 |
+
penalty_decay: 0.996
|
65 |
+
stop:
|
66 |
+
- "\n\n"
|
67 |
+
stop_tokens:
|
68 |
+
- 0
|
config.production.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
HOST: "0.0.0.0"
|
2 |
PORT: 7860
|
3 |
STRATEGY: "cuda fp16"
|
4 |
-
RWKV_CUDA_ON:
|
5 |
CHUNK_LEN: 256
|
6 |
MODELS:
|
7 |
- SERVICE_NAME: "rwkv7-g1-0.1b-20250307-ctx4096"
|
@@ -21,8 +21,23 @@ MODELS:
|
|
21 |
- "\n\n"
|
22 |
stop_tokens:
|
23 |
- 0
|
24 |
-
- SERVICE_NAME: "RWKV7-G1-
|
25 |
-
DOWNLOAD_MODEL_FILE_NAME: "RWKV7-G1-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
26 |
DOWNLOAD_MODEL_REPO_ID: "BlinkDL/temp-latest-training-models"
|
27 |
REASONING: True
|
28 |
DEFAULT_SAMPLER:
|
|
|
1 |
HOST: "0.0.0.0"
|
2 |
PORT: 7860
|
3 |
STRATEGY: "cuda fp16"
|
4 |
+
RWKV_CUDA_ON: True
|
5 |
CHUNK_LEN: 256
|
6 |
MODELS:
|
7 |
- SERVICE_NAME: "rwkv7-g1-0.1b-20250307-ctx4096"
|
|
|
21 |
- "\n\n"
|
22 |
stop_tokens:
|
23 |
- 0
|
24 |
+
- SERVICE_NAME: "RWKV7-G1-0.4B-75%trained-20250317-ctx4k"
|
25 |
+
DOWNLOAD_MODEL_FILE_NAME: "RWKV7-G1-0.4B-75%trained-20250317-ctx4k.pth"
|
26 |
+
DOWNLOAD_MODEL_REPO_ID: "BlinkDL/temp-latest-training-models"
|
27 |
+
REASONING: True
|
28 |
+
DEFAULT_SAMPLER:
|
29 |
+
max_tokens: 4096
|
30 |
+
temperature: 1.0
|
31 |
+
top_p: 0.3
|
32 |
+
presence_penalty: 0.5
|
33 |
+
count_penalty: 0.5
|
34 |
+
penalty_decay: 0.996
|
35 |
+
stop:
|
36 |
+
- "\n\n"
|
37 |
+
stop_tokens:
|
38 |
+
- 0
|
39 |
+
- SERVICE_NAME: "RWKV7-G1-1.5B-32%trained-20250319-ctx4k"
|
40 |
+
DOWNLOAD_MODEL_FILE_NAME: "RWKV7-G1-1.5B-32%trained-20250319-ctx4k.pth"
|
41 |
DOWNLOAD_MODEL_REPO_ID: "BlinkDL/temp-latest-training-models"
|
42 |
REASONING: True
|
43 |
DEFAULT_SAMPLER:
|
{rwkv/cuda β cuda}/gemm_fp16_cublas.cpp
RENAMED
File without changes
|
{rwkv/cuda β cuda}/operators.cu
RENAMED
File without changes
|
{rwkv/cuda β cuda}/rwkv5.cu
RENAMED
File without changes
|
{rwkv/cuda β cuda}/rwkv5_op.cpp
RENAMED
File without changes
|
{rwkv/cuda β cuda}/rwkv6.cu
RENAMED
File without changes
|
{rwkv/cuda β cuda}/rwkv6_op.cpp
RENAMED
File without changes
|
{rwkv/cuda β cuda}/rwkv7.cu
RENAMED
File without changes
|
{rwkv/cuda β cuda}/rwkv7_op.cpp
RENAMED
File without changes
|
{rwkv/cuda β cuda}/wrapper.cpp
RENAMED
File without changes
|
pyproject.toml
CHANGED
@@ -14,9 +14,11 @@ dependencies = [
|
|
14 |
"pydantic-settings>=2.8.1",
|
15 |
"pynvml>=12.0.0",
|
16 |
"rich>=13.9.4",
|
17 |
-
|
18 |
"setuptools>=75.8.2",
|
19 |
"snowflake-id>=1.0.2",
|
|
|
|
|
20 |
]
|
21 |
|
22 |
[project.optional-dependencies]
|
|
|
14 |
"pydantic-settings>=2.8.1",
|
15 |
"pynvml>=12.0.0",
|
16 |
"rich>=13.9.4",
|
17 |
+
"rwkv>=0.8.28",
|
18 |
"setuptools>=75.8.2",
|
19 |
"snowflake-id>=1.0.2",
|
20 |
+
"modelscope>=1.23.0",
|
21 |
+
"transformers",
|
22 |
]
|
23 |
|
24 |
[project.optional-dependencies]
|
rwkv/__init__.py
DELETED
File without changes
|
rwkv/model.py
DELETED
The diff for this file is too large to render.
See raw diff
|
|
rwkv/rwkv_tokenizer.py
DELETED
@@ -1,103 +0,0 @@
|
|
1 |
-
########################################################################################################
|
2 |
-
# The RWKV Language Model - https://github.com/BlinkDL/RWKV-LM
|
3 |
-
########################################################################################################
|
4 |
-
|
5 |
-
class TRIE:
|
6 |
-
__slots__ = tuple("ch,to,values,front".split(","))
|
7 |
-
to:list
|
8 |
-
values:set
|
9 |
-
def __init__(self, front=None, ch=None):
|
10 |
-
self.ch = ch
|
11 |
-
self.to = [None for ch in range(256)]
|
12 |
-
self.values = set()
|
13 |
-
self.front = front
|
14 |
-
|
15 |
-
def __repr__(self):
|
16 |
-
fr = self
|
17 |
-
ret = []
|
18 |
-
while(fr!=None):
|
19 |
-
if(fr.ch!=None):
|
20 |
-
ret.append(fr.ch)
|
21 |
-
fr = fr.front
|
22 |
-
return "<TRIE %s %s>"%(ret[::-1], self.values)
|
23 |
-
|
24 |
-
def add(self, key:bytes, idx:int=0, val=None):
|
25 |
-
if(idx == len(key)):
|
26 |
-
if(val is None):
|
27 |
-
val = key
|
28 |
-
self.values.add(val)
|
29 |
-
return self
|
30 |
-
ch = key[idx]
|
31 |
-
if(self.to[ch] is None):
|
32 |
-
self.to[ch] = TRIE(front=self, ch=ch)
|
33 |
-
return self.to[ch].add(key, idx=idx+1, val=val)
|
34 |
-
|
35 |
-
def find_longest(self, key:bytes, idx:int=0):
|
36 |
-
u:TRIE = self
|
37 |
-
ch:int = key[idx]
|
38 |
-
|
39 |
-
while(u.to[ch] is not None):
|
40 |
-
u = u.to[ch]
|
41 |
-
idx += 1
|
42 |
-
if(u.values):
|
43 |
-
ret = idx, u, u.values
|
44 |
-
if(idx==len(key)):
|
45 |
-
break
|
46 |
-
ch = key[idx]
|
47 |
-
return ret
|
48 |
-
|
49 |
-
class TRIE_TOKENIZER():
|
50 |
-
def __init__(self, file_name):
|
51 |
-
self.idx2token = {}
|
52 |
-
sorted = [] # must be already sorted
|
53 |
-
with open(file_name, "r", encoding="utf-8") as f:
|
54 |
-
lines = f.readlines()
|
55 |
-
for l in lines:
|
56 |
-
idx = int(l[:l.index(' ')])
|
57 |
-
x = eval(l[l.index(' '):l.rindex(' ')])
|
58 |
-
x = x.encode("utf-8") if isinstance(x, str) else x
|
59 |
-
assert isinstance(x, bytes)
|
60 |
-
assert len(x) == int(l[l.rindex(' '):])
|
61 |
-
sorted += [x]
|
62 |
-
self.idx2token[idx] = x
|
63 |
-
|
64 |
-
self.token2idx = {}
|
65 |
-
for k,v in self.idx2token.items():
|
66 |
-
self.token2idx[v] = int(k)
|
67 |
-
|
68 |
-
self.root = TRIE()
|
69 |
-
for t, i in self.token2idx.items():
|
70 |
-
_ = self.root.add(t, val=(t, i))
|
71 |
-
|
72 |
-
def encodeBytes(self, src:bytes):
|
73 |
-
idx:int = 0
|
74 |
-
tokens = []
|
75 |
-
while (idx < len(src)):
|
76 |
-
_idx:int = idx
|
77 |
-
idx, _, values = self.root.find_longest(src, idx)
|
78 |
-
assert(idx != _idx)
|
79 |
-
_, token = next(iter(values))
|
80 |
-
tokens.append(token)
|
81 |
-
return tokens
|
82 |
-
|
83 |
-
def decodeBytes(self, tokens):
|
84 |
-
return b''.join(map(lambda i: self.idx2token[i], tokens))
|
85 |
-
|
86 |
-
def encode(self, src):
|
87 |
-
return self.encodeBytes(src.encode("utf-8"))
|
88 |
-
|
89 |
-
def decode(self, tokens):
|
90 |
-
try:
|
91 |
-
return self.decodeBytes(tokens).decode('utf-8')
|
92 |
-
except:
|
93 |
-
return '\ufffd' # bad utf-8
|
94 |
-
|
95 |
-
def printTokens(self, tokens):
|
96 |
-
for i in tokens:
|
97 |
-
s = self.idx2token[i]
|
98 |
-
try:
|
99 |
-
s = s.decode('utf-8')
|
100 |
-
except:
|
101 |
-
pass
|
102 |
-
print(f'{repr(s)}{i}', end=' ')
|
103 |
-
print()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rwkv/rwkv_vocab_v20230424.txt
DELETED
The diff for this file is too large to render.
See raw diff
|
|
rwkv/utils.py
DELETED
@@ -1,135 +0,0 @@
|
|
1 |
-
########################################################################################################
|
2 |
-
# The RWKV Language Model - https://github.com/BlinkDL/RWKV-LM
|
3 |
-
########################################################################################################
|
4 |
-
|
5 |
-
import os, sys
|
6 |
-
import numpy as np
|
7 |
-
import torch
|
8 |
-
from torch.nn import functional as F
|
9 |
-
|
10 |
-
class PIPELINE_ARGS():
|
11 |
-
def __init__(self, temperature=1.0, top_p=0.85, top_k=0, alpha_frequency=0.2, alpha_presence=0.2, alpha_decay=0.996, token_ban=[], token_stop=[], chunk_len=256):
|
12 |
-
self.temperature = temperature
|
13 |
-
self.top_p = top_p
|
14 |
-
self.top_k = top_k
|
15 |
-
self.alpha_frequency = alpha_frequency # Frequency Penalty (as in GPT-3)
|
16 |
-
self.alpha_presence = alpha_presence # Presence Penalty (as in GPT-3)
|
17 |
-
self.alpha_decay = alpha_decay # gradually decay the penalty
|
18 |
-
self.token_ban = token_ban # ban the generation of some tokens
|
19 |
-
self.token_stop = token_stop # stop generation whenever you see any token here
|
20 |
-
self.chunk_len = chunk_len # split input into chunks to save VRAM (shorter -> slower)
|
21 |
-
|
22 |
-
class PIPELINE():
|
23 |
-
def __init__(self, model, WORD_NAME):
|
24 |
-
self.model = model
|
25 |
-
if WORD_NAME == 'cl100k_base':
|
26 |
-
import tiktoken
|
27 |
-
self.tokenizer = tiktoken.get_encoding(WORD_NAME)
|
28 |
-
elif WORD_NAME == 'rwkv_vocab_v20230424':
|
29 |
-
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
30 |
-
from rwkv_tokenizer import TRIE_TOKENIZER
|
31 |
-
self.tokenizer = TRIE_TOKENIZER(os.path.dirname(os.path.abspath(__file__)) + '/rwkv_vocab_v20230424.txt')
|
32 |
-
else:
|
33 |
-
from tokenizers import Tokenizer
|
34 |
-
self.tokenizer = Tokenizer.from_file(WORD_NAME)
|
35 |
-
|
36 |
-
def refine_context(self, context):
|
37 |
-
context = context.strip().split('\n')
|
38 |
-
for c in range(len(context)):
|
39 |
-
context[c] = context[c].strip().strip('\u3000').strip('\r')
|
40 |
-
context = list(filter(lambda c: c != '', context))
|
41 |
-
context = '\n' + ('\n'.join(context)).strip()
|
42 |
-
if context == '':
|
43 |
-
context = '\n'
|
44 |
-
return context
|
45 |
-
|
46 |
-
def encode(self, x):
|
47 |
-
if 'Tokenizer' in str(type(self.tokenizer)):
|
48 |
-
return self.tokenizer.encode(x).ids
|
49 |
-
else:
|
50 |
-
return self.tokenizer.encode(x)
|
51 |
-
|
52 |
-
def decode(self, x):
|
53 |
-
return self.tokenizer.decode(x)
|
54 |
-
|
55 |
-
def sample_logits(self, logits, temperature=1.0, top_p=0.85, top_k=0):
|
56 |
-
if temperature == 0:
|
57 |
-
temperature = 1.0
|
58 |
-
top_p = 0
|
59 |
-
probs = F.softmax(logits.float(), dim=-1)
|
60 |
-
top_k = int(top_k)
|
61 |
-
# 'privateuseone' is the type of custom devices like `torch_directml.device()`
|
62 |
-
if probs.device.type in ['cpu', 'privateuseone']:
|
63 |
-
probs = probs.cpu().numpy()
|
64 |
-
sorted_ids = np.argsort(probs)
|
65 |
-
sorted_probs = probs[sorted_ids][::-1]
|
66 |
-
cumulative_probs = np.cumsum(sorted_probs)
|
67 |
-
cutoff = float(sorted_probs[np.argmax(cumulative_probs >= top_p)])
|
68 |
-
probs[probs < cutoff] = 0
|
69 |
-
if top_k < len(probs) and top_k > 0:
|
70 |
-
probs[sorted_ids[:-top_k]] = 0
|
71 |
-
if temperature != 1.0:
|
72 |
-
probs = probs ** (1.0 / temperature)
|
73 |
-
probs = probs / np.sum(probs)
|
74 |
-
out = np.random.choice(a=len(probs), p=probs)
|
75 |
-
return int(out)
|
76 |
-
else:
|
77 |
-
sorted_ids = torch.argsort(probs)
|
78 |
-
sorted_probs = probs[sorted_ids]
|
79 |
-
sorted_probs = torch.flip(sorted_probs, dims=(0,))
|
80 |
-
cumulative_probs = torch.cumsum(sorted_probs, dim=-1).cpu().numpy()
|
81 |
-
cutoff = float(sorted_probs[np.argmax(cumulative_probs >= top_p)])
|
82 |
-
probs[probs < cutoff] = 0
|
83 |
-
if top_k < len(probs) and top_k > 0:
|
84 |
-
probs[sorted_ids[:-top_k]] = 0
|
85 |
-
if temperature != 1.0:
|
86 |
-
probs = probs ** (1.0 / temperature)
|
87 |
-
out = torch.multinomial(probs, num_samples=1)[0]
|
88 |
-
return int(out)
|
89 |
-
|
90 |
-
def generate(self, ctx, token_count=100, args=PIPELINE_ARGS(), callback=None, state=None):
|
91 |
-
all_tokens = []
|
92 |
-
out_last = 0
|
93 |
-
out_str = ''
|
94 |
-
occurrence = {}
|
95 |
-
for i in range(token_count):
|
96 |
-
|
97 |
-
# forward & adjust prob.
|
98 |
-
tokens = self.encode(ctx) if i == 0 else [token]
|
99 |
-
while len(tokens) > 0:
|
100 |
-
out, state = self.model.forward(tokens[:args.chunk_len], state)
|
101 |
-
tokens = tokens[args.chunk_len:]
|
102 |
-
|
103 |
-
for n in args.token_ban:
|
104 |
-
out[n] = -float('inf')
|
105 |
-
for n in occurrence:
|
106 |
-
out[n] -= (args.alpha_presence + occurrence[n] * args.alpha_frequency)
|
107 |
-
|
108 |
-
# sampler
|
109 |
-
token = self.sample_logits(out, temperature=args.temperature, top_p=args.top_p, top_k=args.top_k)
|
110 |
-
if token in args.token_stop:
|
111 |
-
break
|
112 |
-
all_tokens += [token]
|
113 |
-
for xxx in occurrence:
|
114 |
-
occurrence[xxx] *= args.alpha_decay
|
115 |
-
|
116 |
-
ttt = self.decode([token])
|
117 |
-
www = 1
|
118 |
-
if ttt in ' \t0123456789':
|
119 |
-
www = 0
|
120 |
-
# elif ttt in '\r\n,.;?!"\':+-*/=#@$%^&_`~|<>\\()[]{}οΌγοΌββοΌοΌοΌοΌοΌγγ':
|
121 |
-
# www = 0.5
|
122 |
-
if token not in occurrence:
|
123 |
-
occurrence[token] = www
|
124 |
-
else:
|
125 |
-
occurrence[token] += www
|
126 |
-
# print(occurrence) # debug
|
127 |
-
|
128 |
-
# output
|
129 |
-
tmp = self.decode(all_tokens[out_last:])
|
130 |
-
if '\ufffd' not in tmp: # is valid utf-8 string?
|
131 |
-
if callback:
|
132 |
-
callback(tmp)
|
133 |
-
out_str += tmp
|
134 |
-
out_last = i + 1
|
135 |
-
return out_str
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
uv.lock
CHANGED
@@ -428,6 +428,20 @@ wheels = [
|
|
428 |
{ url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979 },
|
429 |
]
|
430 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
431 |
[[package]]
|
432 |
name = "mpmath"
|
433 |
version = "1.3.0"
|
@@ -876,6 +890,75 @@ wheels = [
|
|
876 |
{ url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", size = 156446 },
|
877 |
]
|
878 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
879 |
[[package]]
|
880 |
name = "requests"
|
881 |
version = "2.32.3"
|
@@ -919,6 +1002,18 @@ wheels = [
|
|
919 |
{ url = "https://files.pythonhosted.org/packages/7e/1b/1c2f43af46456050b27810a7a013af8a7e12bc545a0cdc00eb0df55eb769/rich_toolkit-0.13.2-py3-none-any.whl", hash = "sha256:f3f6c583e5283298a2f7dbd3c65aca18b7f818ad96174113ab5bec0b0e35ed61", size = 13566 },
|
920 |
]
|
921 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
922 |
[[package]]
|
923 |
name = "rwkv-hf-space"
|
924 |
version = "0.1.0"
|
@@ -927,14 +1022,17 @@ dependencies = [
|
|
927 |
{ name = "fastapi", extra = ["standard"] },
|
928 |
{ name = "huggingface-hub" },
|
929 |
{ name = "loguru" },
|
|
|
930 |
{ name = "ninja" },
|
931 |
{ name = "numpy" },
|
932 |
{ name = "pydantic" },
|
933 |
{ name = "pydantic-settings" },
|
934 |
{ name = "pynvml" },
|
935 |
{ name = "rich" },
|
|
|
936 |
{ name = "setuptools" },
|
937 |
{ name = "snowflake-id" },
|
|
|
938 |
]
|
939 |
|
940 |
[package.optional-dependencies]
|
@@ -954,20 +1052,45 @@ requires-dist = [
|
|
954 |
{ name = "fastapi", extras = ["standard"], specifier = ">=0.115.11" },
|
955 |
{ name = "huggingface-hub", specifier = ">=0.29.1" },
|
956 |
{ name = "loguru", specifier = ">=0.7.3" },
|
|
|
957 |
{ name = "ninja", specifier = ">=1.11.1.3" },
|
958 |
{ name = "numpy", specifier = ">=2.2.3" },
|
959 |
{ name = "pydantic", specifier = ">=2.10.6" },
|
960 |
{ name = "pydantic-settings", specifier = ">=2.8.1" },
|
961 |
{ name = "pynvml", specifier = ">=12.0.0" },
|
962 |
{ name = "rich", specifier = ">=13.9.4" },
|
|
|
963 |
{ name = "setuptools", specifier = ">=75.8.2" },
|
964 |
{ name = "snowflake-id", specifier = ">=1.0.2" },
|
965 |
{ name = "torch", marker = "extra == 'cpu'", specifier = ">=2.6.0", index = "https://download.pytorch.org/whl/cpu", conflict = { package = "rwkv-hf-space", extra = "cpu" } },
|
966 |
{ name = "torch", marker = "extra == 'cu113'", index = "https://download.pytorch.org/whl/cu113", conflict = { package = "rwkv-hf-space", extra = "cu113" } },
|
967 |
{ name = "torch", marker = "extra == 'cu124'", specifier = ">=2.6.0", index = "https://download.pytorch.org/whl/cu124", conflict = { package = "rwkv-hf-space", extra = "cu124" } },
|
|
|
968 |
]
|
969 |
provides-extras = ["cpu", "cu124", "cu113"]
|
970 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
971 |
[[package]]
|
972 |
name = "setuptools"
|
973 |
version = "75.8.2"
|
@@ -1028,6 +1151,31 @@ wheels = [
|
|
1028 |
{ url = "https://files.pythonhosted.org/packages/b2/fe/81695a1aa331a842b582453b605175f419fe8540355886031328089d840a/sympy-1.13.1-py3-none-any.whl", hash = "sha256:db36cdc64bf61b9b24578b6f7bab1ecdd2452cf008f34faa33776680c26d66f8", size = 6189177 },
|
1029 |
]
|
1030 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1031 |
[[package]]
|
1032 |
name = "torch"
|
1033 |
version = "2.0.1"
|
@@ -1157,6 +1305,27 @@ wheels = [
|
|
1157 |
{ url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl", hash = "sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2", size = 78540 },
|
1158 |
]
|
1159 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1160 |
[[package]]
|
1161 |
name = "triton"
|
1162 |
version = "3.2.0"
|
|
|
428 |
{ url = "https://files.pythonhosted.org/packages/b3/38/89ba8ad64ae25be8de66a6d463314cf1eb366222074cfda9ee839c56a4b4/mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8", size = 9979 },
|
429 |
]
|
430 |
|
431 |
+
[[package]]
|
432 |
+
name = "modelscope"
|
433 |
+
version = "1.24.0"
|
434 |
+
source = { registry = "https://pypi.org/simple" }
|
435 |
+
dependencies = [
|
436 |
+
{ name = "requests" },
|
437 |
+
{ name = "tqdm" },
|
438 |
+
{ name = "urllib3" },
|
439 |
+
]
|
440 |
+
sdist = { url = "https://files.pythonhosted.org/packages/ea/e1/3f571ee864df320a84748b2f7ffa7252903b4f4e8a6d470b8d10f972f82e/modelscope-1.24.0.tar.gz", hash = "sha256:6bf801164bfb115dfd8ac126b89d830a03ea85b4736765e59ef9db366662e018", size = 4388079 }
|
441 |
+
wheels = [
|
442 |
+
{ url = "https://files.pythonhosted.org/packages/2a/7f/01e685817c36b4280cdf21eebb35b5fb3f0024dd10f5929b06dc846b1eea/modelscope-1.24.0-py3-none-any.whl", hash = "sha256:b5c082798aad354f4f077535763e2d0ad91fb29935df6f2df5ca9003eeca5b3c", size = 5853001 },
|
443 |
+
]
|
444 |
+
|
445 |
[[package]]
|
446 |
name = "mpmath"
|
447 |
version = "1.3.0"
|
|
|
890 |
{ url = "https://files.pythonhosted.org/packages/fa/de/02b54f42487e3d3c6efb3f89428677074ca7bf43aae402517bc7cca949f3/PyYAML-6.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:8388ee1976c416731879ac16da0aff3f63b286ffdd57cdeb95f3f2e085687563", size = 156446 },
|
891 |
]
|
892 |
|
893 |
+
[[package]]
|
894 |
+
name = "regex"
|
895 |
+
version = "2024.11.6"
|
896 |
+
source = { registry = "https://pypi.org/simple" }
|
897 |
+
sdist = { url = "https://files.pythonhosted.org/packages/8e/5f/bd69653fbfb76cf8604468d3b4ec4c403197144c7bfe0e6a5fc9e02a07cb/regex-2024.11.6.tar.gz", hash = "sha256:7ab159b063c52a0333c884e4679f8d7a85112ee3078fe3d9004b2dd875585519", size = 399494 }
|
898 |
+
wheels = [
|
899 |
+
{ url = "https://files.pythonhosted.org/packages/95/3c/4651f6b130c6842a8f3df82461a8950f923925db8b6961063e82744bddcc/regex-2024.11.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ff590880083d60acc0433f9c3f713c51f7ac6ebb9adf889c79a261ecf541aa91", size = 482674 },
|
900 |
+
{ url = "https://files.pythonhosted.org/packages/15/51/9f35d12da8434b489c7b7bffc205c474a0a9432a889457026e9bc06a297a/regex-2024.11.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:658f90550f38270639e83ce492f27d2c8d2cd63805c65a13a14d36ca126753f0", size = 287684 },
|
901 |
+
{ url = "https://files.pythonhosted.org/packages/bd/18/b731f5510d1b8fb63c6b6d3484bfa9a59b84cc578ac8b5172970e05ae07c/regex-2024.11.6-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:164d8b7b3b4bcb2068b97428060b2a53be050085ef94eca7f240e7947f1b080e", size = 284589 },
|
902 |
+
{ url = "https://files.pythonhosted.org/packages/78/a2/6dd36e16341ab95e4c6073426561b9bfdeb1a9c9b63ab1b579c2e96cb105/regex-2024.11.6-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d3660c82f209655a06b587d55e723f0b813d3a7db2e32e5e7dc64ac2a9e86fde", size = 782511 },
|
903 |
+
{ url = "https://files.pythonhosted.org/packages/1b/2b/323e72d5d2fd8de0d9baa443e1ed70363ed7e7b2fb526f5950c5cb99c364/regex-2024.11.6-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d22326fcdef5e08c154280b71163ced384b428343ae16a5ab2b3354aed12436e", size = 821149 },
|
904 |
+
{ url = "https://files.pythonhosted.org/packages/90/30/63373b9ea468fbef8a907fd273e5c329b8c9535fee36fc8dba5fecac475d/regex-2024.11.6-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f1ac758ef6aebfc8943560194e9fd0fa18bcb34d89fd8bd2af18183afd8da3a2", size = 809707 },
|
905 |
+
{ url = "https://files.pythonhosted.org/packages/f2/98/26d3830875b53071f1f0ae6d547f1d98e964dd29ad35cbf94439120bb67a/regex-2024.11.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:997d6a487ff00807ba810e0f8332c18b4eb8d29463cfb7c820dc4b6e7562d0cf", size = 781702 },
|
906 |
+
{ url = "https://files.pythonhosted.org/packages/87/55/eb2a068334274db86208ab9d5599ffa63631b9f0f67ed70ea7c82a69bbc8/regex-2024.11.6-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:02a02d2bb04fec86ad61f3ea7f49c015a0681bf76abb9857f945d26159d2968c", size = 771976 },
|
907 |
+
{ url = "https://files.pythonhosted.org/packages/74/c0/be707bcfe98254d8f9d2cff55d216e946f4ea48ad2fd8cf1428f8c5332ba/regex-2024.11.6-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f02f93b92358ee3f78660e43b4b0091229260c5d5c408d17d60bf26b6c900e86", size = 697397 },
|
908 |
+
{ url = "https://files.pythonhosted.org/packages/49/dc/bb45572ceb49e0f6509f7596e4ba7031f6819ecb26bc7610979af5a77f45/regex-2024.11.6-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:06eb1be98df10e81ebaded73fcd51989dcf534e3c753466e4b60c4697a003b67", size = 768726 },
|
909 |
+
{ url = "https://files.pythonhosted.org/packages/5a/db/f43fd75dc4c0c2d96d0881967897926942e935d700863666f3c844a72ce6/regex-2024.11.6-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:040df6fe1a5504eb0f04f048e6d09cd7c7110fef851d7c567a6b6e09942feb7d", size = 775098 },
|
910 |
+
{ url = "https://files.pythonhosted.org/packages/99/d7/f94154db29ab5a89d69ff893159b19ada89e76b915c1293e98603d39838c/regex-2024.11.6-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:fdabbfc59f2c6edba2a6622c647b716e34e8e3867e0ab975412c5c2f79b82da2", size = 839325 },
|
911 |
+
{ url = "https://files.pythonhosted.org/packages/f7/17/3cbfab1f23356fbbf07708220ab438a7efa1e0f34195bf857433f79f1788/regex-2024.11.6-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:8447d2d39b5abe381419319f942de20b7ecd60ce86f16a23b0698f22e1b70008", size = 843277 },
|
912 |
+
{ url = "https://files.pythonhosted.org/packages/7e/f2/48b393b51900456155de3ad001900f94298965e1cad1c772b87f9cfea011/regex-2024.11.6-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:da8f5fc57d1933de22a9e23eec290a0d8a5927a5370d24bda9a6abe50683fe62", size = 773197 },
|
913 |
+
{ url = "https://files.pythonhosted.org/packages/45/3f/ef9589aba93e084cd3f8471fded352826dcae8489b650d0b9b27bc5bba8a/regex-2024.11.6-cp310-cp310-win32.whl", hash = "sha256:b489578720afb782f6ccf2840920f3a32e31ba28a4b162e13900c3e6bd3f930e", size = 261714 },
|
914 |
+
{ url = "https://files.pythonhosted.org/packages/42/7e/5f1b92c8468290c465fd50c5318da64319133231415a8aa6ea5ab995a815/regex-2024.11.6-cp310-cp310-win_amd64.whl", hash = "sha256:5071b2093e793357c9d8b2929dfc13ac5f0a6c650559503bb81189d0a3814519", size = 274042 },
|
915 |
+
{ url = "https://files.pythonhosted.org/packages/58/58/7e4d9493a66c88a7da6d205768119f51af0f684fe7be7bac8328e217a52c/regex-2024.11.6-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:5478c6962ad548b54a591778e93cd7c456a7a29f8eca9c49e4f9a806dcc5d638", size = 482669 },
|
916 |
+
{ url = "https://files.pythonhosted.org/packages/34/4c/8f8e631fcdc2ff978609eaeef1d6994bf2f028b59d9ac67640ed051f1218/regex-2024.11.6-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:2c89a8cc122b25ce6945f0423dc1352cb9593c68abd19223eebbd4e56612c5b7", size = 287684 },
|
917 |
+
{ url = "https://files.pythonhosted.org/packages/c5/1b/f0e4d13e6adf866ce9b069e191f303a30ab1277e037037a365c3aad5cc9c/regex-2024.11.6-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:94d87b689cdd831934fa3ce16cc15cd65748e6d689f5d2b8f4f4df2065c9fa20", size = 284589 },
|
918 |
+
{ url = "https://files.pythonhosted.org/packages/25/4d/ab21047f446693887f25510887e6820b93f791992994f6498b0318904d4a/regex-2024.11.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1062b39a0a2b75a9c694f7a08e7183a80c63c0d62b301418ffd9c35f55aaa114", size = 792121 },
|
919 |
+
{ url = "https://files.pythonhosted.org/packages/45/ee/c867e15cd894985cb32b731d89576c41a4642a57850c162490ea34b78c3b/regex-2024.11.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:167ed4852351d8a750da48712c3930b031f6efdaa0f22fa1933716bfcd6bf4a3", size = 831275 },
|
920 |
+
{ url = "https://files.pythonhosted.org/packages/b3/12/b0f480726cf1c60f6536fa5e1c95275a77624f3ac8fdccf79e6727499e28/regex-2024.11.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2d548dafee61f06ebdb584080621f3e0c23fff312f0de1afc776e2a2ba99a74f", size = 818257 },
|
921 |
+
{ url = "https://files.pythonhosted.org/packages/bf/ce/0d0e61429f603bac433910d99ef1a02ce45a8967ffbe3cbee48599e62d88/regex-2024.11.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2a19f302cd1ce5dd01a9099aaa19cae6173306d1302a43b627f62e21cf18ac0", size = 792727 },
|
922 |
+
{ url = "https://files.pythonhosted.org/packages/e4/c1/243c83c53d4a419c1556f43777ccb552bccdf79d08fda3980e4e77dd9137/regex-2024.11.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bec9931dfb61ddd8ef2ebc05646293812cb6b16b60cf7c9511a832b6f1854b55", size = 780667 },
|
923 |
+
{ url = "https://files.pythonhosted.org/packages/c5/f4/75eb0dd4ce4b37f04928987f1d22547ddaf6c4bae697623c1b05da67a8aa/regex-2024.11.6-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:9714398225f299aa85267fd222f7142fcb5c769e73d7733344efc46f2ef5cf89", size = 776963 },
|
924 |
+
{ url = "https://files.pythonhosted.org/packages/16/5d/95c568574e630e141a69ff8a254c2f188b4398e813c40d49228c9bbd9875/regex-2024.11.6-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:202eb32e89f60fc147a41e55cb086db2a3f8cb82f9a9a88440dcfc5d37faae8d", size = 784700 },
|
925 |
+
{ url = "https://files.pythonhosted.org/packages/8e/b5/f8495c7917f15cc6fee1e7f395e324ec3e00ab3c665a7dc9d27562fd5290/regex-2024.11.6-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:4181b814e56078e9b00427ca358ec44333765f5ca1b45597ec7446d3a1ef6e34", size = 848592 },
|
926 |
+
{ url = "https://files.pythonhosted.org/packages/1c/80/6dd7118e8cb212c3c60b191b932dc57db93fb2e36fb9e0e92f72a5909af9/regex-2024.11.6-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:068376da5a7e4da51968ce4c122a7cd31afaaec4fccc7856c92f63876e57b51d", size = 852929 },
|
927 |
+
{ url = "https://files.pythonhosted.org/packages/11/9b/5a05d2040297d2d254baf95eeeb6df83554e5e1df03bc1a6687fc4ba1f66/regex-2024.11.6-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:ac10f2c4184420d881a3475fb2c6f4d95d53a8d50209a2500723d831036f7c45", size = 781213 },
|
928 |
+
{ url = "https://files.pythonhosted.org/packages/26/b7/b14e2440156ab39e0177506c08c18accaf2b8932e39fb092074de733d868/regex-2024.11.6-cp311-cp311-win32.whl", hash = "sha256:c36f9b6f5f8649bb251a5f3f66564438977b7ef8386a52460ae77e6070d309d9", size = 261734 },
|
929 |
+
{ url = "https://files.pythonhosted.org/packages/80/32/763a6cc01d21fb3819227a1cc3f60fd251c13c37c27a73b8ff4315433a8e/regex-2024.11.6-cp311-cp311-win_amd64.whl", hash = "sha256:02e28184be537f0e75c1f9b2f8847dc51e08e6e171c6bde130b2687e0c33cf60", size = 274052 },
|
930 |
+
{ url = "https://files.pythonhosted.org/packages/ba/30/9a87ce8336b172cc232a0db89a3af97929d06c11ceaa19d97d84fa90a8f8/regex-2024.11.6-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:52fb28f528778f184f870b7cf8f225f5eef0a8f6e3778529bdd40c7b3920796a", size = 483781 },
|
931 |
+
{ url = "https://files.pythonhosted.org/packages/01/e8/00008ad4ff4be8b1844786ba6636035f7ef926db5686e4c0f98093612add/regex-2024.11.6-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:fdd6028445d2460f33136c55eeb1f601ab06d74cb3347132e1c24250187500d9", size = 288455 },
|
932 |
+
{ url = "https://files.pythonhosted.org/packages/60/85/cebcc0aff603ea0a201667b203f13ba75d9fc8668fab917ac5b2de3967bc/regex-2024.11.6-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:805e6b60c54bf766b251e94526ebad60b7de0c70f70a4e6210ee2891acb70bf2", size = 284759 },
|
933 |
+
{ url = "https://files.pythonhosted.org/packages/94/2b/701a4b0585cb05472a4da28ee28fdfe155f3638f5e1ec92306d924e5faf0/regex-2024.11.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b85c2530be953a890eaffde05485238f07029600e8f098cdf1848d414a8b45e4", size = 794976 },
|
934 |
+
{ url = "https://files.pythonhosted.org/packages/4b/bf/fa87e563bf5fee75db8915f7352e1887b1249126a1be4813837f5dbec965/regex-2024.11.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bb26437975da7dc36b7efad18aa9dd4ea569d2357ae6b783bf1118dabd9ea577", size = 833077 },
|
935 |
+
{ url = "https://files.pythonhosted.org/packages/a1/56/7295e6bad94b047f4d0834e4779491b81216583c00c288252ef625c01d23/regex-2024.11.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:abfa5080c374a76a251ba60683242bc17eeb2c9818d0d30117b4486be10c59d3", size = 823160 },
|
936 |
+
{ url = "https://files.pythonhosted.org/packages/fb/13/e3b075031a738c9598c51cfbc4c7879e26729c53aa9cca59211c44235314/regex-2024.11.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70b7fa6606c2881c1db9479b0eaa11ed5dfa11c8d60a474ff0e095099f39d98e", size = 796896 },
|
937 |
+
{ url = "https://files.pythonhosted.org/packages/24/56/0b3f1b66d592be6efec23a795b37732682520b47c53da5a32c33ed7d84e3/regex-2024.11.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0c32f75920cf99fe6b6c539c399a4a128452eaf1af27f39bce8909c9a3fd8cbe", size = 783997 },
|
938 |
+
{ url = "https://files.pythonhosted.org/packages/f9/a1/eb378dada8b91c0e4c5f08ffb56f25fcae47bf52ad18f9b2f33b83e6d498/regex-2024.11.6-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:982e6d21414e78e1f51cf595d7f321dcd14de1f2881c5dc6a6e23bbbbd68435e", size = 781725 },
|
939 |
+
{ url = "https://files.pythonhosted.org/packages/83/f2/033e7dec0cfd6dda93390089864732a3409246ffe8b042e9554afa9bff4e/regex-2024.11.6-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:a7c2155f790e2fb448faed6dd241386719802296ec588a8b9051c1f5c481bc29", size = 789481 },
|
940 |
+
{ url = "https://files.pythonhosted.org/packages/83/23/15d4552ea28990a74e7696780c438aadd73a20318c47e527b47a4a5a596d/regex-2024.11.6-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:149f5008d286636e48cd0b1dd65018548944e495b0265b45e1bffecce1ef7f39", size = 852896 },
|
941 |
+
{ url = "https://files.pythonhosted.org/packages/e3/39/ed4416bc90deedbfdada2568b2cb0bc1fdb98efe11f5378d9892b2a88f8f/regex-2024.11.6-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:e5364a4502efca094731680e80009632ad6624084aff9a23ce8c8c6820de3e51", size = 860138 },
|
942 |
+
{ url = "https://files.pythonhosted.org/packages/93/2d/dd56bb76bd8e95bbce684326302f287455b56242a4f9c61f1bc76e28360e/regex-2024.11.6-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:0a86e7eeca091c09e021db8eb72d54751e527fa47b8d5787caf96d9831bd02ad", size = 787692 },
|
943 |
+
{ url = "https://files.pythonhosted.org/packages/0b/55/31877a249ab7a5156758246b9c59539abbeba22461b7d8adc9e8475ff73e/regex-2024.11.6-cp312-cp312-win32.whl", hash = "sha256:32f9a4c643baad4efa81d549c2aadefaeba12249b2adc5af541759237eee1c54", size = 262135 },
|
944 |
+
{ url = "https://files.pythonhosted.org/packages/38/ec/ad2d7de49a600cdb8dd78434a1aeffe28b9d6fc42eb36afab4a27ad23384/regex-2024.11.6-cp312-cp312-win_amd64.whl", hash = "sha256:a93c194e2df18f7d264092dc8539b8ffb86b45b899ab976aa15d48214138e81b", size = 273567 },
|
945 |
+
{ url = "https://files.pythonhosted.org/packages/90/73/bcb0e36614601016552fa9344544a3a2ae1809dc1401b100eab02e772e1f/regex-2024.11.6-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a6ba92c0bcdf96cbf43a12c717eae4bc98325ca3730f6b130ffa2e3c3c723d84", size = 483525 },
|
946 |
+
{ url = "https://files.pythonhosted.org/packages/0f/3f/f1a082a46b31e25291d830b369b6b0c5576a6f7fb89d3053a354c24b8a83/regex-2024.11.6-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:525eab0b789891ac3be914d36893bdf972d483fe66551f79d3e27146191a37d4", size = 288324 },
|
947 |
+
{ url = "https://files.pythonhosted.org/packages/09/c9/4e68181a4a652fb3ef5099e077faf4fd2a694ea6e0f806a7737aff9e758a/regex-2024.11.6-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:086a27a0b4ca227941700e0b31425e7a28ef1ae8e5e05a33826e17e47fbfdba0", size = 284617 },
|
948 |
+
{ url = "https://files.pythonhosted.org/packages/fc/fd/37868b75eaf63843165f1d2122ca6cb94bfc0271e4428cf58c0616786dce/regex-2024.11.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:bde01f35767c4a7899b7eb6e823b125a64de314a8ee9791367c9a34d56af18d0", size = 795023 },
|
949 |
+
{ url = "https://files.pythonhosted.org/packages/c4/7c/d4cd9c528502a3dedb5c13c146e7a7a539a3853dc20209c8e75d9ba9d1b2/regex-2024.11.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b583904576650166b3d920d2bcce13971f6f9e9a396c673187f49811b2769dc7", size = 833072 },
|
950 |
+
{ url = "https://files.pythonhosted.org/packages/4f/db/46f563a08f969159c5a0f0e722260568425363bea43bb7ae370becb66a67/regex-2024.11.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1c4de13f06a0d54fa0d5ab1b7138bfa0d883220965a29616e3ea61b35d5f5fc7", size = 823130 },
|
951 |
+
{ url = "https://files.pythonhosted.org/packages/db/60/1eeca2074f5b87df394fccaa432ae3fc06c9c9bfa97c5051aed70e6e00c2/regex-2024.11.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3cde6e9f2580eb1665965ce9bf17ff4952f34f5b126beb509fee8f4e994f143c", size = 796857 },
|
952 |
+
{ url = "https://files.pythonhosted.org/packages/10/db/ac718a08fcee981554d2f7bb8402f1faa7e868c1345c16ab1ebec54b0d7b/regex-2024.11.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0d7f453dca13f40a02b79636a339c5b62b670141e63efd511d3f8f73fba162b3", size = 784006 },
|
953 |
+
{ url = "https://files.pythonhosted.org/packages/c2/41/7da3fe70216cea93144bf12da2b87367590bcf07db97604edeea55dac9ad/regex-2024.11.6-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:59dfe1ed21aea057a65c6b586afd2a945de04fc7db3de0a6e3ed5397ad491b07", size = 781650 },
|
954 |
+
{ url = "https://files.pythonhosted.org/packages/a7/d5/880921ee4eec393a4752e6ab9f0fe28009435417c3102fc413f3fe81c4e5/regex-2024.11.6-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b97c1e0bd37c5cd7902e65f410779d39eeda155800b65fc4d04cc432efa9bc6e", size = 789545 },
|
955 |
+
{ url = "https://files.pythonhosted.org/packages/dc/96/53770115e507081122beca8899ab7f5ae28ae790bfcc82b5e38976df6a77/regex-2024.11.6-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:f9d1e379028e0fc2ae3654bac3cbbef81bf3fd571272a42d56c24007979bafb6", size = 853045 },
|
956 |
+
{ url = "https://files.pythonhosted.org/packages/31/d3/1372add5251cc2d44b451bd94f43b2ec78e15a6e82bff6a290ef9fd8f00a/regex-2024.11.6-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:13291b39131e2d002a7940fb176e120bec5145f3aeb7621be6534e46251912c4", size = 860182 },
|
957 |
+
{ url = "https://files.pythonhosted.org/packages/ed/e3/c446a64984ea9f69982ba1a69d4658d5014bc7a0ea468a07e1a1265db6e2/regex-2024.11.6-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4f51f88c126370dcec4908576c5a627220da6c09d0bff31cfa89f2523843316d", size = 787733 },
|
958 |
+
{ url = "https://files.pythonhosted.org/packages/2b/f1/e40c8373e3480e4f29f2692bd21b3e05f296d3afebc7e5dcf21b9756ca1c/regex-2024.11.6-cp313-cp313-win32.whl", hash = "sha256:63b13cfd72e9601125027202cad74995ab26921d8cd935c25f09c630436348ff", size = 262122 },
|
959 |
+
{ url = "https://files.pythonhosted.org/packages/45/94/bc295babb3062a731f52621cdc992d123111282e291abaf23faa413443ea/regex-2024.11.6-cp313-cp313-win_amd64.whl", hash = "sha256:2b3361af3198667e99927da8b84c1b010752fa4b1115ee30beaa332cabc3ef1a", size = 273545 },
|
960 |
+
]
|
961 |
+
|
962 |
[[package]]
|
963 |
name = "requests"
|
964 |
version = "2.32.3"
|
|
|
1002 |
{ url = "https://files.pythonhosted.org/packages/7e/1b/1c2f43af46456050b27810a7a013af8a7e12bc545a0cdc00eb0df55eb769/rich_toolkit-0.13.2-py3-none-any.whl", hash = "sha256:f3f6c583e5283298a2f7dbd3c65aca18b7f818ad96174113ab5bec0b0e35ed61", size = 13566 },
|
1003 |
]
|
1004 |
|
1005 |
+
[[package]]
|
1006 |
+
name = "rwkv"
|
1007 |
+
version = "0.8.28"
|
1008 |
+
source = { registry = "https://pypi.org/simple" }
|
1009 |
+
dependencies = [
|
1010 |
+
{ name = "tokenizers" },
|
1011 |
+
]
|
1012 |
+
sdist = { url = "https://files.pythonhosted.org/packages/d1/82/9995003bd7f93e1e6433b6ce8fa21a1079fcd35095a9cb7d8c0439f884c1/rwkv-0.8.28.tar.gz", hash = "sha256:62dab7afe791c0377b936dcd229fdd10319de714ac5e514ba8db3d23c14295a8", size = 407881 }
|
1013 |
+
wheels = [
|
1014 |
+
{ url = "https://files.pythonhosted.org/packages/b2/5f/bcc13f66cc4f849000d68c11ffa7e85e05f9a552a5eba6c3c0326f201eb8/rwkv-0.8.28-py3-none-any.whl", hash = "sha256:459ead27e6d68f72de935b7ede876b0820fae95a6fbf77c434c05d4b29304e40", size = 409995 },
|
1015 |
+
]
|
1016 |
+
|
1017 |
[[package]]
|
1018 |
name = "rwkv-hf-space"
|
1019 |
version = "0.1.0"
|
|
|
1022 |
{ name = "fastapi", extra = ["standard"] },
|
1023 |
{ name = "huggingface-hub" },
|
1024 |
{ name = "loguru" },
|
1025 |
+
{ name = "modelscope" },
|
1026 |
{ name = "ninja" },
|
1027 |
{ name = "numpy" },
|
1028 |
{ name = "pydantic" },
|
1029 |
{ name = "pydantic-settings" },
|
1030 |
{ name = "pynvml" },
|
1031 |
{ name = "rich" },
|
1032 |
+
{ name = "rwkv" },
|
1033 |
{ name = "setuptools" },
|
1034 |
{ name = "snowflake-id" },
|
1035 |
+
{ name = "transformers" },
|
1036 |
]
|
1037 |
|
1038 |
[package.optional-dependencies]
|
|
|
1052 |
{ name = "fastapi", extras = ["standard"], specifier = ">=0.115.11" },
|
1053 |
{ name = "huggingface-hub", specifier = ">=0.29.1" },
|
1054 |
{ name = "loguru", specifier = ">=0.7.3" },
|
1055 |
+
{ name = "modelscope", specifier = ">=1.23.0" },
|
1056 |
{ name = "ninja", specifier = ">=1.11.1.3" },
|
1057 |
{ name = "numpy", specifier = ">=2.2.3" },
|
1058 |
{ name = "pydantic", specifier = ">=2.10.6" },
|
1059 |
{ name = "pydantic-settings", specifier = ">=2.8.1" },
|
1060 |
{ name = "pynvml", specifier = ">=12.0.0" },
|
1061 |
{ name = "rich", specifier = ">=13.9.4" },
|
1062 |
+
{ name = "rwkv", specifier = ">=0.8.28" },
|
1063 |
{ name = "setuptools", specifier = ">=75.8.2" },
|
1064 |
{ name = "snowflake-id", specifier = ">=1.0.2" },
|
1065 |
{ name = "torch", marker = "extra == 'cpu'", specifier = ">=2.6.0", index = "https://download.pytorch.org/whl/cpu", conflict = { package = "rwkv-hf-space", extra = "cpu" } },
|
1066 |
{ name = "torch", marker = "extra == 'cu113'", index = "https://download.pytorch.org/whl/cu113", conflict = { package = "rwkv-hf-space", extra = "cu113" } },
|
1067 |
{ name = "torch", marker = "extra == 'cu124'", specifier = ">=2.6.0", index = "https://download.pytorch.org/whl/cu124", conflict = { package = "rwkv-hf-space", extra = "cu124" } },
|
1068 |
+
{ name = "transformers" },
|
1069 |
]
|
1070 |
provides-extras = ["cpu", "cu124", "cu113"]
|
1071 |
|
1072 |
+
[[package]]
|
1073 |
+
name = "safetensors"
|
1074 |
+
version = "0.5.3"
|
1075 |
+
source = { registry = "https://pypi.org/simple" }
|
1076 |
+
sdist = { url = "https://files.pythonhosted.org/packages/71/7e/2d5d6ee7b40c0682315367ec7475693d110f512922d582fef1bd4a63adc3/safetensors-0.5.3.tar.gz", hash = "sha256:b6b0d6ecacec39a4fdd99cc19f4576f5219ce858e6fd8dbe7609df0b8dc56965", size = 67210 }
|
1077 |
+
wheels = [
|
1078 |
+
{ url = "https://files.pythonhosted.org/packages/18/ae/88f6c49dbd0cc4da0e08610019a3c78a7d390879a919411a410a1876d03a/safetensors-0.5.3-cp38-abi3-macosx_10_12_x86_64.whl", hash = "sha256:bd20eb133db8ed15b40110b7c00c6df51655a2998132193de2f75f72d99c7073", size = 436917 },
|
1079 |
+
{ url = "https://files.pythonhosted.org/packages/b8/3b/11f1b4a2f5d2ab7da34ecc062b0bc301f2be024d110a6466726bec8c055c/safetensors-0.5.3-cp38-abi3-macosx_11_0_arm64.whl", hash = "sha256:21d01c14ff6c415c485616b8b0bf961c46b3b343ca59110d38d744e577f9cce7", size = 418419 },
|
1080 |
+
{ url = "https://files.pythonhosted.org/packages/5d/9a/add3e6fef267658075c5a41573c26d42d80c935cdc992384dfae435feaef/safetensors-0.5.3-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:11bce6164887cd491ca75c2326a113ba934be596e22b28b1742ce27b1d076467", size = 459493 },
|
1081 |
+
{ url = "https://files.pythonhosted.org/packages/df/5c/bf2cae92222513cc23b3ff85c4a1bb2811a2c3583ac0f8e8d502751de934/safetensors-0.5.3-cp38-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4a243be3590bc3301c821da7a18d87224ef35cbd3e5f5727e4e0728b8172411e", size = 472400 },
|
1082 |
+
{ url = "https://files.pythonhosted.org/packages/58/11/7456afb740bd45782d0f4c8e8e1bb9e572f1bf82899fb6ace58af47b4282/safetensors-0.5.3-cp38-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8bd84b12b1670a6f8e50f01e28156422a2bc07fb16fc4e98bded13039d688a0d", size = 522891 },
|
1083 |
+
{ url = "https://files.pythonhosted.org/packages/57/3d/fe73a9d2ace487e7285f6e157afee2383bd1ddb911b7cb44a55cf812eae3/safetensors-0.5.3-cp38-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:391ac8cab7c829452175f871fcaf414aa1e292b5448bd02620f675a7f3e7abb9", size = 537694 },
|
1084 |
+
{ url = "https://files.pythonhosted.org/packages/a6/f8/dae3421624fcc87a89d42e1898a798bc7ff72c61f38973a65d60df8f124c/safetensors-0.5.3-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cead1fa41fc54b1e61089fa57452e8834f798cb1dc7a09ba3524f1eb08e0317a", size = 471642 },
|
1085 |
+
{ url = "https://files.pythonhosted.org/packages/ce/20/1fbe16f9b815f6c5a672f5b760951e20e17e43f67f231428f871909a37f6/safetensors-0.5.3-cp38-abi3-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1077f3e94182d72618357b04b5ced540ceb71c8a813d3319f1aba448e68a770d", size = 502241 },
|
1086 |
+
{ url = "https://files.pythonhosted.org/packages/5f/18/8e108846b506487aa4629fe4116b27db65c3dde922de2c8e0cc1133f3f29/safetensors-0.5.3-cp38-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:799021e78287bac619c7b3f3606730a22da4cda27759ddf55d37c8db7511c74b", size = 638001 },
|
1087 |
+
{ url = "https://files.pythonhosted.org/packages/82/5a/c116111d8291af6c8c8a8b40628fe833b9db97d8141c2a82359d14d9e078/safetensors-0.5.3-cp38-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:df26da01aaac504334644e1b7642fa000bfec820e7cef83aeac4e355e03195ff", size = 734013 },
|
1088 |
+
{ url = "https://files.pythonhosted.org/packages/7d/ff/41fcc4d3b7de837963622e8610d998710705bbde9a8a17221d85e5d0baad/safetensors-0.5.3-cp38-abi3-musllinux_1_2_i686.whl", hash = "sha256:32c3ef2d7af8b9f52ff685ed0bc43913cdcde135089ae322ee576de93eae5135", size = 670687 },
|
1089 |
+
{ url = "https://files.pythonhosted.org/packages/40/ad/2b113098e69c985a3d8fbda4b902778eae4a35b7d5188859b4a63d30c161/safetensors-0.5.3-cp38-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:37f1521be045e56fc2b54c606d4455573e717b2d887c579ee1dbba5f868ece04", size = 643147 },
|
1090 |
+
{ url = "https://files.pythonhosted.org/packages/0a/0c/95aeb51d4246bd9a3242d3d8349c1112b4ee7611a4b40f0c5c93b05f001d/safetensors-0.5.3-cp38-abi3-win32.whl", hash = "sha256:cfc0ec0846dcf6763b0ed3d1846ff36008c6e7290683b61616c4b040f6a54ace", size = 296677 },
|
1091 |
+
{ url = "https://files.pythonhosted.org/packages/69/e2/b011c38e5394c4c18fb5500778a55ec43ad6106126e74723ffaee246f56e/safetensors-0.5.3-cp38-abi3-win_amd64.whl", hash = "sha256:836cbbc320b47e80acd40e44c8682db0e8ad7123209f69b093def21ec7cafd11", size = 308878 },
|
1092 |
+
]
|
1093 |
+
|
1094 |
[[package]]
|
1095 |
name = "setuptools"
|
1096 |
version = "75.8.2"
|
|
|
1151 |
{ url = "https://files.pythonhosted.org/packages/b2/fe/81695a1aa331a842b582453b605175f419fe8540355886031328089d840a/sympy-1.13.1-py3-none-any.whl", hash = "sha256:db36cdc64bf61b9b24578b6f7bab1ecdd2452cf008f34faa33776680c26d66f8", size = 6189177 },
|
1152 |
]
|
1153 |
|
1154 |
+
[[package]]
|
1155 |
+
name = "tokenizers"
|
1156 |
+
version = "0.21.1"
|
1157 |
+
source = { registry = "https://pypi.org/simple" }
|
1158 |
+
dependencies = [
|
1159 |
+
{ name = "huggingface-hub" },
|
1160 |
+
]
|
1161 |
+
sdist = { url = "https://files.pythonhosted.org/packages/92/76/5ac0c97f1117b91b7eb7323dcd61af80d72f790b4df71249a7850c195f30/tokenizers-0.21.1.tar.gz", hash = "sha256:a1bb04dc5b448985f86ecd4b05407f5a8d97cb2c0532199b2a302a604a0165ab", size = 343256 }
|
1162 |
+
wheels = [
|
1163 |
+
{ url = "https://files.pythonhosted.org/packages/a5/1f/328aee25f9115bf04262e8b4e5a2050b7b7cf44b59c74e982db7270c7f30/tokenizers-0.21.1-cp39-abi3-macosx_10_12_x86_64.whl", hash = "sha256:e78e413e9e668ad790a29456e677d9d3aa50a9ad311a40905d6861ba7692cf41", size = 2780767 },
|
1164 |
+
{ url = "https://files.pythonhosted.org/packages/ae/1a/4526797f3719b0287853f12c5ad563a9be09d446c44ac784cdd7c50f76ab/tokenizers-0.21.1-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:cd51cd0a91ecc801633829fcd1fda9cf8682ed3477c6243b9a095539de4aecf3", size = 2650555 },
|
1165 |
+
{ url = "https://files.pythonhosted.org/packages/4d/7a/a209b29f971a9fdc1da86f917fe4524564924db50d13f0724feed37b2a4d/tokenizers-0.21.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28da6b72d4fb14ee200a1bd386ff74ade8992d7f725f2bde2c495a9a98cf4d9f", size = 2937541 },
|
1166 |
+
{ url = "https://files.pythonhosted.org/packages/3c/1e/b788b50ffc6191e0b1fc2b0d49df8cff16fe415302e5ceb89f619d12c5bc/tokenizers-0.21.1-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:34d8cfde551c9916cb92014e040806122295a6800914bab5865deb85623931cf", size = 2819058 },
|
1167 |
+
{ url = "https://files.pythonhosted.org/packages/36/aa/3626dfa09a0ecc5b57a8c58eeaeb7dd7ca9a37ad9dd681edab5acd55764c/tokenizers-0.21.1-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aaa852d23e125b73d283c98f007e06d4595732104b65402f46e8ef24b588d9f8", size = 3133278 },
|
1168 |
+
{ url = "https://files.pythonhosted.org/packages/a4/4d/8fbc203838b3d26269f944a89459d94c858f5b3f9a9b6ee9728cdcf69161/tokenizers-0.21.1-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a21a15d5c8e603331b8a59548bbe113564136dc0f5ad8306dd5033459a226da0", size = 3144253 },
|
1169 |
+
{ url = "https://files.pythonhosted.org/packages/d8/1b/2bd062adeb7c7511b847b32e356024980c0ffcf35f28947792c2d8ad2288/tokenizers-0.21.1-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2fdbd4c067c60a0ac7eca14b6bd18a5bebace54eb757c706b47ea93204f7a37c", size = 3398225 },
|
1170 |
+
{ url = "https://files.pythonhosted.org/packages/8a/63/38be071b0c8e06840bc6046991636bcb30c27f6bb1e670f4f4bc87cf49cc/tokenizers-0.21.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2dd9a0061e403546f7377df940e866c3e678d7d4e9643d0461ea442b4f89e61a", size = 3038874 },
|
1171 |
+
{ url = "https://files.pythonhosted.org/packages/ec/83/afa94193c09246417c23a3c75a8a0a96bf44ab5630a3015538d0c316dd4b/tokenizers-0.21.1-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:db9484aeb2e200c43b915a1a0150ea885e35f357a5a8fabf7373af333dcc8dbf", size = 9014448 },
|
1172 |
+
{ url = "https://files.pythonhosted.org/packages/ae/b3/0e1a37d4f84c0f014d43701c11eb8072704f6efe8d8fc2dcdb79c47d76de/tokenizers-0.21.1-cp39-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:ed248ab5279e601a30a4d67bdb897ecbe955a50f1e7bb62bd99f07dd11c2f5b6", size = 8937877 },
|
1173 |
+
{ url = "https://files.pythonhosted.org/packages/ac/33/ff08f50e6d615eb180a4a328c65907feb6ded0b8f990ec923969759dc379/tokenizers-0.21.1-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:9ac78b12e541d4ce67b4dfd970e44c060a2147b9b2a21f509566d556a509c67d", size = 9186645 },
|
1174 |
+
{ url = "https://files.pythonhosted.org/packages/5f/aa/8ae85f69a9f6012c6f8011c6f4aa1c96154c816e9eea2e1b758601157833/tokenizers-0.21.1-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:e5a69c1a4496b81a5ee5d2c1f3f7fbdf95e90a0196101b0ee89ed9956b8a168f", size = 9384380 },
|
1175 |
+
{ url = "https://files.pythonhosted.org/packages/e8/5b/a5d98c89f747455e8b7a9504910c865d5e51da55e825a7ae641fb5ff0a58/tokenizers-0.21.1-cp39-abi3-win32.whl", hash = "sha256:1039a3a5734944e09de1d48761ade94e00d0fa760c0e0551151d4dd851ba63e3", size = 2239506 },
|
1176 |
+
{ url = "https://files.pythonhosted.org/packages/e6/b6/072a8e053ae600dcc2ac0da81a23548e3b523301a442a6ca900e92ac35be/tokenizers-0.21.1-cp39-abi3-win_amd64.whl", hash = "sha256:0f0dcbcc9f6e13e675a66d7a5f2f225a736745ce484c1a4e07476a89ccdad382", size = 2435481 },
|
1177 |
+
]
|
1178 |
+
|
1179 |
[[package]]
|
1180 |
name = "torch"
|
1181 |
version = "2.0.1"
|
|
|
1305 |
{ url = "https://files.pythonhosted.org/packages/d0/30/dc54f88dd4a2b5dc8a0279bdd7270e735851848b762aeb1c1184ed1f6b14/tqdm-4.67.1-py3-none-any.whl", hash = "sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2", size = 78540 },
|
1306 |
]
|
1307 |
|
1308 |
+
[[package]]
|
1309 |
+
name = "transformers"
|
1310 |
+
version = "4.49.0"
|
1311 |
+
source = { registry = "https://pypi.org/simple" }
|
1312 |
+
dependencies = [
|
1313 |
+
{ name = "filelock" },
|
1314 |
+
{ name = "huggingface-hub" },
|
1315 |
+
{ name = "numpy" },
|
1316 |
+
{ name = "packaging" },
|
1317 |
+
{ name = "pyyaml" },
|
1318 |
+
{ name = "regex" },
|
1319 |
+
{ name = "requests" },
|
1320 |
+
{ name = "safetensors" },
|
1321 |
+
{ name = "tokenizers" },
|
1322 |
+
{ name = "tqdm" },
|
1323 |
+
]
|
1324 |
+
sdist = { url = "https://files.pythonhosted.org/packages/79/50/46573150944f46df8ec968eda854023165a84470b42f69f67c7d475dabc5/transformers-4.49.0.tar.gz", hash = "sha256:7e40e640b5b8dc3f48743f5f5adbdce3660c82baafbd3afdfc04143cdbd2089e", size = 8610952 }
|
1325 |
+
wheels = [
|
1326 |
+
{ url = "https://files.pythonhosted.org/packages/20/37/1f29af63e9c30156a3ed6ebc2754077016577c094f31de7b2631e5d379eb/transformers-4.49.0-py3-none-any.whl", hash = "sha256:6b4fded1c5fee04d384b1014495b4235a2b53c87503d7d592423c06128cbbe03", size = 9970275 },
|
1327 |
+
]
|
1328 |
+
|
1329 |
[[package]]
|
1330 |
name = "triton"
|
1331 |
version = "3.2.0"
|