Spaces:
Running
on
T4
Running
on
T4
jhaa/oss-cleanup-changes-2023-11-29
#1
by
jhaa
- opened
- Dockerfile +19 -20
- README.md +7 -21
- seamless_server/app_pubsub.py +3 -35
- seamless_server/models/Seamless/vad_s2st_sc_24khz_main.yaml +0 -25
- seamless_server/models/SeamlessStreaming/{vad_s2st_sc_main.yaml → vad_s2st_sc_24khz_main.yaml} +0 -0
- seamless_server/package.json +13 -0
- seamless_server/requirements.txt +5 -4
- seamless_server/run_docker.sh +0 -5
- seamless_server/src/simuleval_agent_directory.py +9 -30
- seamless_server/src/simuleval_transcoder.py +2 -7
- seamless_server/src/timing.ipynb +169 -0
- seamless_server/whl/seamless_communication-1.0.0-py3-none-any.whl +2 -2
- streaming-react-app/.gitignore +1 -0
- streaming-react-app/package-lock.json +0 -0
- streaming-react-app/package.json +3 -2
- streaming-react-app/src/SocketWrapper.tsx +2 -4
- streaming-react-app/src/StreamingInterface.tsx +28 -73
- streaming-react-app/src/URLParams.ts +2 -2
- streaming-react-app/src/languageLookup.ts +0 -119
- streaming-react-app/src/types/StreamingTypes.ts +20 -7
- streaming-react-app/src/types/URLParamsTypes.ts +4 -4
- streaming-react-app/vite.config.ts +3 -11
- streaming-react-app/yarn.lock +102 -152
Dockerfile
CHANGED
@@ -45,21 +45,10 @@ RUN apt-get update && \
|
|
45 |
# gradio dependencies \
|
46 |
ffmpeg \
|
47 |
# fairseq2 dependencies \
|
48 |
-
libjpeg8-dev \
|
49 |
-
libpng-dev \
|
50 |
libsndfile-dev && \
|
51 |
apt-get clean && \
|
52 |
rm -rf /var/lib/apt/lists/*
|
53 |
|
54 |
-
USER root
|
55 |
-
RUN ln -s /usr/lib/x86_64-linux-gnu/libsox.so.3 /usr/lib/x86_64-linux-gnu/libsox.so
|
56 |
-
# install older versions libjpeg62-turbo and libpng15
|
57 |
-
RUN wget http://ftp.us.debian.org/debian/pool/main/libj/libjpeg-turbo/libjpeg62-turbo_2.1.5-2_amd64.deb && \
|
58 |
-
dpkg -i libjpeg62-turbo_2.1.5-2_amd64.deb && \
|
59 |
-
rm libjpeg62-turbo_2.1.5-2_amd64.deb
|
60 |
-
RUN wget https://master.dl.sourceforge.net/project/libpng/libpng15/1.5.30/libpng-1.5.30.tar.gz && \
|
61 |
-
tar -xvf libpng-1.5.30.tar.gz && cd libpng-1.5.30 && ./configure && make && make install && cd .. && rm -rf libpng-1.5.30.tar.gz libpng-1.5.30
|
62 |
-
|
63 |
RUN useradd -m -u 1000 user
|
64 |
USER user
|
65 |
ENV HOME=/home/user \
|
@@ -76,18 +65,28 @@ RUN pyenv install $PYTHON_VERSION && \
|
|
76 |
|
77 |
COPY --chown=user:user ./seamless_server ./seamless_server
|
78 |
# change dir since pip needs to seed whl folder
|
79 |
-
RUN cd seamless_server &&
|
80 |
-
pip install fairseq2 --pre --extra-index-url https://fair.pkg.atmeta.com/fairseq2/whl/nightly/pt2.1.1/cu118 && \
|
81 |
-
pip install --no-cache-dir --upgrade -r requirements.txt
|
82 |
COPY --from=frontend /app/dist ./streaming-react-app/dist
|
83 |
|
84 |
WORKDIR $HOME/app/seamless_server
|
85 |
-
|
86 |
-
|
87 |
-
huggingface-cli
|
88 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
89 |
|
|
|
90 |
USER user
|
91 |
-
|
92 |
-
|
93 |
|
|
|
45 |
# gradio dependencies \
|
46 |
ffmpeg \
|
47 |
# fairseq2 dependencies \
|
|
|
|
|
48 |
libsndfile-dev && \
|
49 |
apt-get clean && \
|
50 |
rm -rf /var/lib/apt/lists/*
|
51 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
RUN useradd -m -u 1000 user
|
53 |
USER user
|
54 |
ENV HOME=/home/user \
|
|
|
65 |
|
66 |
COPY --chown=user:user ./seamless_server ./seamless_server
|
67 |
# change dir since pip needs to seed whl folder
|
68 |
+
RUN cd seamless_server && pip install --no-cache-dir --upgrade -r requirements.txt
|
|
|
|
|
69 |
COPY --from=frontend /app/dist ./streaming-react-app/dist
|
70 |
|
71 |
WORKDIR $HOME/app/seamless_server
|
72 |
+
# temporary hack to link SeamlessStreaming models
|
73 |
+
RUN --mount=type=secret,id=HF_TOKEN,mode=0444,required=true \
|
74 |
+
huggingface-cli login --token $(cat /run/secrets/HF_TOKEN) && \
|
75 |
+
huggingface-cli download meta-private/SeamlessStreaming seamless_streaming_unity.pt spm_char_lang38_tc.model seamless_streaming_monotonic_decoder.pt --local-dir ./models/ && \
|
76 |
+
huggingface-cli download meta-private/SeamlessStreaming vocoder_v2.pt --local-dir ./models/
|
77 |
+
USER root
|
78 |
+
RUN mkdir -p /large_experiments/seamless/ust/krs/fairseq2_checkpoints/ && \
|
79 |
+
mkdir -p /large_experiments/seamless/workstream/expressivity/oss/checkpoints/ && \
|
80 |
+
mkdir -p /checkpoint/krs/unity2/ && \
|
81 |
+
chown -R user:user /large_experiments/ && \
|
82 |
+
chown -R user:user /checkpoint/ && \
|
83 |
+
ln -s $(readlink -f models/seamless_streaming_unity.pt) /large_experiments/seamless/ust/krs/fairseq2_checkpoints/seamless_streaming_unity.pt && \
|
84 |
+
ln -s $(readlink -f models/seamless_streaming_monotonic_decoder.pt) /large_experiments/seamless/ust/krs/fairseq2_checkpoints/seamless_streaming_monotonic_decoder.pt && \
|
85 |
+
ln -s $(readlink -f models/vocoder_v2.pt) /large_experiments/seamless/ust/krs/fairseq2_checkpoints/vocoder_v2.pt && \
|
86 |
+
ln -s $(readlink -f models/spm_char_lang38_tc.model) /checkpoint/krs/unity2/
|
87 |
|
88 |
+
RUN ln -s /usr/lib/x86_64-linux-gnu/libsox.so.3 /usr/lib/x86_64-linux-gnu/libsox.so
|
89 |
USER user
|
90 |
+
CMD [ "uvicorn", "app_pubsub:app", "--host", "0.0.0.0", "--port", "7860" ]
|
91 |
+
|
92 |
|
README.md
CHANGED
@@ -1,13 +1,11 @@
|
|
1 |
---
|
2 |
-
title: Seamless Streaming
|
3 |
emoji: 📞
|
4 |
colorFrom: blue
|
5 |
colorTo: yellow
|
6 |
sdk: docker
|
7 |
pinned: false
|
8 |
-
suggested_hardware: t4-
|
9 |
-
models:
|
10 |
-
- facebook/seamless-streaming
|
11 |
---
|
12 |
|
13 |
# Seamless Streaming demo
|
@@ -17,21 +15,12 @@ You can simply duplicate the space to run it.
|
|
17 |
## Running locally
|
18 |
### Install backend seamless_server dependencies
|
19 |
|
20 |
-
|
21 |
-
> Please note: we *do not* recommend running the model on CPU. CPU inference will be slow and introduce noticable delays in the simultaneous translation.
|
22 |
|
23 |
-
|
24 |
-
> The example below is for PyTorch stable (2.1.1) and variant cu118.
|
25 |
-
> Check [here](https://pytorch.org/get-started/locally/) to find the torch/torchaudio command for your variant.
|
26 |
-
> Check [here](https://github.com/facebookresearch/fairseq2#variants) to find the fairseq2 command for your variant.
|
27 |
-
|
28 |
-
If running for the first time, create conda environment and install the desired torch version. Then install the rest of the requirements:
|
29 |
```
|
30 |
-
|
31 |
-
conda create --yes --name smlss_server python=3.8 libsndfile==1.0.31
|
32 |
conda activate smlss_server
|
33 |
-
conda install --yes pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
|
34 |
-
pip install fairseq2 --pre --extra-index-url https://fair.pkg.atmeta.com/fairseq2/whl/nightly/pt2.1.1/cu118
|
35 |
pip install -r requirements.txt
|
36 |
```
|
37 |
|
@@ -39,9 +28,8 @@ pip install -r requirements.txt
|
|
39 |
```
|
40 |
conda install -c conda-forge nodejs
|
41 |
cd streaming-react-app
|
42 |
-
npm install
|
43 |
-
|
44 |
-
yarn build # this will create the dist/ folder
|
45 |
```
|
46 |
|
47 |
|
@@ -51,14 +39,12 @@ The server can be run locally with uvicorn below.
|
|
51 |
Run the server in dev mode:
|
52 |
|
53 |
```
|
54 |
-
cd seamless_server
|
55 |
uvicorn app_pubsub:app --reload --host localhost
|
56 |
```
|
57 |
|
58 |
Run the server in prod mode:
|
59 |
|
60 |
```
|
61 |
-
cd seamless_server
|
62 |
uvicorn app_pubsub:app --host 0.0.0.0
|
63 |
```
|
64 |
|
|
|
1 |
---
|
2 |
+
title: Seamless Streaming Backend/Frontend
|
3 |
emoji: 📞
|
4 |
colorFrom: blue
|
5 |
colorTo: yellow
|
6 |
sdk: docker
|
7 |
pinned: false
|
8 |
+
suggested_hardware: t4-medium
|
|
|
|
|
9 |
---
|
10 |
|
11 |
# Seamless Streaming demo
|
|
|
15 |
## Running locally
|
16 |
### Install backend seamless_server dependencies
|
17 |
|
18 |
+
`cd seamless-experiences/seamless_vc/seamless_server`
|
|
|
19 |
|
20 |
+
If running for the first time, create conda environment:
|
|
|
|
|
|
|
|
|
|
|
21 |
```
|
22 |
+
conda create --name smlss_server python=3.8
|
|
|
23 |
conda activate smlss_server
|
|
|
|
|
24 |
pip install -r requirements.txt
|
25 |
```
|
26 |
|
|
|
28 |
```
|
29 |
conda install -c conda-forge nodejs
|
30 |
cd streaming-react-app
|
31 |
+
npm install
|
32 |
+
npm run build # this will create the dist/ folder
|
|
|
33 |
```
|
34 |
|
35 |
|
|
|
39 |
Run the server in dev mode:
|
40 |
|
41 |
```
|
|
|
42 |
uvicorn app_pubsub:app --reload --host localhost
|
43 |
```
|
44 |
|
45 |
Run the server in prod mode:
|
46 |
|
47 |
```
|
|
|
48 |
uvicorn app_pubsub:app --host 0.0.0.0
|
49 |
```
|
50 |
|
seamless_server/app_pubsub.py
CHANGED
@@ -123,26 +123,8 @@ class ServerLock(TypedDict):
|
|
123 |
client_id: str
|
124 |
member_object: Member
|
125 |
|
126 |
-
|
127 |
-
|
128 |
-
if os.environ.get("LOCK_SERVER_COMPLETELY", "0") == "1":
|
129 |
-
logger.info("LOCK_SERVER_COMPLETELY is set. Server will be locked on startup.")
|
130 |
-
if MAX_SPEAKERS is not None and int(MAX_SPEAKERS):
|
131 |
-
logger.info(f"MAX_SPEAKERS is set to: {MAX_SPEAKERS}")
|
132 |
-
dummy_server_lock_member_object = Member(
|
133 |
-
client_id="seamless_user", session_id="dummy", name="Seamless User"
|
134 |
-
)
|
135 |
-
# Normally this would be an actual transcoder, but it's fine putting True here since currently we only check for the presence of the transcoder
|
136 |
-
dummy_server_lock_member_object.transcoder = True
|
137 |
-
server_lock: Optional[ServerLock] = (
|
138 |
-
{
|
139 |
-
"name": "Seamless User",
|
140 |
-
"client_id": "seamless_user",
|
141 |
-
"member_object": dummy_server_lock_member_object,
|
142 |
-
}
|
143 |
-
if os.environ.get("LOCK_SERVER_COMPLETELY", "0") == "1"
|
144 |
-
else None
|
145 |
-
)
|
146 |
|
147 |
server_id = str(uuid4())
|
148 |
|
@@ -519,8 +501,6 @@ async def join_room(sid, client_id, room_id_from_client, config_dict):
|
|
519 |
server_lock is not None
|
520 |
and config_dict.get("lockServerName")
|
521 |
== ESCAPE_HATCH_SERVER_LOCK_RELEASE_NAME
|
522 |
-
# If we are locking the server completely we don't want someone to be able to unlock it
|
523 |
-
and not os.environ.get("LOCK_SERVER_COMPLETELY", "0") == "1"
|
524 |
):
|
525 |
server_lock = None
|
526 |
logger.info(
|
@@ -528,7 +508,7 @@ async def join_room(sid, client_id, room_id_from_client, config_dict):
|
|
528 |
)
|
529 |
|
530 |
# If the server is not locked, set a lock. If it's already locked to this client, update the lock object
|
531 |
-
|
532 |
# TODO: Add some sort of timeout as a backstop in case someone leaves the browser tab open after locking the server
|
533 |
server_lock = {
|
534 |
"name": config_dict.get("lockServerName"),
|
@@ -559,12 +539,6 @@ async def join_room(sid, client_id, room_id_from_client, config_dict):
|
|
559 |
|
560 |
return {"roomsJoined": sio.rooms(sid), "roomID": room_id}
|
561 |
|
562 |
-
def allow_speaker(room, client_id):
|
563 |
-
if MAX_SPEAKERS is not None and client_id in room.speakers:
|
564 |
-
room_statuses = {room_id: room.get_room_status_dict() for room_id, room in rooms.items()}
|
565 |
-
speakers = sum(room_status["activeTranscoders"] for room_status in room_statuses.values())
|
566 |
-
return speakers < int(MAX_SPEAKERS)
|
567 |
-
return True
|
568 |
|
569 |
# TODO: Add code to prevent more than one speaker from connecting/streaming at a time
|
570 |
@sio.event
|
@@ -585,12 +559,6 @@ async def configure_stream(sid, config):
|
|
585 |
)
|
586 |
return {"status": "error", "message": "member_or_room_is_none"}
|
587 |
|
588 |
-
if not allow_speaker(room, client_id):
|
589 |
-
logger.error(
|
590 |
-
f"In MAX_SPEAKERS mode we only allow one speaker at a time. Ignoring request to configure stream from client {client_id}."
|
591 |
-
)
|
592 |
-
return {"status": "error", "message": "max_speakers"}
|
593 |
-
|
594 |
# If there is a server lock WITH an active transcoder session, prevent other users from configuring and starting a stream
|
595 |
# If the server lock client does NOT have an active transcoder session allow this to proceed, knowing that
|
596 |
# this stream will be interrupted if the server lock client starts streaming
|
|
|
123 |
client_id: str
|
124 |
member_object: Member
|
125 |
|
126 |
+
|
127 |
+
server_lock: Optional[ServerLock] = None
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
128 |
|
129 |
server_id = str(uuid4())
|
130 |
|
|
|
501 |
server_lock is not None
|
502 |
and config_dict.get("lockServerName")
|
503 |
== ESCAPE_HATCH_SERVER_LOCK_RELEASE_NAME
|
|
|
|
|
504 |
):
|
505 |
server_lock = None
|
506 |
logger.info(
|
|
|
508 |
)
|
509 |
|
510 |
# If the server is not locked, set a lock. If it's already locked to this client, update the lock object
|
511 |
+
elif server_lock is None or server_lock.get("client_id") == client_id:
|
512 |
# TODO: Add some sort of timeout as a backstop in case someone leaves the browser tab open after locking the server
|
513 |
server_lock = {
|
514 |
"name": config_dict.get("lockServerName"),
|
|
|
539 |
|
540 |
return {"roomsJoined": sio.rooms(sid), "roomID": room_id}
|
541 |
|
|
|
|
|
|
|
|
|
|
|
|
|
542 |
|
543 |
# TODO: Add code to prevent more than one speaker from connecting/streaming at a time
|
544 |
@sio.event
|
|
|
559 |
)
|
560 |
return {"status": "error", "message": "member_or_room_is_none"}
|
561 |
|
|
|
|
|
|
|
|
|
|
|
|
|
562 |
# If there is a server lock WITH an active transcoder session, prevent other users from configuring and starting a stream
|
563 |
# If the server lock client does NOT have an active transcoder session allow this to proceed, knowing that
|
564 |
# this stream will be interrupted if the server lock client starts streaming
|
seamless_server/models/Seamless/vad_s2st_sc_24khz_main.yaml
DELETED
@@ -1,25 +0,0 @@
|
|
1 |
-
agent_class: seamless_communication.streaming.agents.seamless_s2st.SeamlessS2STDualVocoderVADAgent
|
2 |
-
monotonic_decoder_model_name: seamless_streaming_monotonic_decoder
|
3 |
-
unity_model_name: seamless_streaming_unity
|
4 |
-
sentencepiece_model: spm_256k_nllb100.model
|
5 |
-
|
6 |
-
task: s2st
|
7 |
-
tgt_lang: "eng"
|
8 |
-
min_unit_chunk_size: 50
|
9 |
-
decision_threshold: 0.7
|
10 |
-
no_early_stop: True
|
11 |
-
block_ngrams: True
|
12 |
-
vocoder_name: vocoder_v2
|
13 |
-
expr_vocoder_name: vocoder_pretssel
|
14 |
-
gated_model_dir: .
|
15 |
-
expr_vocoder_gain: 3.0
|
16 |
-
upstream_idx: 1
|
17 |
-
wav2vec_yaml: wav2vec.yaml
|
18 |
-
min_starting_wait_w2vbert: 192
|
19 |
-
|
20 |
-
config_yaml: cfg_fbank_u2t.yaml
|
21 |
-
upstream_idx: 1
|
22 |
-
detokenize_only: True
|
23 |
-
device: cuda:0
|
24 |
-
max_len_a: 0
|
25 |
-
max_len_b: 1000
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
seamless_server/models/SeamlessStreaming/{vad_s2st_sc_main.yaml → vad_s2st_sc_24khz_main.yaml}
RENAMED
File without changes
|
seamless_server/package.json
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"name": "seamless_server",
|
3 |
+
"version": "1.0.0",
|
4 |
+
"scripts": {
|
5 |
+
"dev": "npm run start:debug -- --reload",
|
6 |
+
"start": "uvicorn app_pubsub:app --host 0.0.0.0",
|
7 |
+
"start:debug": "npm run start -- --log-level debug",
|
8 |
+
"start:trace": "npm run start -- --log-level trace",
|
9 |
+
"start:prod": "npm run build:client && npm run start",
|
10 |
+
"build:client": "cd ../streaming-react-app/ && npm run build"
|
11 |
+
},
|
12 |
+
"author": ""
|
13 |
+
}
|
seamless_server/requirements.txt
CHANGED
@@ -1,6 +1,7 @@
|
|
|
|
|
|
1 |
# seamless_communication
|
2 |
-
|
3 |
-
# ./whl/seamless_communication-1.0.0-py3-none-any.whl
|
4 |
Flask==2.1.3
|
5 |
Flask_Sockets==0.2.1
|
6 |
g2p_en==2.1.0
|
@@ -13,10 +14,10 @@ protobuf==4.24.2
|
|
13 |
psola==0.0.1
|
14 |
pydub==0.25.1
|
15 |
silero==0.4.1
|
|
|
16 |
soundfile==0.11.0
|
17 |
stable_ts==1.4.0
|
18 |
-
|
19 |
-
# simuleval # to be installed by seamless_communication
|
20 |
Werkzeug==2.0.3
|
21 |
whisper==1.1.10
|
22 |
colorlog==6.7.0
|
|
|
1 |
+
--pre --extra-index-url https://fair.pkg.atmeta.com/fairseq2/whl/nightly/pt2.1.1/cu118
|
2 |
+
git+https://github.com/facebookresearch/SimulEval.git
|
3 |
# seamless_communication
|
4 |
+
./whl/seamless_communication-1.0.0-py3-none-any.whl
|
|
|
5 |
Flask==2.1.3
|
6 |
Flask_Sockets==0.2.1
|
7 |
g2p_en==2.1.0
|
|
|
14 |
psola==0.0.1
|
15 |
pydub==0.25.1
|
16 |
silero==0.4.1
|
17 |
+
# simuleval==1.1.1
|
18 |
soundfile==0.11.0
|
19 |
stable_ts==1.4.0
|
20 |
+
torch # specific torch version depends on fairseq2 installation
|
|
|
21 |
Werkzeug==2.0.3
|
22 |
whisper==1.1.10
|
23 |
colorlog==6.7.0
|
seamless_server/run_docker.sh
DELETED
@@ -1,5 +0,0 @@
|
|
1 |
-
# !/bin/bash
|
2 |
-
if [ -f models/Seamless/pretssel_melhifigan_wm.pt ] ; then
|
3 |
-
export USE_EXPRESSIVE_MODEL=1;
|
4 |
-
fi
|
5 |
-
uvicorn app_pubsub:app --host 0.0.0.0 --port 7860
|
|
|
|
|
|
|
|
|
|
|
|
seamless_server/src/simuleval_agent_directory.py
CHANGED
@@ -1,7 +1,6 @@
|
|
1 |
# Creates a directory in which to look up available agents
|
2 |
|
3 |
-
import
|
4 |
-
from typing import List, Optional
|
5 |
from src.simuleval_transcoder import SimulevalTranscoder
|
6 |
import json
|
7 |
import logging
|
@@ -34,10 +33,8 @@ class AgentWithInfo:
|
|
34 |
# Supported dynamic params are defined in StreamingTypes.ts
|
35 |
dynamic_params: List[str] = [],
|
36 |
description="",
|
37 |
-
has_expressive: Optional[bool] = None,
|
38 |
):
|
39 |
self.agent = agent
|
40 |
-
self.has_expressive = has_expressive
|
41 |
self.name = name
|
42 |
self.description = description
|
43 |
self.modalities = modalities
|
@@ -78,7 +75,6 @@ class AgentWithInfo:
|
|
78 |
class SimulevalAgentDirectory:
|
79 |
# Available models. These are the directories where the models can be found, and also serve as an ID for the model.
|
80 |
seamless_streaming_agent = "SeamlessStreaming"
|
81 |
-
seamless_agent = "Seamless"
|
82 |
|
83 |
def __init__(self):
|
84 |
self.agents = []
|
@@ -100,12 +96,7 @@ class SimulevalAgentDirectory:
|
|
100 |
model_id,
|
101 |
)
|
102 |
except Exception as e:
|
103 |
-
from fairseq2.assets.error import AssetError
|
104 |
logger.warning("Failed to build agent %s: %s" % (model_id, e))
|
105 |
-
if isinstance(e, AssetError):
|
106 |
-
logger.warning(
|
107 |
-
"Please download gated assets and set `gated_model_dir` in the config"
|
108 |
-
)
|
109 |
raise e
|
110 |
|
111 |
return agent
|
@@ -119,32 +110,20 @@ class SimulevalAgentDirectory:
|
|
119 |
for agent_info in agent_infos:
|
120 |
self.add_agent(agent_info)
|
121 |
else:
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
SimulevalAgentDirectory.seamless_agent,
|
127 |
-
config_name="vad_s2st_sc_24khz_main.yaml",
|
128 |
-
)
|
129 |
-
has_expressive = True
|
130 |
-
else:
|
131 |
-
logger.info("Building non-expressive model...")
|
132 |
-
s2s_agent = self.build_agent_if_available(
|
133 |
-
SimulevalAgentDirectory.seamless_streaming_agent,
|
134 |
-
config_name="vad_s2st_sc_main.yaml",
|
135 |
-
)
|
136 |
-
has_expressive = False
|
137 |
|
138 |
-
if
|
139 |
self.add_agent(
|
140 |
AgentWithInfo(
|
141 |
-
agent=
|
142 |
name=SimulevalAgentDirectory.seamless_streaming_agent,
|
143 |
modalities=["s2t", "s2s"],
|
144 |
-
target_langs=
|
145 |
dynamic_params=["expressive"],
|
146 |
description="multilingual expressive model that supports S2S and S2T",
|
147 |
-
has_expressive=has_expressive,
|
148 |
)
|
149 |
)
|
150 |
|
@@ -158,7 +137,7 @@ class SimulevalAgentDirectory:
|
|
158 |
def get_agent(self, name):
|
159 |
for agent in self.agents:
|
160 |
if agent.name == name:
|
161 |
-
return agent
|
162 |
return None
|
163 |
|
164 |
def get_agent_or_throw(self, name):
|
|
|
1 |
# Creates a directory in which to look up available agents
|
2 |
|
3 |
+
from typing import List
|
|
|
4 |
from src.simuleval_transcoder import SimulevalTranscoder
|
5 |
import json
|
6 |
import logging
|
|
|
33 |
# Supported dynamic params are defined in StreamingTypes.ts
|
34 |
dynamic_params: List[str] = [],
|
35 |
description="",
|
|
|
36 |
):
|
37 |
self.agent = agent
|
|
|
38 |
self.name = name
|
39 |
self.description = description
|
40 |
self.modalities = modalities
|
|
|
75 |
class SimulevalAgentDirectory:
|
76 |
# Available models. These are the directories where the models can be found, and also serve as an ID for the model.
|
77 |
seamless_streaming_agent = "SeamlessStreaming"
|
|
|
78 |
|
79 |
def __init__(self):
|
80 |
self.agents = []
|
|
|
96 |
model_id,
|
97 |
)
|
98 |
except Exception as e:
|
|
|
99 |
logger.warning("Failed to build agent %s: %s" % (model_id, e))
|
|
|
|
|
|
|
|
|
100 |
raise e
|
101 |
|
102 |
return agent
|
|
|
110 |
for agent_info in agent_infos:
|
111 |
self.add_agent(agent_info)
|
112 |
else:
|
113 |
+
s2s_m4t_expr_agent = self.build_agent_if_available(
|
114 |
+
SimulevalAgentDirectory.seamless_streaming_agent,
|
115 |
+
config_name="vad_s2st_sc_24khz_main.yaml",
|
116 |
+
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
117 |
|
118 |
+
if s2s_m4t_expr_agent:
|
119 |
self.add_agent(
|
120 |
AgentWithInfo(
|
121 |
+
agent=s2s_m4t_expr_agent,
|
122 |
name=SimulevalAgentDirectory.seamless_streaming_agent,
|
123 |
modalities=["s2t", "s2s"],
|
124 |
+
target_langs=["eng", "arb", "ben", "cat", "ces", "cmn", "cym", "dan", "deu", "est", "fin", "fra", "hin", "ind", "ita", "jpn", "kor", "mlt", "nld", "pes", "pol", "por", "ron", "rus", "slk", "spa", "swe", "swh", "tel", "tgl", "tha", "tur", "ukr", "urd", "uzn", "vie"],
|
125 |
dynamic_params=["expressive"],
|
126 |
description="multilingual expressive model that supports S2S and S2T",
|
|
|
127 |
)
|
128 |
)
|
129 |
|
|
|
137 |
def get_agent(self, name):
|
138 |
for agent in self.agents:
|
139 |
if agent.name == name:
|
140 |
+
return agent.agent
|
141 |
return None
|
142 |
|
143 |
def get_agent_or_throw(self, name):
|
seamless_server/src/simuleval_transcoder.py
CHANGED
@@ -119,8 +119,7 @@ class OutputSegments:
|
|
119 |
|
120 |
class SimulevalTranscoder:
|
121 |
def __init__(self, agent, sample_rate, debug, buffer_limit):
|
122 |
-
self.agent = agent
|
123 |
-
self.has_expressive = agent.has_expressive
|
124 |
self.input_queue = asyncio.Queue()
|
125 |
self.output_queue = asyncio.Queue()
|
126 |
self.states = self.agent.build_states()
|
@@ -186,7 +185,7 @@ class SimulevalTranscoder:
|
|
186 |
logger.info(*args)
|
187 |
|
188 |
@classmethod
|
189 |
-
def build_agent(cls, model_path, config_name):
|
190 |
logger.info(f"Building simuleval agent: {model_path}, {config_name}")
|
191 |
agent = build_system_from_dir(
|
192 |
Path(__file__).resolve().parent.parent / f"models/{model_path}",
|
@@ -209,10 +208,6 @@ class SimulevalTranscoder:
|
|
209 |
tgt_lang=dynamic_config.get("targetLanguage"),
|
210 |
config=dynamic_config,
|
211 |
)
|
212 |
-
if dynamic_config.get("expressive") is True and self.has_expressive is False:
|
213 |
-
logger.warning(
|
214 |
-
"Passing 'expressive' but the agent does not support expressive output!"
|
215 |
-
)
|
216 |
# # segment is array([0, 0, 0, ..., 0, 0, 0], dtype=int16)
|
217 |
self.input_queue.put_nowait(segment)
|
218 |
|
|
|
119 |
|
120 |
class SimulevalTranscoder:
|
121 |
def __init__(self, agent, sample_rate, debug, buffer_limit):
|
122 |
+
self.agent = agent
|
|
|
123 |
self.input_queue = asyncio.Queue()
|
124 |
self.output_queue = asyncio.Queue()
|
125 |
self.states = self.agent.build_states()
|
|
|
185 |
logger.info(*args)
|
186 |
|
187 |
@classmethod
|
188 |
+
def build_agent(cls, model_path, config_name="vad_s2st_main.yaml"):
|
189 |
logger.info(f"Building simuleval agent: {model_path}, {config_name}")
|
190 |
agent = build_system_from_dir(
|
191 |
Path(__file__).resolve().parent.parent / f"models/{model_path}",
|
|
|
208 |
tgt_lang=dynamic_config.get("targetLanguage"),
|
209 |
config=dynamic_config,
|
210 |
)
|
|
|
|
|
|
|
|
|
211 |
# # segment is array([0, 0, 0, ..., 0, 0, 0], dtype=int16)
|
212 |
self.input_queue.put_nowait(segment)
|
213 |
|
seamless_server/src/timing.ipynb
ADDED
@@ -0,0 +1,169 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"cells": [
|
3 |
+
{
|
4 |
+
"cell_type": "code",
|
5 |
+
"execution_count": 10,
|
6 |
+
"metadata": {},
|
7 |
+
"outputs": [
|
8 |
+
{
|
9 |
+
"data": {
|
10 |
+
"text/plain": [
|
11 |
+
"[Text(1, 0, 'nonincremental'), Text(2, 0, 'incremental')]"
|
12 |
+
]
|
13 |
+
},
|
14 |
+
"execution_count": 10,
|
15 |
+
"metadata": {},
|
16 |
+
"output_type": "execute_result"
|
17 |
+
},
|
18 |
+
{
|
19 |
+
"data": {
|
20 |
+
"image/png": "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rw0AELzmzZunbt26afbs2Xr66ac1e/ZsdevWTfPmzTNdGgKAT2Hkyy+/lNPp/FHPRmxsrCorKxs855prrtHq1av1+uuva82aNXK5XMrIyNBnn33W6Pvk5eUpOjrasyUkJPhSJgAggMybN09PPfWUevTooeeee04VFRV67rnn1KNHDz311FMEEvj21N4TJ07oyiuv1I4dO5Senu7ZP2/ePG3dulU7d+5s9hrffvut+vfvr8mTJ+v//u//GmxTW1ur2tpaz+uamholJCTw1N4OoqSkREOHDmUNESAE1NXVqVu3burRo4c+++wzder0wyTO7777Tr1799ZXX32lM2fOqHPnzgYrhT+09Km9PvWMXHHFFbJaraqqqvLaX1VVpbi4uBZd45JLLtHgwYN16NChRtuEh4crKirKawMABJ/ly5fru+++0+OPP+4VRCSpU6dOeuyxx/Tdd99p+fLlhipEIPApjHTu3FlDhw7V5s2bPftcLpc2b97s1VPSFKfTqQ8//FDx8fG+VQoACDqHDx+WJN1www0NHq/fX98OHZPPs2nmzJmj5557Ti+88IL279+ve++9V2fOnNG0adMkSVOnTlVubq6n/WOPPaaNGzfqyJEjKikp0ZQpU3Ts2DFNnz69/X4KAEBAuvrqqyVJdru9wdk0drvdqx06Jp9XYJ00aZK++OILPfroo6qsrFRaWpreeustz6DW8vJyhYX9kHH++9//6q677lJlZaUuv/xyDR06VDt27NCAAQPa76cAAASkGTNm6KGHHtL999+ve+65R06n03PswQcfVHh4uDp16qQZM2YYrBKm+TSA1ZSWDoBBaGAAKxBarrvuOr3//vuyWCy67bbbNHfuXOXn5+ull16S2+3W8OHDm1zJG8GrpZ/fPJsGAOA3dXV12rt3ryIiInT+/HmtWbNGa9askSRZrVaFh4dr7969qqurYzZNB9aqZ9MAANAS9bNpli5dqnPnzmnx4sWaNWuWFi9erLNnz2rx4sXMpgE9IwAA/7lwNk3nzp31wAMPeB1nNg0kekYAAH504WyahjCbBhIDWBGAGMAKhA5WYO3Y/LICKwAAvujcubNmz56tqqoq9e7dWytXrtSJEye0cuVK9e7dW1VVVZo9ezZBpINjzAgAwK+efPJJSdLixYt19913e/Z36tRJDz30kOc4Oi7CCADA75588kk9/vjj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Ojpat9xyi+fhhPXvcWG3b2JiohYuXKjf/va3ioyMVJ8+fbRy5Uqvuj777DNNnjxZ3bt3V7du3TRs2DDt3LnT6z1XrVqlpKQkdenSRZL0zTffaPr06erZs6eioqL085//XB988MGPal29erX69OmjSy+9VDNmzJDT6dSTTz6puLg4xcTE6C9/+YtXLS29bmN/BnfccYe2bt2qpUuXymKxyGKxqKysTE6nU3feeaeSkpLUtWtXXXPNNVq6dGkr/0sC7ePC+5V7lXs1WBBGQsALL7ygbt26aefOnXryySf12GOPadOmTXK5XJowYYK+/vprbd26VZs2bdKRI0c0adIkr/MPHz6soqIi2e122e12bd26VU888UST75mfn69hw4Zp7969mjFjhu6991598sknkqTTp09r9OjR+vzzz/XPf/5TH3zwgebNmyeXy+U5/9ChQ9qwYYMKCwu1b98+SdLNN9+skydP6s0339SePXs0ZMgQ/eIXv9DXX3/tVeubb76pt956Sy+//LL+/ve/a/z48frss8+0detW/fWvf9Ujjzzi+WXqy3Ub+zNYunSp0tPTddddd6miokIVFRVKSEiQy+VS79699eqrr+rjjz/Wo48+qvnz5+uVV15p3X9IwA+4V7lXg4IbQW306NHun/3sZ177hg8f7v7DH/7g3rhxo9tqtbrLy8s9xz766CO3JPeuXbvcbrfbvWDBAndERIS7pqbG0+ahhx5yjxgxwus97r//fs/rq666yj1lyhTPa5fL5Y6JiXE/88wzbrfb7X722WfdkZGR7q+++qrBmhcsWOC+5JJL3CdPnvTsKy4udkdFRbnPnz/v1fbqq692P/vss43WOnbsWHdiYqLb6XR69l1zzTXuvLy8Nl23uT+DxsycOdN90003eV7ffvvt7gkTJjR7HtBeLvx/lXu1cdyrgYUxIyHg2muv9XodHx+vkydPav/+/UpISFBCQoLn2IABA3TZZZdp//79Gj58uKTvu3IjIyN/dH5L39NisSguLs5zzr59+zR48OAmv7u+6qqr1LNnT8/rDz74QKdPn1aPHj282p07d06HDx/2vP7fWmNjY2W1Wr0eTR0bG+uppbXXbcmfgSQtW7ZMq1evVnl5uc6dO6e6ujqlpaU1ex5wsXCvfo97NbARRkLA/46ct1gsXt2s/ji/qXO6du3a7Ht269bN6/Xp06cVHx+vLVu2/KjtZZdd1uT7NlVLW67b3J/BunXr9OCDDyo/P1/p6emKjIzUU0895dXtDJjGvcq9GgwIIyGsf//+On78uI4fP+7pHfn444/1zTffaMCAAX5732uvvVarVq3S119/3eKR/UOGDFFlZaU6deqkxMTEdqulva7buXNnOZ1Or33bt29XRkaGZsyY4dl34d/ggEDHvYpAwQDWEDZmzBilpqbqtttuU0lJiXbt2qWpU6dq9OjRGjZsmN/ed/LkyYqLi5PNZtP27dt15MgRbdiwQQ6Ho8la09PTZbPZtHHjRpWVlWnHjh16+OGHtXv37lbX0l7XTUxM1M6dO1VWVqYvv/xSLpdLffv21e7du/X222/r008/1Z/+9Ce9//77ra4VuNi4VxEoCCMhzGKx6PXXX9fll1+u66+/XmPGjNFPfvITrV+/3q/v27lzZ23cuFExMTH69a9/rdTUVD3xxBOyWq1N1vrGG2/o+uuv17Rp09SvXz/dcsstOnbsmGJjY1tdS3td98EHH5TVatWAAQPUs2dPlZeX6+6771ZOTo4mTZqkESNG6KuvvvL6mxcQ6LhXESgsbrfbbboIAADQcdEzAgAAjCKMAAAAowgjAADAKMIIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMOr/ASXbw3ES3Qk1AAAAAElFTkSuQmCC",
|
21 |
+
"text/plain": [
|
22 |
+
"<Figure size 640x480 with 1 Axes>"
|
23 |
+
]
|
24 |
+
},
|
25 |
+
"metadata": {},
|
26 |
+
"output_type": "display_data"
|
27 |
+
}
|
28 |
+
],
|
29 |
+
"source": [
|
30 |
+
"import matplotlib.pyplot as plt\n",
|
31 |
+
"import numpy as np\n",
|
32 |
+
"\n",
|
33 |
+
"nonincremental = [0.144, 0.268, 0.175, 0.292, 0.161, 0.147, 0.238, 0.159, 0.26, 0.161, 0.511, 0.263, 0.149, 0.141, 0.427, 0.06, 0.055, 0.056, 0.145, 0.142, 0.137, 0.302, 0.146, 0.35, 0.256, 0.162, 0.161, 0.33, 0.176, 0.4, 0.294, 0.176, 0.308, 0.206, 0.349, 0.3, 0.326, 0.216, 0.236, 0.852, 0.057, 0.145, 0.386, 0.157, 0.154, 0.351, 0.321, 0.161, 0.158, 0.271, 0.163, 0.619, 0.052, 0.055, 0.164, 0.147, 0.145, 0.214, 0.179, 0.147, 0.398, 0.351, 0.162, 0.158, 0.293, 0.292, 0.169, 0.202, 0.427, 0.205, 0.335, 0.197, 0.211, 0.217, 0.23, 0.225, 0.495, 0.26, 0.346, 0.243, 0.271, 0.259, 0.266, 0.256, 0.288, 0.492, 0.303, 0.294, 0.322, 0.317, 0.299, 1.524, 0.059, 0.056, 0.147, 0.219, 0.161, 0.334, 0.159, 0.175, 0.375, 0.16, 0.177, 0.337, 0.273, 0.184, 0.183, 0.778, 0.228, 0.305, 0.36, 0.159, 0.157, 0.469, 0.057, 0.055, 0.059, 0.059, 0.056, 0.059, 0.063, 0.056, 0.059, 0.056, 0.154, 0.145, 0.208, 0.15, 0.428, 0.281, 0.146, 0.151, 0.324, 0.154, 0.208, 0.141, 0.163, 0.359, 0.282, 0.271, 0.142, 0.529, 0.164, 0.224, 0.139, 0.139, 0.159, 0.344, 0.242, 0.26, 0.155, 0.498, 0.053, 0.152, 0.214, 0.15, 0.148, 0.147, 0.356, 0.252, 0.149, 0.43, 0.057, 0.059, 0.154, 0.212, 0.17, 0.14, 0.144, 0.362, 0.164, 0.216, 0.21, 0.166, 0.155, 0.281, 0.155, 0.314, 0.157, 0.544, 0.253, 0.343, 0.272, 0.186, 0.19, 0.327, 0.212, 0.216, 0.374, 0.241, 0.328, 0.463, 0.424, 0.318, 0.244, 0.245, 0.251, 0.256, 0.546, 0.287, 0.269, 0.316, 0.416, 0.303, 0.407, 0.305, 0.31, 0.311, 0.319, 0.326, 0.343, 0.344, 0.447, 0.685, 0.385, 0.359, 0.369, 0.654, 0.404, 2.228, 0.115, 0.166, 0.216, 0.141, 0.138, 0.268, 0.156, 0.345, 0.314, 0.183, 0.185, 0.193, 0.297, 0.396, 0.203, 0.179, 0.289, 0.187, 0.322, 0.203, 0.204, 0.46, 0.256, 0.244, 0.759]\n",
|
34 |
+
"# incremental = [0.139, 0.262, 0.16, 0.347, 0.177, 0.155, 0.16, 0.24, 0.201, 0.165, 0.489, 0.198, 0.227, 0.153, 0.156, 0.407, 0.056, 0.058, 0.143, 0.143, 0.219, 0.155, 0.328, 0.224, 0.335, 0.163, 0.247, 0.277, 0.197, 0.348, 0.337, 0.193, 0.195, 0.209, 0.293, 0.336, 0.226, 0.224, 0.206, 0.841, 0.066, 0.165, 0.261, 0.213, 0.141, 0.33, 0.186, 0.152, 0.159, 0.334, 0.175, 0.16, 0.583, 0.055, 0.155, 0.206, 0.141, 0.34, 0.152, 0.144, 0.214, 0.274, 0.307, 0.162, 0.235, 0.277, 0.172, 0.206, 0.189, 0.337, 0.46, 0.223, 0.209, 0.209, 0.214, 0.216, 0.371, 0.224, 0.375, 0.338, 0.266, 0.244, 0.269, 0.274, 0.273, 0.271, 0.283, 0.283, 0.305, 0.434, 0.33, 1.08, 0.065, 0.059, 0.134, 0.15, 0.145, 0.206, 0.354, 0.165, 0.255, 0.159, 0.286, 0.275, 0.16, 0.175, 0.181, 0.533, 0.201, 0.18, 0.185, 0.373, 0.16, 0.162, 0.455, 0.06, 0.057, 0.053, 0.057, 0.061, 0.063, 0.047, 0.059, 0.056, 0.057, 0.158, 0.154, 0.141, 0.383, 0.151, 0.142, 0.141, 0.359, 0.143, 0.225, 0.155, 0.151, 0.268, 0.334, 0.152, 0.206, 0.161, 0.401, 0.235, 0.275, 0.187, 0.151, 0.152, 0.287, 0.244, 0.272, 0.159, 0.559, 0.185, 0.156, 0.152, 0.146, 0.143, 0.263, 0.161, 0.316, 0.163, 0.438, 0.058, 0.167, 0.241, 0.161, 0.162, 0.151, 0.371, 0.062, 0.156, 0.215, 0.149, 0.145, 0.293, 0.165, 0.328, 0.36, 0.238, 0.387, 0.189, 0.437, 0.207, 0.228, 0.233, 0.365, 0.358, 0.381, 0.226, 0.225, 0.219, 0.448, 0.402, 0.246, 0.322, 0.289, 0.272, 0.394, 0.291, 0.365, 0.298, 0.409, 0.319, 0.323, 0.431, 0.339, 0.326, 0.311, 0.319, 0.325, 0.333, 0.367, 0.364, 0.594, 0.382, 0.595, 0.411, 0.414, 0.419, 1.668, 0.153, 0.23, 0.263, 0.147, 0.281, 0.156, 0.172, 0.354, 0.166, 0.199, 0.244, 0.174, 0.182, 0.294, 0.25, 0.184, 0.182, 0.357, 0.329, 0.226, 0.417, 0.239, 0.214, 0.579]\n",
|
35 |
+
"# incremental = [0.27, 0.147, 0.285, 0.146, 0.232, 0.168, 0.226, 0.267, 0.183, 0.151, 0.481, 0.174, 0.218, 0.142, 0.385, 0.061, 0.056, 0.155, 0.162, 0.219, 0.152, 0.279, 0.217, 0.425, 0.235, 0.162, 0.161, 0.3, 0.176, 0.174, 0.349, 0.305, 0.212, 0.221, 0.364, 0.223, 0.408, 0.467, 0.243, 0.707, 0.18, 0.143, 0.212, 0.181, 0.322, 0.265, 0.151, 0.157, 0.22, 0.291, 0.166, 0.55, 0.052, 0.154, 0.208, 0.147, 0.369, 0.163, 0.238, 0.151, 0.325, 0.289, 0.17, 0.234, 0.178, 0.269, 0.196, 0.216, 0.392, 0.358, 0.21, 0.22, 0.216, 0.302, 0.223, 0.256, 0.533, 0.273, 0.322, 0.25, 0.248, 0.314, 0.3, 0.284, 0.439, 0.288, 0.299, 0.298, 0.299, 0.304, 1.138, 0.18, 0.056, 0.054, 0.151, 0.135, 0.219, 0.281, 0.254, 0.168, 0.155, 0.301, 0.301, 0.276, 0.173, 0.161, 0.523, 0.242, 0.217, 0.142, 0.261, 0.147, 0.155, 0.47, 0.067, 0.063, 0.059, 0.223, 0.06, 0.057, 0.058, 0.062, 0.06, 0.058, 0.157, 0.148, 0.147, 0.484, 0.188, 0.145, 0.147, 0.344, 0.054, 0.14, 0.217, 0.143, 0.298, 0.151, 0.226, 0.155, 0.157, 0.43, 0.217, 0.214, 0.152, 0.153, 0.233, 0.285, 0.224, 0.329, 0.187, 0.436, 0.287, 0.143, 0.263, 0.171, 0.172, 0.36, 0.269, 0.676, 0.22, 0.411, 0.056, 0.161, 0.136, 0.255, 0.152, 0.156, 0.147, 0.402, 0.181, 0.208, 0.156, 0.149, 0.3, 0.158, 0.263, 0.366, 0.161, 0.41, 0.42, 0.459, 0.18, 0.177, 0.188, 0.305, 0.228, 0.354, 0.234, 0.248, 0.222, 0.437, 0.399, 0.294, 0.375, 0.266, 0.257, 0.478, 0.315, 0.388, 0.301, 0.362, 0.315, 0.315, 0.439, 0.311, 0.325, 0.344, 0.375, 0.367, 0.349, 0.333, 0.366, 0.556, 0.393, 0.599, 0.393, 0.766, 0.403, 1.396, 0.423, 0.232, 0.258, 0.145, 0.283, 0.156, 0.155, 0.27, 0.278, 0.172, 0.16, 0.167, 0.238, 0.322, 0.188, 0.181, 0.198, 0.275, 0.31, 0.208, 0.468, 0.223, 0.261, 0.62, ]\n",
|
36 |
+
"\n",
|
37 |
+
"# incremental orig [vad_update + states]\n",
|
38 |
+
"# incremental = [0.123, 0.194, 0.206, 0.163, 0.145, 0.15, 0.142, 0.226, 0.136, 0.139, 0.131, 0.274, 0.139, 0.172, 0.125, 0.325, 0.053, 0.056, 0.054, 0.123, 0.124, 0.126, 0.255, 0.129, 0.258, 0.19, 0.139, 0.141, 0.138, 0.155, 0.263, 0.159, 0.166, 0.163, 0.174, 0.196, 0.198, 0.193, 0.208, 0.192, 0.56, 0.068, 0.33, 0.163, 0.124, 0.195, 0.136, 0.125, 0.124, 0.13, 0.146, 0.143, 0.423, 0.063, 0.125, 0.139, 0.12, 0.157, 0.127, 0.2, 0.138, 0.316, 0.132, 0.202, 0.203, 0.218, 0.142, 0.153, 0.149, 0.137, 0.147, 0.159, 0.152, 0.201, 0.168, 0.209, 0.171, 0.201, 0.223, 0.248, 0.131, 0.199, 0.137, 0.135, 0.176, 0.201, 0.135, 0.193, 0.131, 0.177, 0.145, 0.145, 0.3, 0.056, 0.058, 0.176, 0.162, 0.121, 0.245, 0.144, 0.125, 0.203, 0.143, 0.144, 0.153, 0.195, 0.146, 0.35, 0.124, 0.154, 0.124, 0.265, 0.131, 0.284, 0.236, 0.068, 0.061, 0.054, 0.056, 0.067, 0.056, 0.05, 0.049, 0.061, 0.054, 0.136, 0.172, 0.119, 0.312, 0.123, 0.122, 0.123, 0.26, 0.059, 0.123, 0.149, 0.118, 0.119, 0.184, 0.192, 0.133, 0.133, 0.207, 0.118, 0.165, 0.12, 0.113, 0.12, 0.226, 0.136, 0.17, 0.131, 0.282, 0.054, 0.128, 0.174, 0.133, 0.156, 0.229, 0.218, 0.15, 0.128, 0.226, 0.054, 0.117, 0.126, 0.182, 0.128, 0.127, 0.146, 0.209, 0.138, 0.16, 0.129, 0.123, 0.21, 0.132, 0.144, 0.128, 0.15, 0.377, 0.114, 0.123, 0.205, 0.123, 0.125, 0.266, 0.175, 0.298, 0.131, 0.183, 0.143, 0.157, 0.168, 0.174, 0.17, 0.168, 0.187, 0.186, 0.182, 0.186, 0.211, 0.205, 0.218, 0.226, 0.223, 0.211, 0.235, 0.227, 0.23, 0.255, 0.265, 0.274, 0.271, 0.298, 0.265, 0.614, 0.297, 0.32, 0.302, 1.153, 0.09, 0.16, 0.123, 0.17, 0.242, 0.13, 0.135, 0.21, 0.125, 0.172, 0.179, 0.139, 0.15, 0.153, 0.157, 0.145, 0.15, 0.166, 0.17, 0.167, 0.365, 0.181, 0.185, 0.217, 0.442]\n",
|
39 |
+
"\n",
|
40 |
+
"# incremental 1\n",
|
41 |
+
"# incremental = [0.166, 0.141, 0.319, 0.247, 0.272, 0.15, 0.149, 0.188, 0.143, 0.146, 0.283, 0.141, 0.166, 0.122, 0.246, 0.054, 0.055, 0.13, 0.122, 0.172, 0.131, 0.224, 0.173, 0.19, 0.143, 0.217, 0.15, 0.155, 0.152, 0.169, 0.161, 0.176, 0.175, 0.305, 0.253, 0.131, 0.18, 0.136, 0.137, 0.318, 0.064, 0.123, 0.165, 0.124, 0.19, 0.199, 0.132, 0.141, 0.133, 0.2, 0.14, 0.327, 0.054, 0.136, 0.17, 0.125, 0.228, 0.146, 0.13, 0.135, 0.178, 0.21, 0.227, 0.128, 0.125, 0.167, 0.136, 0.177, 0.265, 0.196, 0.158, 0.144, 0.149, 0.144, 0.207, 0.162, 0.17, 0.167, 0.237, 0.196, 0.18, 0.185, 0.192, 0.198, 0.187, 0.205, 0.205, 0.226, 0.226, 0.213, 0.609, 0.062, 0.06, 0.053, 0.126, 0.122, 0.176, 0.191, 0.13, 0.147, 0.178, 0.136, 0.206, 0.144, 0.143, 0.142, 0.386, 0.128, 0.166, 0.136, 0.228, 0.131, 0.132, 0.22, 0.056, 0.063, 0.07, 0.07, 0.064, 0.079, 0.065, 0.059, 0.053, 0.062, 0.128, 0.129, 0.125, 0.241, 0.153, 0.135, 0.124, 0.227, 0.055, 0.132, 0.173, 0.126, 0.191, 0.13, 0.175, 0.162, 0.135, 0.185, 0.175, 0.169, 0.132, 0.128, 0.134, 0.214, 0.14, 0.179, 0.134, 0.277, 0.049, 0.137, 0.164, 0.124, 0.128, 0.229, 0.137, 0.189, 0.124, 0.223, 0.052, 0.123, 0.168, 0.163, 0.127, 0.126, 0.129, 0.217, 0.123, 0.168, 0.123, 0.132, 0.216, 0.149, 0.193, 0.268, 0.139, 0.138, 0.146, 0.185, 0.169, 0.155, 0.171, 0.186, 0.277, 0.199, 0.184, 0.204, 0.241, 0.348, 0.244, 0.226, 0.223, 0.219, 0.24, 0.253, 0.312, 0.248, 0.29, 0.285, 0.273, 0.27, 0.271, 0.273, 0.282, 0.306, 0.315, 0.321, 0.302, 0.327, 0.296, 0.311, 0.324, 0.333, 0.354, 0.564, 0.346, 0.798, 0.281, 0.431, 0.424, 0.3, 0.359, 0.393, 0.415, 0.203, 0.137, 0.138, 0.137, 0.146, 0.139, 0.21, 0.165, 0.165, 0.164, 0.183, 0.215, 0.191, 0.185, 0.268, 0.183, 0.281]\n",
|
42 |
+
"# incremental = [0.14, 0.133, 0.207, 0.146, 0.179, 0.137, 0.132, 0.139, 0.203, 0.194, 0.156, 0.282, 0.172, 0.118, 0.13, 0.386, 0.06, 0.062, 0.062, 0.121, 0.119, 0.125, 0.238, 0.128, 0.166, 0.225, 0.165, 0.166, 0.15, 0.166, 0.149, 0.223, 0.158, 0.179, 0.186, 0.182, 0.187, 0.186, 0.198, 0.197, 0.399, 0.066, 0.132, 0.196, 0.175, 0.123, 0.12, 0.167, 0.127, 0.174, 0.191, 0.127, 0.127, 0.301, 0.056, 0.128, 0.18, 0.179, 0.177, 0.135, 0.157, 0.228, 0.215, 0.215, 0.132, 0.128, 0.173, 0.172, 0.129, 0.137, 0.236, 0.178, 0.144, 0.152, 0.147, 0.158, 0.179, 0.284, 0.177, 0.181, 0.192, 0.181, 0.241, 0.233, 0.231, 0.218, 0.223, 0.221, 0.213, 0.244, 0.244, 0.232, 0.772, 0.058, 0.065, 0.134, 0.175, 0.125, 0.205, 0.132, 0.132, 0.199, 0.197, 0.12, 0.128, 0.168, 0.132, 0.131, 0.288, 0.174, 0.124, 0.195, 0.134, 0.134, 0.265, 0.048, 0.059, 0.073, 0.056, 0.061, 0.059, 0.057, 0.055, 0.057, 0.061, 0.132, 0.138, 0.135, 0.249, 0.132, 0.162, 0.128, 0.121, 0.282, 0.135, 0.161, 0.131, 0.131, 0.189, 0.175, 0.132, 0.135, 0.138, 0.24, 0.169, 0.131, 0.132, 0.143, 0.228, 0.136, 0.141, 0.141, 0.296, 0.052, 0.124, 0.164, 0.128, 0.123, 0.214, 0.199, 0.143, 0.139, 0.265, 0.058, 0.056, 0.131, 0.161, 0.13, 0.127, 0.123, 0.228, 0.135, 0.236, 0.407, 0.25, 0.409, 0.504, 0.336, 0.596, 0.134, 0.143, 0.147, 0.275, 0.315, 0.159, 0.172, 0.182, 0.182, 0.187, 0.191, 0.187, 0.2, 0.242, 0.276, 0.142, 0.123, 0.127, 0.166, 0.175, 0.176, 0.188, 0.211, 0.285, 0.236, 0.297, 0.147, 0.159, 0.154, 0.171, 0.164, 0.228, 0.183, 0.299, 0.395, 0.126, 0.122, 0.171, 0.17, 0.133, 0.152, 0.386, 0.053, 0.134, 0.17, 0.136, 0.131, 0.213, 0.126, 0.195, 0.133, 0.128, 0.13, 0.177, 0.136, 0.14, 0.19, 0.194, 0.162, 0.166, 0.169, 0.227, 0.185, 0.28, 0.188, 0.188, 0.259]\n",
|
43 |
+
"# incremental = [1.174, 0.16, 0.2, 0.223, 0.19, 0.147, 0.153, 0.193, 0.137, 0.177, 0.145, 0.258, 0.178, 0.124, 0.124, 0.241, 0.057, 0.056, 0.058, 0.153, 0.147, 0.122, 0.226, 0.126, 0.219, 0.131, 0.139, 0.179, 0.137, 0.142, 0.148, 0.222, 0.151, 0.158, 0.173, 0.186, 0.187, 0.218, 0.176, 0.201, 0.35, 0.051, 0.247, 0.205, 0.134, 0.155, 0.192, 0.132, 0.132, 0.184, 0.14, 0.188, 0.339, 0.049, 0.216, 0.133, 0.118, 0.145, 0.165, 0.126, 0.137, 0.296, 0.205, 0.13, 0.128, 0.236, 0.219, 0.162, 0.135, 0.139, 0.244, 0.191, 0.162, 0.153, 0.156, 0.162, 0.168, 0.212, 0.189, 0.208, 0.177, 0.192, 0.188, 0.199, 0.204, 0.195, 0.224, 0.25, 0.226, 0.256, 0.294, 0.34, 0.207, 0.064, 0.063, 0.125, 0.176, 0.13, 0.208, 0.142, 0.131, 0.189, 0.186, 0.124, 0.122, 0.182, 0.122, 0.29, 0.135, 0.171, 0.13, 0.205, 0.121, 0.132, 0.278, 0.06, 0.056, 0.06, 0.056, 0.053, 0.052, 0.053, 0.055, 0.053, 0.062, 0.13, 0.128, 0.126, 0.239, 0.126, 0.129, 0.136, 0.126, 0.238, 0.133, 0.166, 0.127, 0.144, 0.199, 0.183, 0.14, 0.137, 0.28, 0.132, 0.174, 0.138, 0.123, 0.132, 0.217, 0.172, 0.137, 0.138, 0.295, 0.064, 0.118, 0.166, 0.127, 0.127, 0.175, 0.228, 0.138, 0.125, 0.244, 0.054, 0.059, 0.137, 0.163, 0.121, 0.127, 0.122, 0.234, 0.124, 0.155, 0.183, 0.124, 0.188, 0.166, 0.137, 0.19, 0.306, 0.145, 0.157, 0.301, 0.162, 0.157, 0.163, 0.176, 0.175, 0.177, 0.19, 0.193, 0.203, 0.201, 0.206, 0.214, 0.216, 0.217, 0.237, 0.228, 0.24, 0.234, 0.248, 0.258, 0.268, 0.264, 0.402, 0.29, 0.262, 0.278, 0.282, 0.291, 0.289, 0.316, 0.303, 0.31, 0.306, 0.3, 0.325, 0.327, 0.329, 0.649, 0.06, 0.143, 0.171, 0.127, 0.125, 0.184, 0.125, 0.283, 0.133, 0.131, 0.204, 0.135, 0.142, 0.201, 0.143, 0.16, 0.152, 0.167, 0.219, 0.169, 0.18, 0.287, 0.2, 0.189, 0.277]\n",
|
44 |
+
"# synthesize speech\n",
|
45 |
+
"# incremental = [0.177, 0.133, 0.192, 0.133, 0.201, 0.133, 0.141, 0.137, 0.175, 0.22, 0.153, 0.331, 0.184, 0.18, 0.147, 0.138, 0.393, 0.067, 0.156, 0.16, 0.136, 0.122, 0.224, 0.205, 0.182, 0.135, 0.271, 0.147, 0.146, 0.178, 0.158, 0.151, 0.164, 0.173, 0.162, 0.186, 0.346, 0.199, 0.12, 0.131, 0.32, 0.064, 0.063, 0.142, 0.165, 0.129, 0.213, 0.124, 0.133, 0.138, 0.284, 0.14, 0.145, 0.374, 0.054, 0.137, 0.164, 0.118, 0.199, 0.133, 0.131, 0.28, 0.163, 0.254, 0.19, 0.119, 0.162, 0.128, 0.132, 0.269, 0.158, 0.235, 0.141, 0.141, 0.242, 0.178, 0.178, 0.151, 0.19, 0.178, 0.236, 0.176, 0.24, 0.206, 0.201, 0.207, 0.213, 0.218, 0.22, 0.257, 0.308, 0.304, 0.076, 0.056, 0.063, 0.069, 0.165, 0.198, 0.151, 0.278, 0.135, 0.21, 0.147, 0.14, 0.229, 0.151, 0.159, 0.151, 0.417, 0.167, 0.124, 0.172, 0.307, 0.144, 0.244, 0.062, 0.054, 0.063, 0.053, 0.06, 0.049, 0.053, 0.075, 0.061, 0.061, 0.054, 0.131, 0.124, 0.124, 0.284, 0.175, 0.138, 0.128, 0.253, 0.13, 0.161, 0.119, 0.151, 0.271, 0.145, 0.217, 0.14, 0.139, 0.269, 0.199, 0.176, 0.135, 0.13, 0.14, 0.257, 0.163, 0.224, 0.144, 0.327, 0.143, 0.183, 0.151, 0.127, 0.136, 0.287, 0.143, 0.13, 0.131, 0.296, 0.052, 0.134, 0.121, 0.169, 0.125, 0.125, 0.272, 0.157, 0.206, 0.199, 0.131, 0.128, 0.176, 0.241, 0.14, 0.244, 0.145, 0.147, 0.352, 0.268, 0.16, 0.163, 0.171, 0.187, 0.202, 0.193, 0.191, 0.23, 0.227, 0.212, 0.285, 0.236, 0.234, 0.217, 0.213, 0.236, 0.238, 0.33, 0.28, 0.268, 0.286, 0.283, 0.286, 0.364, 0.315, 0.29, 0.297, 0.297, 0.297, 0.322, 0.378, 0.311, 0.341, 0.344, 0.334, 0.34, 0.698, 0.069, 0.132, 0.167, 0.186, 0.13, 0.222, 0.136, 0.204, 0.208, 0.131, 0.134, 0.152, 0.145, 0.15, 0.144, 0.26, 0.166, 0.156, 0.162, 0.18, 0.297, 0.185, 0.185, 0.201, 0.328]\n",
|
46 |
+
"# incremental = [0.146, 0.133, 0.186, 0.137, 0.199, 0.145, 0.128, 0.163, 0.218, 0.217, 0.159, 0.315, 0.175, 0.176, 0.125, 0.141, 0.277, 0.064, 0.061, 0.123, 0.116, 0.166, 0.217, 0.199, 0.171, 0.211, 0.134, 0.142, 0.148, 0.276, 0.157, 0.156, 0.157, 0.542, 0.19, 0.186, 0.186, 0.187, 0.186, 0.174, 0.432, 0.051, 0.052, 0.127, 0.162, 0.132, 0.125, 0.238, 0.14, 0.134, 0.172, 0.132, 0.135, 0.368, 0.054, 0.246, 0.163, 0.115, 0.166, 0.131, 0.13, 0.28, 0.217, 0.122, 0.126, 0.18, 0.125, 0.134, 0.131, 0.221, 0.134, 0.226, 0.151, 0.144, 0.163, 0.16, 0.169, 0.27, 0.174, 0.184, 0.19, 0.178, 0.187, 0.206, 0.203, 0.202, 0.206, 0.217, 0.224, 0.241, 0.251, 0.233, 0.665, 0.054, 0.052, 0.061, 0.165, 0.173, 0.124, 0.224, 0.135, 0.207, 0.143, 0.197, 0.146, 0.153, 0.147, 0.137, 0.419, 0.166, 0.128, 0.167, 0.237, 0.141, 0.237, 0.056, 0.054, 0.051, 0.054, 0.063, 0.059, 0.059, 0.049, 0.062, 0.056, 0.057, 0.126, 0.116, 0.432, 0.268, 0.121, 0.119, 0.174, 0.266, 0.131, 0.17, 0.127, 0.141, 0.274, 0.161, 0.213, 0.143, 0.158, 0.273, 0.171, 0.176, 0.144, 0.138, 0.217, 0.182, 0.143, 0.203, 0.141, 0.298, 0.129, 0.174, 0.125, 0.124, 0.125, 0.28, 0.135, 0.143, 0.143, 0.3, 0.055, 0.166, 0.165, 0.161, 0.124, 0.129, 0.255, 0.133, 0.178, 0.255, 0.157, 0.421, 0.132, 0.221, 0.245, 0.148, 0.138, 0.231, 0.263, 0.256, 0.449, 0.174, 0.19, 0.189, 0.188, 0.19, 0.194, 0.207, 0.206, 0.206, 0.278, 0.229, 0.221, 0.207, 0.211, 0.238, 0.24, 0.302, 0.264, 0.297, 0.272, 0.264, 0.264, 0.267, 0.269, 0.277, 0.297, 0.299, 0.303, 0.304, 0.301, 0.311, 0.297, 0.342, 0.322, 0.332, 1.311, 0.091, 0.13, 0.15, 0.197, 0.128, 0.217, 0.127, 0.205, 0.207, 0.125, 0.132, 0.139, 0.141, 0.188, 0.184, 0.222, 0.155, 0.154, 0.167, 0.176, 0.298, 0.179, 0.196, 0.185, 0.306]\n",
|
47 |
+
"\n",
|
48 |
+
"\n",
|
49 |
+
"# incremental 2 [_train]\n",
|
50 |
+
"# incremental = [0.144, 0.217, 0.149, 0.264, 0.15, 0.241, 0.157, 0.152, 0.25, 0.158, 0.454, 0.233, 0.231, 0.152, 0.148, 0.357, 0.064, 0.06, 0.143, 0.142, 0.17, 0.26, 0.225, 0.237, 0.306, 0.157, 0.164, 0.25, 0.179, 0.294, 0.179, 0.178, 0.192, 0.186, 0.206, 0.198, 0.238, 0.216, 0.217, 0.342, 0.054, 0.056, 0.144, 0.215, 0.146, 0.181, 0.143, 0.15, 0.266, 0.149, 0.143, 0.144, 0.514, 0.049, 0.215, 0.142, 0.222, 0.223, 0.154, 0.164, 0.34, 0.154, 0.241, 0.201, 0.173, 0.297, 0.138, 0.225, 0.27, 0.266, 0.155, 0.154, 0.148, 0.233, 0.166, 0.166, 0.283, 0.178, 0.188, 0.193, 0.193, 0.205, 0.214, 0.203, 0.215, 0.293, 0.242, 0.245, 0.256, 0.259, 0.59, 0.06, 0.058, 0.06, 0.06, 0.151, 0.151, 0.227, 0.261, 0.161, 0.239, 0.164, 0.264, 0.257, 0.156, 0.233, 0.161, 0.506, 0.245, 0.151, 0.225, 0.327, 0.16, 0.337, 0.059, 0.056, 0.056, 0.057, 0.067, 0.058, 0.067, 0.053, 0.052, 0.06, 0.065, 0.148, 0.145, 0.139, 0.38, 0.16, 0.148, 0.149, 0.332, 0.148, 0.232, 0.164, 0.149, 0.301, 0.149, 0.156, 0.159, 0.161, 0.329, 0.225, 0.229, 0.155, 0.16, 0.159, 0.308, 0.151, 0.281, 0.165, 0.43, 0.189, 0.348, 0.138, 0.152, 0.147, 0.267, 0.203, 0.27, 0.228, 0.53, 0.052, 0.147, 0.226, 0.147, 0.15, 0.147, 0.338, 0.145, 0.235, 0.279, 0.154, 0.155, 0.154, 0.351, 0.165, 0.155, 0.162, 0.177, 0.173, 0.248, 0.21, 0.191, 0.206, 0.198, 0.206, 0.211, 0.22, 0.291, 0.312, 0.221, 0.684, 0.236, 0.24, 0.258, 0.256, 0.263, 0.27, 0.277, 0.295, 0.301, 0.345, 0.295, 0.3, 0.309, 0.31, 0.317, 0.319, 0.334, 0.341, 0.372, 0.344, 0.364, 0.369, 0.38, 0.376, 0.398, 0.617, 0.064, 0.141, 0.212, 0.147, 0.153, 0.354, 0.16, 0.221, 0.156, 0.153, 0.163, 0.265, 0.144, 0.236, 0.145, 0.146, 0.175, 0.153, 0.221, 0.325, 0.305, 0.159, 0.179, 0.173, 0.375]\n",
|
51 |
+
"\n",
|
52 |
+
"# nonincremental infer\n",
|
53 |
+
"# incremental = [0.122, 0.196, 0.123, 0.314, 0.136, 0.127, 0.133, 0.204, 0.193, 0.135, 0.306, 0.137, 0.126, 0.174, 0.121, 0.303, 0.066, 0.055, 0.131, 0.135, 0.166, 0.13, 0.245, 0.237, 0.191, 0.135, 0.206, 0.211, 0.149, 0.311, 0.257, 0.233, 0.168, 0.171, 0.178, 0.256, 0.186, 0.196, 0.181, 0.585, 0.06, 0.059, 0.139, 0.169, 0.123, 0.241, 0.202, 0.128, 0.141, 0.226, 0.152, 0.128, 0.392, 0.054, 0.246, 0.166, 0.115, 0.248, 0.139, 0.137, 0.185, 0.243, 0.224, 0.142, 0.185, 0.239, 0.156, 0.17, 0.255, 0.192, 0.243, 0.181, 0.19, 0.223, 0.186, 0.195, 0.304, 0.197, 0.23, 0.316, 0.214, 0.248, 0.236, 0.239, 0.236, 0.328, 0.286, 0.281, 0.262, 0.342, 0.289, 0.796, 0.287, 0.062, 0.052, 0.13, 0.119, 0.165, 0.227, 0.134, 0.24, 0.224, 0.133, 0.15, 0.28, 0.139, 0.143, 0.36, 0.121, 0.462, 0.125, 0.309, 0.145, 0.251, 0.256, 0.06, 0.058, 0.058, 0.056, 0.055, 0.048, 0.047, 0.066, 0.064, 0.069, 0.138, 0.127, 0.134, 0.282, 0.119, 0.123, 0.116, 0.268, 0.128, 0.165, 0.173, 0.141, 0.198, 0.209, 0.129, 0.13, 0.133, 0.328, 0.174, 0.173, 0.13, 0.132, 0.142, 0.252, 0.201, 0.137, 0.136, 0.318, 0.054, 0.123, 0.128, 0.123, 0.118, 0.24, 0.128, 0.202, 0.121, 0.278, 0.058, 0.13, 0.18, 0.124, 0.138, 0.126, 0.271, 0.059, 0.139, 0.164, 0.125, 0.187, 0.261, 0.132, 0.307, 0.132, 0.224, 0.398, 0.303, 0.307, 0.154, 0.153, 0.161, 0.204, 0.196, 0.285, 0.19, 0.203, 0.189, 0.196, 0.366, 0.22, 0.31, 0.258, 0.287, 0.322, 0.236, 0.241, 0.537, 0.311, 0.261, 0.261, 0.402, 0.281, 0.277, 0.28, 0.303, 0.345, 0.307, 0.297, 0.319, 0.487, 0.319, 0.339, 0.33, 0.339, 0.341, 1.037, 0.126, 0.237, 0.21, 0.124, 0.269, 0.161, 0.132, 0.223, 0.143, 0.137, 0.181, 0.143, 0.221, 0.179, 0.263, 0.162, 0.169, 0.254, 0.187, 0.184, 0.321, 0.203, 0.203, 0.444]\n",
|
54 |
+
"# incremental = [0.126, 0.202, 0.239, 0.218, 0.152, 0.153, 0.228, 0.137, 0.139, 0.145, 0.349, 0.201, 0.138, 0.165, 0.326, 0.057, 0.056, 0.059, 0.143, 0.131, 0.134, 0.291, 0.15, 0.277, 0.15, 0.197, 0.249, 0.167, 0.26, 0.243, 0.246, 0.156, 0.242, 0.188, 0.26, 0.241, 0.376, 0.209, 0.204, 0.437, 0.054, 0.241, 0.238, 0.139, 0.223, 0.212, 0.193, 0.145, 0.234, 0.212, 0.141, 0.408, 0.045, 0.149, 0.149, 0.134, 0.131, 0.183, 0.145, 0.137, 0.382, 0.305, 0.139, 0.142, 0.249, 0.157, 0.147, 0.265, 0.173, 0.243, 0.192, 0.182, 0.184, 0.189, 0.19, 0.221, 0.303, 0.208, 0.329, 0.226, 0.234, 0.239, 0.247, 0.246, 0.354, 0.39, 0.282, 0.274, 0.274, 0.278, 0.275, 0.823, 0.05, 0.067, 0.141, 0.174, 0.127, 0.274, 0.139, 0.221, 0.143, 0.145, 0.154, 0.298, 0.155, 0.15, 0.407, 0.155, 0.18, 0.132, 0.233, 0.212, 0.143, 0.296, 0.064, 0.089, 0.057, 0.06, 0.054, 0.05, 0.055, 0.056, 0.065, 0.064, 0.169, 0.129, 0.127, 0.311, 0.133, 0.131, 0.134, 0.142, 0.267, 0.132, 0.169, 0.133, 0.13, 0.29, 0.216, 0.147, 0.137, 0.299, 0.14, 0.207, 0.138, 0.141, 0.13, 0.266, 0.286, 0.136, 0.144, 0.339, 0.061, 0.405, 0.182, 0.145, 0.145, 0.182, 0.297, 0.221, 0.148, 0.298, 0.084, 0.07, 0.144, 0.182, 0.14, 0.134, 0.135, 0.288, 0.144, 0.194, 0.216, 0.143, 0.133, 0.135, 0.257, 0.246, 0.25, 0.361, 0.149, 0.422, 0.265, 0.167, 0.171, 0.19, 0.194, 0.182, 0.299, 0.196, 0.342, 0.21, 0.32, 0.222, 0.319, 0.232, 0.235, 0.252, 0.364, 0.249, 0.274, 0.294, 0.315, 0.295, 0.312, 0.285, 0.288, 0.303, 0.285, 0.353, 0.36, 0.314, 0.3, 0.351, 0.317, 0.312, 0.337, 0.561, 0.38, 1.073, 0.057, 0.145, 0.253, 0.136, 0.14, 0.205, 0.156, 0.29, 0.194, 0.136, 0.139, 0.143, 0.22, 0.266, 0.164, 0.159, 0.165, 0.187, 0.26, 0.184, 0.311, 0.236, 0.193, 0.186, 0.464]\n",
|
55 |
+
"\n",
|
56 |
+
"# incremental infer\n",
|
57 |
+
"# incremental = [0.117, 0.179, 0.229, 0.222, 0.143, 0.13, 0.137, 0.192, 0.215, 0.15, 0.257, 0.137, 0.176, 0.139, 0.199, 0.295, 0.066, 0.057, 0.162, 0.129, 0.176, 0.135, 0.266, 0.145, 0.265, 0.184, 0.211, 0.151, 0.221, 0.269, 0.244, 0.237, 0.176, 0.177, 0.181, 0.234, 0.193, 0.185, 0.203, 0.512, 0.057, 0.102, 0.127, 0.19, 0.126, 0.256, 0.227, 0.131, 0.134, 0.134, 0.204, 0.144, 0.35, 0.051, 0.275, 0.166, 0.2, 0.169, 0.131, 0.139, 0.263, 0.228, 0.225, 0.151, 0.178, 0.219, 0.14, 0.176, 0.291, 0.25, 0.213, 0.19, 0.192, 0.199, 0.206, 0.196, 0.28, 0.21, 0.317, 0.265, 0.236, 0.222, 0.272, 0.251, 0.262, 0.361, 0.273, 0.265, 0.272, 0.277, 0.279, 0.732, 0.064, 0.059, 0.066, 0.14, 0.135, 0.248, 0.14, 0.137, 0.198, 0.149, 0.232, 0.145, 0.268, 0.151, 0.151, 0.373, 0.179, 0.176, 0.181, 0.25, 0.131, 0.235, 0.058, 0.058, 0.055, 0.054, 0.059, 0.064, 0.058, 0.061, 0.055, 0.066, 0.057, 0.125, 0.127, 0.134, 0.275, 0.128, 0.126, 0.146, 0.306, 0.129, 0.164, 0.131, 0.128, 0.228, 0.213, 0.133, 0.137, 0.142, 0.319, 0.169, 0.174, 0.134, 0.129, 0.131, 0.302, 0.245, 0.14, 0.144, 0.323, 0.128, 0.164, 0.125, 0.135, 0.132, 0.266, 0.139, 0.191, 0.14, 0.259, 0.053, 0.13, 0.161, 0.122, 0.138, 0.122, 0.263, 0.057, 0.127, 0.158, 0.125, 0.126, 0.191, 0.205, 0.138, 0.129, 0.253, 0.143, 0.151, 0.148, 0.167, 0.165, 0.16, 0.383, 0.174, 0.296, 0.187, 0.334, 0.218, 0.207, 0.364, 0.206, 0.204, 0.226, 0.218, 0.237, 0.235, 0.279, 0.357, 0.273, 0.269, 0.265, 0.274, 0.271, 0.285, 0.293, 0.292, 0.301, 0.308, 0.308, 0.305, 0.302, 0.305, 0.305, 0.336, 0.339, 0.347, 1.08, 0.134, 0.169, 0.19, 0.124, 0.212, 0.178, 0.186, 0.209, 0.134, 0.128, 0.178, 0.137, 0.209, 0.187, 0.225, 0.163, 0.15, 0.161, 0.248, 0.281, 0.221, 0.183, 0.193, 0.429]\n",
|
58 |
+
"# incremental = [0.126, 0.189, 0.13, 0.293, 0.133, 0.149, 0.137, 0.235, 0.154, 0.141, 0.326, 0.132, 0.121, 0.17, 0.132, 0.291, 0.058, 0.061, 0.132, 0.132, 0.168, 0.134, 0.249, 0.235, 0.201, 0.144, 0.21, 0.214, 0.145, 0.258, 0.222, 0.223, 0.176, 0.208, 0.227, 0.259, 0.231, 0.32, 0.215, 0.569, 0.057, 0.057, 0.133, 0.129, 0.16, 0.289, 0.203, 0.134, 0.143, 0.23, 0.185, 0.142, 0.364, 0.054, 0.271, 0.165, 0.128, 0.29, 0.196, 0.138, 0.145, 0.198, 0.213, 0.149, 0.189, 0.213, 0.153, 0.159, 0.251, 0.171, 0.281, 0.184, 0.184, 0.189, 0.203, 0.203, 0.285, 0.194, 0.219, 0.347, 0.227, 0.229, 0.246, 0.232, 0.241, 0.365, 0.291, 0.284, 0.275, 0.274, 0.272, 0.779, 0.073, 0.058, 0.055, 0.143, 0.133, 0.159, 0.24, 0.133, 0.133, 0.238, 0.14, 0.144, 0.281, 0.142, 0.145, 0.368, 0.131, 0.165, 0.124, 0.26, 0.128, 0.128, 0.258, 0.061, 0.06, 0.051, 0.063, 0.069, 0.06, 0.055, 0.055, 0.052, 0.065, 0.13, 0.124, 0.124, 0.283, 0.129, 0.127, 0.131, 0.26, 0.056, 0.126, 0.178, 0.142, 0.234, 0.215, 0.13, 0.127, 0.132, 0.31, 0.183, 0.176, 0.133, 0.158, 0.143, 0.251, 0.205, 0.139, 0.144, 0.318, 0.054, 0.128, 0.17, 0.127, 0.129, 0.254, 0.214, 0.198, 0.156, 0.323, 0.057, 0.128, 0.167, 0.168, 0.136, 0.129, 0.25, 0.068, 0.189, 0.177, 0.128, 0.137, 0.283, 0.141, 0.305, 0.14, 0.226, 0.378, 0.263, 0.449, 0.172, 0.158, 0.168, 0.178, 0.221, 0.326, 0.189, 0.188, 0.193, 0.205, 0.371, 0.227, 0.327, 0.216, 0.231, 0.341, 0.251, 0.252, 0.298, 0.261, 0.281, 0.295, 0.359, 0.283, 0.285, 0.294, 0.305, 0.317, 0.322, 0.322, 0.317, 0.471, 0.315, 0.327, 0.328, 0.343, 0.347, 0.962, 0.136, 0.276, 0.237, 0.134, 0.227, 0.137, 0.134, 0.225, 0.151, 0.144, 0.182, 0.165, 0.215, 0.163, 0.243, 0.161, 0.171, 0.177, 0.251, 0.187, 0.315, 0.224, 0.207, 0.426]\n",
|
59 |
+
"# incremental = [0.157, 0.136, 0.199, 0.132, 0.266, 0.164, 0.14, 0.148, 0.223, 0.24, 0.148, 0.299, 0.195, 0.184, 0.151, 0.14, 0.284, 0.068, 0.069, 0.181, 0.136, 0.129, 0.226, 0.248, 0.164, 0.358, 0.174, 0.196, 0.154, 0.244, 0.244, 0.224, 0.172, 0.256, 0.187, 0.22, 0.186, 0.219, 0.216, 0.2, 0.528, 0.063, 0.058, 0.139, 0.169, 0.128, 0.136, 0.278, 0.148, 0.132, 0.139, 0.155, 0.149, 0.382, 0.063, 0.144, 0.128, 0.177, 0.181, 0.132, 0.145, 0.317, 0.154, 0.234, 0.148, 0.281, 0.152, 0.164, 0.254, 0.178, 0.252, 0.187, 0.193, 0.184, 0.2, 0.199, 0.207, 0.304, 0.227, 0.313, 0.291, 0.24, 0.249, 0.245, 0.264, 0.333, 0.371, 0.272, 0.278, 0.28, 0.302, 0.756, 0.061, 0.068, 0.056, 0.059, 0.135, 0.163, 0.136, 0.215, 0.256, 0.135, 0.151, 0.227, 0.147, 0.281, 0.17, 0.159, 0.358, 0.166, 0.134, 0.197, 0.311, 0.167, 0.259, 0.061, 0.053, 0.072, 0.07, 0.078, 0.073, 0.078, 0.08, 0.076, 0.074, 0.071, 0.192, 0.126, 0.125, 0.281, 0.134, 0.126, 0.136, 0.25, 0.133, 0.174, 0.139, 0.129, 0.222, 0.216, 0.192, 0.144, 0.135, 0.248, 0.183, 0.176, 0.189, 0.144, 0.22, 0.184, 0.2, 0.135, 0.133, 0.315, 0.128, 0.298, 0.126, 0.126, 0.121, 0.34, 0.143, 0.208, 0.146, 0.276, 0.058, 0.132, 0.135, 0.176, 0.125, 0.127, 0.28, 0.131, 0.165, 0.191, 0.136, 0.128, 0.173, 0.234, 0.289, 0.168, 0.281, 0.415, 0.331, 0.362, 0.161, 0.162, 0.189, 0.194, 0.2, 0.292, 0.2, 0.199, 0.328, 0.363, 0.237, 0.352, 0.218, 0.227, 0.235, 0.291, 0.26, 0.321, 0.273, 0.306, 0.273, 0.274, 0.271, 0.369, 0.293, 0.286, 0.304, 0.308, 0.322, 0.299, 0.313, 0.444, 0.329, 0.35, 0.521, 0.365, 0.908, 0.054, 0.183, 0.167, 0.185, 0.129, 0.222, 0.132, 0.238, 0.139, 0.131, 0.135, 0.185, 0.138, 0.221, 0.187, 0.218, 0.153, 0.158, 0.176, 0.246, 0.297, 0.222, 0.202, 0.191, 0.463]\n",
|
60 |
+
"# incremental = [0.329, 0.188, 0.206, 0.228, 0.138, 0.133, 0.138, 0.205, 0.178, 0.143, 0.368, 0.167, 0.167, 0.128, 0.132, 0.283, 0.069, 0.064, 0.13, 0.121, 0.165, 0.174, 0.245, 0.177, 0.253, 0.171, 0.142, 0.208, 0.185, 0.268, 0.23, 0.238, 0.169, 0.167, 0.22, 0.179, 0.19, 0.186, 0.194, 0.512, 0.059, 0.083, 0.123, 0.166, 0.13, 0.247, 0.205, 0.135, 0.144, 0.229, 0.148, 0.139, 0.372, 0.057, 0.127, 0.122, 0.165, 0.208, 0.29, 0.133, 0.215, 0.235, 0.22, 0.146, 0.186, 0.215, 0.161, 0.176, 0.254, 0.168, 0.24, 0.174, 0.181, 0.216, 0.202, 0.201, 0.289, 0.202, 0.294, 0.207, 0.208, 0.214, 0.215, 0.234, 0.245, 0.346, 0.27, 0.271, 0.276, 0.334, 0.272, 0.704, 0.141, 0.052, 0.07, 0.157, 0.13, 0.161, 0.222, 0.137, 0.199, 0.15, 0.217, 0.14, 0.263, 0.149, 0.147, 0.379, 0.162, 0.185, 0.129, 0.237, 0.135, 0.127, 0.228, 0.06, 0.06, 0.064, 0.056, 0.06, 0.057, 0.054, 0.054, 0.061, 0.054, 0.122, 0.144, 0.15, 0.279, 0.13, 0.119, 0.124, 0.254, 0.138, 0.204, 0.181, 0.128, 0.204, 0.183, 0.185, 0.149, 0.148, 0.305, 0.213, 0.174, 0.14, 0.135, 0.143, 0.244, 0.204, 0.134, 0.134, 0.317, 0.06, 0.131, 0.123, 0.128, 0.161, 0.323, 0.128, 0.197, 0.146, 0.268, 0.057, 0.129, 0.169, 0.132, 0.126, 0.165, 0.258, 0.059, 0.174, 0.17, 0.127, 0.128, 0.202, 0.239, 0.243, 0.134, 0.138, 0.136, 0.295, 0.274, 0.155, 0.157, 0.204, 0.304, 0.313, 0.178, 0.205, 0.29, 0.193, 0.198, 0.393, 0.206, 0.307, 0.205, 0.213, 0.309, 0.217, 0.225, 0.266, 0.237, 0.285, 0.32, 0.267, 0.361, 0.28, 0.274, 0.272, 0.286, 0.287, 0.32, 0.308, 0.409, 0.442, 0.561, 0.325, 0.307, 0.315, 0.852, 0.412, 0.161, 0.181, 0.125, 0.216, 0.138, 0.197, 0.191, 0.131, 0.316, 0.173, 0.139, 0.202, 0.151, 0.229, 0.156, 0.157, 0.164, 0.284, 0.282, 0.214, 0.179, 0.185, 0.467]\n",
|
61 |
+
"# incremental = [0.189, 0.126, 0.17, 0.23, 0.136, 0.135, 0.164, 0.234, 0.152, 0.141, 0.145, 0.329, 0.138, 0.206, 0.138, 0.325, 0.06, 0.056, 0.061, 0.136, 0.128, 0.13, 0.257, 0.138, 0.245, 0.148, 0.214, 0.214, 0.144, 0.197, 0.278, 0.178, 0.173, 0.257, 0.18, 0.18, 0.225, 0.338, 0.21, 0.2, 0.39, 0.057, 0.143, 0.17, 0.139, 0.242, 0.204, 0.184, 0.136, 0.209, 0.14, 0.148, 0.404, 0.055, 0.162, 0.144, 0.129, 0.172, 0.152, 0.128, 0.133, 0.33, 0.233, 0.139, 0.138, 0.239, 0.149, 0.158, 0.245, 0.172, 0.175, 0.25, 0.177, 0.191, 0.188, 0.195, 0.188, 0.287, 0.202, 0.301, 0.22, 0.222, 0.229, 0.229, 0.24, 0.275, 0.34, 0.279, 0.267, 0.27, 0.276, 0.291, 0.748, 0.058, 0.059, 0.142, 0.172, 0.152, 0.25, 0.136, 0.214, 0.142, 0.157, 0.138, 0.266, 0.152, 0.148, 0.146, 0.368, 0.172, 0.13, 0.233, 0.14, 0.135, 0.28, 0.058, 0.059, 0.06, 0.097, 0.064, 0.058, 0.058, 0.057, 0.055, 0.059, 0.16, 0.126, 0.128, 0.282, 0.138, 0.125, 0.122, 0.132, 0.322, 0.128, 0.199, 0.431, 0.121, 0.204, 0.189, 0.13, 0.124, 0.264, 0.135, 0.173, 0.147, 0.125, 0.127, 0.244, 0.193, 0.126, 0.132, 0.294, 0.051, 0.133, 0.159, 0.127, 0.124, 0.207, 0.221, 0.195, 0.138, 0.258, 0.048, 0.058, 0.128, 0.164, 0.126, 0.122, 0.135, 0.272, 0.13, 0.166, 0.186, 0.124, 0.173, 0.133, 0.239, 0.269, 0.135, 0.284, 0.293, 0.244, 0.227, 0.162, 0.157, 0.194, 0.185, 0.203, 0.284, 0.202, 0.33, 0.212, 0.314, 0.216, 0.395, 0.242, 0.235, 0.235, 0.339, 0.253, 0.331, 0.287, 0.284, 0.277, 0.313, 0.281, 0.318, 0.3, 0.358, 0.317, 0.31, 0.309, 0.306, 0.462, 0.338, 0.334, 0.354, 0.479, 0.373, 0.911, 0.055, 0.185, 0.161, 0.127, 0.24, 0.125, 0.129, 0.215, 0.179, 0.127, 0.143, 0.135, 0.208, 0.223, 0.162, 0.15, 0.161, 0.18, 0.238, 0.185, 0.309, 0.217, 0.207, 0.19, 0.425]\n",
|
62 |
+
"# incremental = [0.133, 0.192, 0.198, 0.229, 0.133, 0.135, 0.239, 0.146, 0.143, 0.141, 0.325, 0.186, 0.164, 0.146, 0.304, 0.059, 0.058, 0.052, 0.13, 0.14, 0.139, 0.272, 0.167, 0.308, 0.152, 0.144, 0.243, 0.149, 0.211, 0.223, 0.227, 0.163, 0.28, 0.184, 0.178, 0.243, 0.338, 0.199, 0.226, 0.391, 0.06, 0.19, 0.207, 0.129, 0.21, 0.197, 0.169, 0.133, 0.132, 0.231, 0.145, 0.361, 0.055, 0.189, 0.135, 0.125, 0.123, 0.166, 0.133, 0.129, 0.319, 0.225, 0.139, 0.151, 0.19, 0.243, 0.152, 0.256, 0.165, 0.25, 0.191, 0.173, 0.204, 0.21, 0.212, 0.198, 0.296, 0.197, 0.312, 0.234, 0.225, 0.217, 0.259, 0.249, 0.336, 0.348, 0.289, 0.274, 0.308, 0.273, 0.29, 0.742, 0.066, 0.055, 0.128, 0.16, 0.132, 0.238, 0.134, 0.221, 0.142, 0.135, 0.149, 0.268, 0.151, 0.147, 0.152, 0.361, 0.162, 0.124, 0.177, 0.126, 0.127, 0.303, 0.061, 0.061, 0.053, 0.053, 0.057, 0.059, 0.056, 0.063, 0.059, 0.079, 0.187, 0.126, 0.132, 0.279, 0.131, 0.175, 0.123, 0.135, 0.304, 0.127, 0.155, 0.143, 0.126, 0.215, 0.197, 0.177, 0.133, 0.245, 0.125, 0.168, 0.168, 0.122, 0.122, 0.257, 0.223, 0.142, 0.129, 0.311, 0.073, 0.136, 0.203, 0.135, 0.125, 0.752, 0.382, 0.217, 0.13, 0.262, 0.056, 0.057, 0.135, 0.181, 0.128, 0.132, 0.126, 0.249, 0.126, 0.161, 0.204, 0.132, 0.133, 0.133, 0.243, 0.247, 0.213, 0.359, 0.148, 0.433, 0.243, 0.152, 0.176, 0.186, 0.187, 0.178, 0.286, 0.199, 0.201, 0.198, 0.367, 0.32, 0.198, 0.224, 0.218, 0.216, 0.341, 0.233, 0.241, 0.291, 0.311, 0.286, 0.31, 0.28, 0.277, 0.274, 0.288, 0.361, 0.31, 0.303, 0.291, 0.363, 0.425, 0.318, 0.362, 0.463, 0.365, 0.918, 0.062, 0.194, 0.164, 0.129, 0.126, 0.19, 0.134, 0.279, 0.186, 0.139, 0.137, 0.144, 0.228, 0.233, 0.15, 0.155, 0.162, 0.166, 0.272, 0.187, 0.323, 0.183, 0.188, 0.198, 0.423]\n",
|
63 |
+
"# incremental = [0.187, 0.13, 0.26, 0.14, 0.134, 0.251, 0.132, 0.212, 0.15, 0.143, 0.363, 0.141, 0.167, 0.128, 0.285, 0.055, 0.052, 0.136, 0.13, 0.168, 0.129, 0.247, 0.241, 0.194, 0.152, 0.218, 0.209, 0.151, 0.267, 0.175, 0.224, 0.165, 0.174, 0.269, 0.201, 0.243, 0.322, 0.219, 0.199, 0.558, 0.058, 0.139, 0.171, 0.14, 0.336, 0.141, 0.137, 0.148, 0.24, 0.319, 0.149, 0.56, 0.055, 0.137, 0.172, 0.134, 0.269, 0.129, 0.138, 0.131, 0.245, 0.22, 0.137, 0.183, 0.232, 0.16, 0.151, 0.247, 0.171, 0.253, 0.19, 0.182, 0.189, 0.204, 0.186, 0.199, 0.328, 0.232, 0.372, 0.229, 0.214, 0.228, 0.242, 0.234, 0.653, 0.289, 0.324, 0.344, 0.293, 0.279, 0.749, 0.063, 0.056, 0.057, 0.136, 0.124, 0.167, 0.251, 0.139, 0.134, 0.236, 0.134, 0.147, 0.322, 0.162, 0.142, 0.376, 0.14, 0.173, 0.138, 0.266, 0.142, 0.136, 0.278, 0.065, 0.059, 0.059, 0.062, 0.057, 0.055, 0.063, 0.064, 0.072, 0.065, 0.136, 0.124, 0.12, 0.276, 0.132, 0.164, 0.138, 0.256, 0.05, 0.134, 0.167, 0.124, 0.234, 0.152, 0.201, 0.154, 0.137, 0.334, 0.174, 0.183, 0.132, 0.134, 0.167, 0.308, 0.209, 0.143, 0.141, 0.313, 0.056, 0.13, 0.176, 0.131, 0.133, 0.245, 0.214, 0.206, 0.148, 0.25, 0.053, 0.122, 0.118, 0.189, 0.13, 0.128, 0.136, 0.24, 0.135, 0.171, 0.126, 0.146, 0.216, 0.208, 0.29, 0.133, 0.132, 0.286, 0.336, 0.263, 0.157, 0.166, 0.173, 0.184, 0.185, 0.284, 0.185, 0.203, 0.203, 0.198, 0.359, 0.312, 0.339, 0.256, 0.253, 0.284, 0.335, 0.259, 0.334, 0.307, 0.304, 0.281, 0.373, 0.3, 0.289, 0.29, 0.286, 0.327, 0.3, 0.299, 0.32, 0.435, 0.32, 0.464, 0.339, 0.334, 0.348, 1.288, 0.058, 0.201, 0.126, 0.527, 0.284, 0.148, 0.13, 0.21, 0.175, 0.138, 0.135, 0.141, 0.215, 0.238, 0.16, 0.164, 0.161, 0.186, 0.247, 0.192, 0.375, 0.191, 0.2, 0.431]\n",
|
64 |
+
"incremental = [0.153, 0.171, 0.197, 0.138, 0.23, 0.137, 0.141, 0.145, 0.225, 0.146, 0.148, 0.336, 0.138, 0.163, 0.181, 0.133, 0.354, 0.064, 0.053, 0.133, 0.132, 0.166, 0.135, 0.232, 0.234, 0.231, 0.204, 0.214, 0.157, 0.189, 0.236, 0.221, 0.245, 0.229, 0.205, 0.203, 0.248, 0.194, 0.201, 0.197, 0.483, 0.057, 0.052, 0.132, 0.158, 0.13, 0.251, 0.197, 0.135, 0.143, 0.262, 0.144, 0.135, 0.38, 0.054, 0.226, 0.128, 0.166, 0.261, 0.139, 0.132, 0.284, 0.23, 0.234, 0.142, 0.211, 0.217, 0.155, 0.163, 0.285, 0.169, 0.242, 0.201, 0.188, 0.189, 0.186, 0.187, 0.311, 0.214, 0.213, 0.304, 0.23, 0.265, 0.219, 0.234, 0.252, 0.239, 0.339, 0.278, 0.365, 0.271, 0.277, 0.729, 0.051, 0.055, 0.059, 0.132, 0.121, 0.162, 0.239, 0.133, 0.135, 0.214, 0.142, 0.132, 0.258, 0.144, 0.135, 0.386, 0.13, 0.135, 0.133, 0.273, 0.136, 0.133, 0.254, 0.05, 0.049, 0.05, 0.053, 0.093, 0.064, 0.055, 0.053, 0.049, 0.056, 0.142, 0.125, 0.131, 0.273, 0.131, 0.124, 0.121, 0.264, 0.135, 0.172, 0.159, 0.136, 0.205, 0.21, 0.159, 0.159, 0.14, 0.324, 0.161, 0.171, 0.127, 0.139, 0.154, 0.293, 0.22, 0.149, 0.188, 0.331, 0.051, 0.133, 0.132, 0.122, 0.152, 0.25, 0.191, 0.277, 0.134, 0.259, 0.051, 0.129, 0.168, 0.169, 0.134, 0.121, 0.253, 0.051, 0.147, 0.163, 0.137, 0.13, 0.264, 0.286, 0.179, 0.142, 0.224, 0.367, 0.156, 0.444, 0.173, 0.178, 0.187, 0.186, 0.189, 0.277, 0.184, 0.189, 0.189, 0.198, 0.366, 0.214, 0.306, 0.221, 0.221, 0.335, 0.269, 0.253, 0.299, 0.285, 0.28, 0.271, 0.353, 0.285, 0.291, 0.28, 0.307, 0.297, 0.31, 0.297, 0.305, 0.48, 0.323, 0.33, 0.329, 0.33, 0.333, 0.922, 0.131, 0.168, 0.188, 0.135, 0.21, 0.143, 0.13, 0.224, 0.138, 0.147, 0.198, 0.14, 0.223, 0.156, 0.239, 0.164, 0.163, 0.295, 0.184, 0.186, 0.333, 0.204, 0.197, 0.439]\n",
|
65 |
+
"# self_attn_state\n",
|
66 |
+
"# incremental = [0.122, 0.2, 0.133, 0.321, 0.136, 0.154, 0.141, 0.181, 0.212, 0.143, 0.313, 0.172, 0.134, 0.136, 0.356, 0.057, 0.078, 0.056, 0.139, 0.121, 0.158, 0.218, 0.203, 0.171, 0.208, 0.142, 0.24, 0.14, 0.141, 0.142, 0.158, 0.155, 0.184, 0.181, 0.221, 0.459, 0.198, 0.123, 0.126, 0.27, 0.067, 0.125, 0.163, 0.188, 0.129, 0.125, 0.239, 0.138, 0.136, 0.138, 0.133, 0.137, 0.381, 0.055, 0.129, 0.118, 0.166, 0.171, 0.131, 0.134, 0.278, 0.187, 0.229, 0.182, 0.129, 0.172, 0.128, 0.126, 0.248, 0.144, 0.217, 0.148, 0.14, 0.151, 0.266, 0.502, 0.155, 0.161, 0.211, 0.178, 0.176, 0.186, 0.187, 0.183, 0.211, 0.204, 0.22, 0.214, 0.206, 0.296, 0.252, 0.192, 0.063, 0.054, 0.056, 0.128, 0.124, 0.171, 0.263, 0.134, 0.198, 0.145, 0.26, 0.155, 0.123, 0.197, 0.127, 0.413, 0.209, 0.123, 0.194, 0.131, 0.128, 0.297, 0.053, 0.05, 0.057, 0.055, 0.046, 0.063, 0.06, 0.057, 0.057, 0.059, 0.135, 0.164, 0.121, 0.116, 0.258, 0.124, 0.118, 0.127, 0.285, 0.131, 0.164, 0.128, 0.134, 0.223, 0.208, 0.148, 0.124, 0.127, 0.263, 0.166, 0.128, 0.139, 0.162, 0.296, 0.189, 0.13, 0.135, 0.318, 0.049, 0.123, 0.17, 0.128, 0.125, 0.21, 0.214, 0.139, 0.14, 0.274, 0.051, 0.062, 0.131, 0.145, 0.162, 0.136, 0.125, 0.282, 0.13, 0.164, 0.205, 0.129, 0.156, 0.156, 0.251, 0.357, 0.139, 0.138, 0.149, 0.353, 0.19, 0.304, 0.165, 0.186, 0.194, 0.196, 0.183, 0.187, 0.194, 0.199, 0.206, 0.267, 0.212, 0.257, 0.228, 0.226, 0.225, 0.239, 0.3, 0.268, 0.272, 0.278, 0.303, 0.283, 0.274, 0.279, 0.274, 0.289, 0.303, 0.3, 0.303, 0.313, 0.305, 0.332, 0.344, 0.343, 0.342, 1.678, 0.062, 0.164, 0.13, 0.204, 0.171, 0.217, 0.171, 0.247, 0.207, 0.134, 0.13, 0.138, 0.138, 0.147, 0.187, 0.142, 0.242, 0.158, 0.16, 0.168, 0.214, 0.284, 0.185, 0.179, 0.365]\n",
|
67 |
+
"# incremental = [0.231, 0.134, 0.238, 0.195, 0.206, 0.147, 0.136, 0.149, 0.187, 0.214, 0.148, 0.354, 0.19, 0.213, 0.139, 0.138, 0.281, 0.061, 0.069, 0.178, 0.145, 0.133, 0.21, 0.208, 0.14, 0.287, 0.178, 0.173, 0.149, 0.27, 0.398, 0.376, 0.496, 0.164, 0.162, 0.178, 0.375, 0.273, 0.123, 0.126, 0.327, 0.058, 0.063, 0.134, 0.167, 0.127, 0.19, 0.167, 0.128, 0.132, 0.269, 0.14, 0.136, 0.388, 0.052, 0.245, 0.169, 0.126, 0.163, 0.126, 0.133, 0.264, 0.133, 0.246, 0.153, 0.164, 0.158, 0.119, 0.129, 0.254, 0.157, 0.268, 0.14, 0.135, 0.241, 0.143, 0.151, 0.155, 0.161, 0.188, 0.233, 0.191, 0.184, 0.179, 0.224, 0.213, 0.218, 0.226, 0.21, 0.211, 0.297, 0.253, 0.048, 0.056, 0.06, 0.059, 0.12, 0.169, 0.13, 0.233, 0.136, 0.21, 0.173, 0.162, 0.263, 0.146, 0.153, 0.139, 0.406, 0.191, 0.144, 0.163, 0.267, 0.139, 0.298, 0.055, 0.061, 0.049, 0.052, 0.055, 0.053, 0.051, 0.06, 0.053, 0.048, 0.052, 0.166, 0.123, 0.123, 0.26, 0.131, 0.161, 0.124, 0.277, 0.124, 0.159, 0.131, 0.131, 0.211, 0.135, 0.2, 0.135, 0.174, 0.285, 0.186, 0.179, 0.139, 0.133, 0.231, 0.181, 0.137, 0.199, 0.135, 0.306, 0.128, 0.173, 0.119, 0.116, 0.126, 0.285, 0.151, 0.136, 0.151, 0.363, 0.063, 0.173, 0.129, 0.169, 0.121, 0.129, 0.326, 0.13, 0.168, 0.212, 0.125, 0.136, 0.132, 0.247, 0.313, 0.144, 0.142, 0.149, 0.293, 0.178, 0.363, 0.176, 0.188, 0.185, 0.192, 0.178, 0.192, 0.213, 0.199, 0.204, 0.256, 0.21, 0.22, 0.208, 0.226, 0.242, 0.241, 0.556, 0.257, 0.262, 0.259, 0.26, 0.271, 0.379, 0.318, 0.282, 0.304, 0.331, 0.322, 0.295, 0.328, 0.328, 0.301, 0.345, 0.331, 0.333, 0.69, 0.056, 0.123, 0.167, 0.196, 0.127, 0.21, 0.129, 0.208, 0.234, 0.134, 0.141, 0.144, 0.137, 0.142, 0.139, 0.242, 0.152, 0.146, 0.16, 0.18, 0.287, 0.184, 0.18, 0.177, 0.321]\n",
|
68 |
+
"fig, ax = plt.subplots()\n",
|
69 |
+
"ax.boxplot([nonincremental, incremental])\n",
|
70 |
+
"ax.set_xticklabels([\"nonincremental\", \"incremental\"])"
|
71 |
+
]
|
72 |
+
},
|
73 |
+
{
|
74 |
+
"cell_type": "code",
|
75 |
+
"execution_count": 12,
|
76 |
+
"metadata": {},
|
77 |
+
"outputs": [
|
78 |
+
{
|
79 |
+
"name": "stdout",
|
80 |
+
"output_type": "stream",
|
81 |
+
"text": [
|
82 |
+
"0.262 0.20222357723577236\n",
|
83 |
+
"0.2530612244897959 0.0975609756097561\n"
|
84 |
+
]
|
85 |
+
}
|
86 |
+
],
|
87 |
+
"source": [
|
88 |
+
"print(np.mean(nonincremental), np.mean(incremental))\n",
|
89 |
+
"print(sum([1 for x in nonincremental if x > 0.32])/len(nonincremental), sum([1 for x in incremental if x > 0.32])/len(incremental))"
|
90 |
+
]
|
91 |
+
},
|
92 |
+
{
|
93 |
+
"cell_type": "code",
|
94 |
+
"execution_count": null,
|
95 |
+
"metadata": {},
|
96 |
+
"outputs": [],
|
97 |
+
"source": []
|
98 |
+
},
|
99 |
+
{
|
100 |
+
"cell_type": "code",
|
101 |
+
"execution_count": 75,
|
102 |
+
"metadata": {},
|
103 |
+
"outputs": [
|
104 |
+
{
|
105 |
+
"data": {
|
106 |
+
"text/plain": [
|
107 |
+
"0.41239999999999993"
|
108 |
+
]
|
109 |
+
},
|
110 |
+
"execution_count": 75,
|
111 |
+
"metadata": {},
|
112 |
+
"output_type": "execute_result"
|
113 |
+
}
|
114 |
+
],
|
115 |
+
"source": [
|
116 |
+
"np.percentile(nonincremental, 90)"
|
117 |
+
]
|
118 |
+
},
|
119 |
+
{
|
120 |
+
"cell_type": "code",
|
121 |
+
"execution_count": 23,
|
122 |
+
"metadata": {},
|
123 |
+
"outputs": [
|
124 |
+
{
|
125 |
+
"data": {
|
126 |
+
"text/plain": [
|
127 |
+
"0.3105"
|
128 |
+
]
|
129 |
+
},
|
130 |
+
"execution_count": 23,
|
131 |
+
"metadata": {},
|
132 |
+
"output_type": "execute_result"
|
133 |
+
}
|
134 |
+
],
|
135 |
+
"source": [
|
136 |
+
"np.percentile(incremental, 90)"
|
137 |
+
]
|
138 |
+
},
|
139 |
+
{
|
140 |
+
"cell_type": "code",
|
141 |
+
"execution_count": null,
|
142 |
+
"metadata": {},
|
143 |
+
"outputs": [],
|
144 |
+
"source": []
|
145 |
+
}
|
146 |
+
],
|
147 |
+
"metadata": {
|
148 |
+
"kernelspec": {
|
149 |
+
"display_name": "fairseq-20230220-seamless",
|
150 |
+
"language": "python",
|
151 |
+
"name": "python3"
|
152 |
+
},
|
153 |
+
"language_info": {
|
154 |
+
"codemirror_mode": {
|
155 |
+
"name": "ipython",
|
156 |
+
"version": 3
|
157 |
+
},
|
158 |
+
"file_extension": ".py",
|
159 |
+
"mimetype": "text/x-python",
|
160 |
+
"name": "python",
|
161 |
+
"nbconvert_exporter": "python",
|
162 |
+
"pygments_lexer": "ipython3",
|
163 |
+
"version": "3.9.16"
|
164 |
+
},
|
165 |
+
"orig_nbformat": 4
|
166 |
+
},
|
167 |
+
"nbformat": 4,
|
168 |
+
"nbformat_minor": 2
|
169 |
+
}
|
seamless_server/whl/seamless_communication-1.0.0-py3-none-any.whl
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:9063a33bd6da9f068a85f9e2dfbde322eaa805e8ee6e7a2e041ed95030b75ad9
|
3 |
+
size 240828
|
streaming-react-app/.gitignore
CHANGED
@@ -10,6 +10,7 @@ lerna-debug.log*
|
|
10 |
node_modules
|
11 |
dist
|
12 |
dist-ssr
|
|
|
13 |
*.local
|
14 |
|
15 |
# Editor directories and files
|
|
|
10 |
node_modules
|
11 |
dist
|
12 |
dist-ssr
|
13 |
+
build
|
14 |
*.local
|
15 |
|
16 |
# Editor directories and files
|
streaming-react-app/package-lock.json
CHANGED
The diff for this file is too large to render.
See raw diff
|
|
streaming-react-app/package.json
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
{
|
2 |
"name": "streaming-react-app",
|
3 |
"private": true,
|
4 |
-
"version": "0.0.
|
5 |
"type": "module",
|
6 |
"scripts": {
|
7 |
"dev": "vite --host --strictPort",
|
8 |
-
"build": "vite build",
|
9 |
"preview": "vite preview",
|
10 |
"clean:node-modules": "rm -rf node_modules/",
|
11 |
"ts-check": "tsc --noEmit",
|
@@ -24,6 +24,7 @@
|
|
24 |
"amazon-cognito-identity-js": "^6.3.6",
|
25 |
"audiobuffer-to-wav": "^1.0.0",
|
26 |
"aws-sdk": "^2.1472.0",
|
|
|
27 |
"js-cookie": "^3.0.5",
|
28 |
"lodash": "4.17.21",
|
29 |
"react": "^18.2.0",
|
|
|
1 |
{
|
2 |
"name": "streaming-react-app",
|
3 |
"private": true,
|
4 |
+
"version": "0.0.13",
|
5 |
"type": "module",
|
6 |
"scripts": {
|
7 |
"dev": "vite --host --strictPort",
|
8 |
+
"build": "tsc && vite build",
|
9 |
"preview": "vite preview",
|
10 |
"clean:node-modules": "rm -rf node_modules/",
|
11 |
"ts-check": "tsc --noEmit",
|
|
|
24 |
"amazon-cognito-identity-js": "^6.3.6",
|
25 |
"audiobuffer-to-wav": "^1.0.0",
|
26 |
"aws-sdk": "^2.1472.0",
|
27 |
+
"iso-639-1": "^3.1.0",
|
28 |
"js-cookie": "^3.0.5",
|
29 |
"lodash": "4.17.21",
|
30 |
"react": "^18.2.0",
|
streaming-react-app/src/SocketWrapper.tsx
CHANGED
@@ -11,9 +11,8 @@ import {getURLParams} from './URLParams';
|
|
11 |
|
12 |
// The time to wait before showing a "disconnected" screen upon initial app load
|
13 |
const INITIAL_DISCONNECT_SCREEN_DELAY = 2000;
|
14 |
-
const SERVER_URL_DEFAULT =
|
15 |
-
|
16 |
-
|
17 |
export default function SocketWrapper({children}) {
|
18 |
const [socket, setSocket] = useState<Socket | null>(null);
|
19 |
const [connected, setConnected] = useState<boolean | null>(null);
|
@@ -63,7 +62,6 @@ export default function SocketWrapper({children}) {
|
|
63 |
// want that because that'd mean awful performance. It'd be better for the app
|
64 |
// to simply break in that case and not connect.
|
65 |
transports: ['websocket'],
|
66 |
-
path: '/ws/socket.io'
|
67 |
});
|
68 |
|
69 |
const onServerID = (serverID: string) => {
|
|
|
11 |
|
12 |
// The time to wait before showing a "disconnected" screen upon initial app load
|
13 |
const INITIAL_DISCONNECT_SCREEN_DELAY = 2000;
|
14 |
+
const SERVER_URL_DEFAULT = 'localhost:8000';
|
15 |
+
|
|
|
16 |
export default function SocketWrapper({children}) {
|
17 |
const [socket, setSocket] = useState<Socket | null>(null);
|
18 |
const [connected, setConnected] = useState<boolean | null>(null);
|
|
|
62 |
// want that because that'd mean awful performance. It'd be better for the app
|
63 |
// to simply break in that case and not connect.
|
64 |
transports: ['websocket'],
|
|
|
65 |
});
|
66 |
|
67 |
const onServerID = (serverID: string) => {
|
streaming-react-app/src/StreamingInterface.tsx
CHANGED
@@ -39,6 +39,7 @@ import float32To16BitPCM from './float32To16BitPCM';
|
|
39 |
import createBufferedSpeechPlayer from './createBufferedSpeechPlayer';
|
40 |
import Checkbox from '@mui/material/Checkbox';
|
41 |
import Alert from '@mui/material/Alert';
|
|
|
42 |
import isScrolledToDocumentBottom from './isScrolledToDocumentBottom';
|
43 |
import Box from '@mui/material/Box';
|
44 |
import Slider from '@mui/material/Slider';
|
@@ -58,11 +59,11 @@ import {getURLParams} from './URLParams';
|
|
58 |
import debug from './debug';
|
59 |
import DebugSection from './DebugSection';
|
60 |
import Switch from '@mui/material/Switch';
|
61 |
-
import Grid from '@mui/material
|
62 |
-
import {getLanguageFromThreeLetterCode} from './languageLookup';
|
63 |
-
import HeadphonesIcon from '@mui/icons-material/Headphones';
|
64 |
|
65 |
-
const AUDIO_STREAM_DEFAULTS
|
|
|
|
|
66 |
userMedia: {
|
67 |
echoCancellation: false,
|
68 |
noiseSuppression: true,
|
@@ -71,10 +72,13 @@ const AUDIO_STREAM_DEFAULTS = {
|
|
71 |
echoCancellation: false,
|
72 |
noiseSuppression: false,
|
73 |
},
|
74 |
-
}
|
75 |
|
76 |
async function requestUserMediaAudioStream(
|
77 |
-
config: BrowserAudioStreamConfig =
|
|
|
|
|
|
|
78 |
) {
|
79 |
const stream = await navigator.mediaDevices.getUserMedia({
|
80 |
audio: {...config, channelCount: 1},
|
@@ -87,7 +91,10 @@ async function requestUserMediaAudioStream(
|
|
87 |
}
|
88 |
|
89 |
async function requestDisplayMediaAudioStream(
|
90 |
-
config: BrowserAudioStreamConfig =
|
|
|
|
|
|
|
91 |
) {
|
92 |
const stream = await navigator.mediaDevices.getDisplayMedia({
|
93 |
audio: {...config, channelCount: 1},
|
@@ -152,7 +159,6 @@ export default function StreamingInterface() {
|
|
152 |
useState<StreamingStatus>('stopped');
|
153 |
|
154 |
const isStreamConfiguredRef = useRef<boolean>(false);
|
155 |
-
const [hasMaxSpeakers, setHasMaxSpeakers] = useState<boolean>(false);
|
156 |
|
157 |
const [outputMode, setOutputMode] = useState<SupportedOutputMode>('s2s&t');
|
158 |
const [inputSource, setInputSource] =
|
@@ -309,7 +315,6 @@ export default function StreamingInterface() {
|
|
309 |
console.log('[configureStreamAsync] sending config', config);
|
310 |
|
311 |
socket.emit('configure_stream', config, (statusObject) => {
|
312 |
-
setHasMaxSpeakers(statusObject.message === 'max_speakers')
|
313 |
if (statusObject.status === 'ok') {
|
314 |
isStreamConfiguredRef.current = true;
|
315 |
console.debug(
|
@@ -754,29 +759,7 @@ export default function StreamingInterface() {
|
|
754 |
</Typography>
|
755 |
</div>
|
756 |
</div>
|
757 |
-
|
758 |
-
<div>
|
759 |
-
<Typography variant="body2" sx={{color: '#65676B'}}>
|
760 |
-
Welcome! This space is limited to one speaker at a time.
|
761 |
-
If using the live HF space, sharing room code to listeners on another
|
762 |
-
IP address may not work because it's running on different replicas.
|
763 |
-
Use headphones if you are both speaker and listener to prevent feedback.
|
764 |
-
<br/>
|
765 |
-
If max speakers reached, please duplicate the space <a target="_blank" rel="noopener noreferrer" href="https://huggingface.co/spaces/facebook/seamless-streaming?duplicate=true">here</a>.
|
766 |
-
In your duplicated space, join a room as speaker or listener (or both),
|
767 |
-
and share the room code to invite listeners.
|
768 |
-
<br/>
|
769 |
-
Check out the seamless_communication <a target="_blank" rel="noopener noreferrer" href="https://github.com/facebookresearch/seamless_communication/tree/main">README</a> for more information.
|
770 |
-
<br/>
|
771 |
-
SeamlessStreaming model is a research model and is not released
|
772 |
-
for production deployment. It is important to use a microphone with
|
773 |
-
noise cancellation (for e.g. a smartphone), otherwise you may see model hallucination on noises.
|
774 |
-
It works best if you pause every couple of sentences, or you may wish adjust the VAD threshold
|
775 |
-
in the model config. The real-time performance will degrade
|
776 |
-
if you try streaming multiple speakers at the same time.
|
777 |
-
</Typography>
|
778 |
-
</div>
|
779 |
-
</div>
|
780 |
<Stack spacing="22px" direction="column">
|
781 |
<Box>
|
782 |
<RoomConfig
|
@@ -848,6 +831,11 @@ export default function StreamingInterface() {
|
|
848 |
</Select>
|
849 |
</FormControl>
|
850 |
|
|
|
|
|
|
|
|
|
|
|
851 |
</Stack>
|
852 |
|
853 |
<Stack spacing={0.5}>
|
@@ -872,11 +860,7 @@ export default function StreamingInterface() {
|
|
872 |
value={targetLang ?? ''}>
|
873 |
{currentAgent?.targetLangs.map((langCode) => (
|
874 |
<MenuItem value={langCode} key={langCode}>
|
875 |
-
{
|
876 |
-
? `${getLanguageFromThreeLetterCode(
|
877 |
-
langCode,
|
878 |
-
)} (${langCode})`
|
879 |
-
: langCode}
|
880 |
</MenuItem>
|
881 |
))}
|
882 |
</Select>
|
@@ -984,9 +968,8 @@ export default function StreamingInterface() {
|
|
984 |
</RadioGroup>
|
985 |
</FormControl>
|
986 |
</Box>
|
987 |
-
|
988 |
-
|
989 |
-
<FormControl disabled={streamFixedConfigOptionsDisabled}>
|
990 |
<FormLabel>Options</FormLabel>
|
991 |
<FormControlLabel
|
992 |
control={
|
@@ -1003,7 +986,7 @@ export default function StreamingInterface() {
|
|
1003 |
}
|
1004 |
/>
|
1005 |
}
|
1006 |
-
label="Noise Suppression"
|
1007 |
/>
|
1008 |
<FormControlLabel
|
1009 |
control={
|
@@ -1020,7 +1003,7 @@ export default function StreamingInterface() {
|
|
1020 |
}
|
1021 |
/>
|
1022 |
}
|
1023 |
-
label="Echo Cancellation (
|
1024 |
/>
|
1025 |
<FormControlLabel
|
1026 |
control={
|
@@ -1031,34 +1014,12 @@ export default function StreamingInterface() {
|
|
1031 |
) => setServerDebugFlag(event.target.checked)}
|
1032 |
/>
|
1033 |
}
|
1034 |
-
label="
|
1035 |
/>
|
1036 |
</FormControl>
|
1037 |
</Box>
|
1038 |
</Stack>
|
1039 |
|
1040 |
-
{isSpeaker &&
|
1041 |
-
isListener &&
|
1042 |
-
inputSource === 'userMedia' &&
|
1043 |
-
!enableEchoCancellation &&
|
1044 |
-
gain !== 0 && (
|
1045 |
-
<div>
|
1046 |
-
<Alert severity="warning" icon={<HeadphonesIcon />}>
|
1047 |
-
Headphones required to prevent feedback.
|
1048 |
-
</Alert>
|
1049 |
-
</div>
|
1050 |
-
)}
|
1051 |
-
|
1052 |
-
{isSpeaker && enableEchoCancellation && (
|
1053 |
-
<div>
|
1054 |
-
<Alert severity="warning">
|
1055 |
-
We don't recommend using echo cancellation as it may
|
1056 |
-
distort the input audio. If possible, use headphones and
|
1057 |
-
disable echo cancellation instead.
|
1058 |
-
</Alert>
|
1059 |
-
</div>
|
1060 |
-
)}
|
1061 |
-
|
1062 |
<Stack direction="row" spacing={2}>
|
1063 |
{streamingStatus === 'stopped' ? (
|
1064 |
<Button
|
@@ -1120,13 +1081,7 @@ export default function StreamingInterface() {
|
|
1120 |
</Alert>
|
1121 |
</div>
|
1122 |
)}
|
1123 |
-
|
1124 |
-
<div>
|
1125 |
-
<Alert severity="error">
|
1126 |
-
{`Maximum number of speakers reached. Please try again at a later time.`}
|
1127 |
-
</Alert>
|
1128 |
-
</div>
|
1129 |
-
)}
|
1130 |
{serverState != null &&
|
1131 |
serverState.totalActiveTranscoders >=
|
1132 |
TOTAL_ACTIVE_TRANSCODER_WARNING_THRESHOLD && (
|
@@ -1141,7 +1096,7 @@ export default function StreamingInterface() {
|
|
1141 |
serverState.serverLock.clientID !== clientID && (
|
1142 |
<div>
|
1143 |
<Alert severity="warning">
|
1144 |
-
{`The server is currently locked. Priority will be given to that client when they are streaming, and your streaming session may be halted abruptly.`}
|
1145 |
</Alert>
|
1146 |
</div>
|
1147 |
)}
|
|
|
39 |
import createBufferedSpeechPlayer from './createBufferedSpeechPlayer';
|
40 |
import Checkbox from '@mui/material/Checkbox';
|
41 |
import Alert from '@mui/material/Alert';
|
42 |
+
import ISO6391 from 'iso-639-1';
|
43 |
import isScrolledToDocumentBottom from './isScrolledToDocumentBottom';
|
44 |
import Box from '@mui/material/Box';
|
45 |
import Slider from '@mui/material/Slider';
|
|
|
59 |
import debug from './debug';
|
60 |
import DebugSection from './DebugSection';
|
61 |
import Switch from '@mui/material/Switch';
|
62 |
+
import {Grid} from '@mui/material';
|
|
|
|
|
63 |
|
64 |
+
const AUDIO_STREAM_DEFAULTS: {
|
65 |
+
[key in SupportedInputSource]: BrowserAudioStreamConfig;
|
66 |
+
} = {
|
67 |
userMedia: {
|
68 |
echoCancellation: false,
|
69 |
noiseSuppression: true,
|
|
|
72 |
echoCancellation: false,
|
73 |
noiseSuppression: false,
|
74 |
},
|
75 |
+
};
|
76 |
|
77 |
async function requestUserMediaAudioStream(
|
78 |
+
config: BrowserAudioStreamConfig = {
|
79 |
+
echoCancellation: false,
|
80 |
+
noiseSuppression: true,
|
81 |
+
},
|
82 |
) {
|
83 |
const stream = await navigator.mediaDevices.getUserMedia({
|
84 |
audio: {...config, channelCount: 1},
|
|
|
91 |
}
|
92 |
|
93 |
async function requestDisplayMediaAudioStream(
|
94 |
+
config: BrowserAudioStreamConfig = {
|
95 |
+
echoCancellation: false,
|
96 |
+
noiseSuppression: false,
|
97 |
+
},
|
98 |
) {
|
99 |
const stream = await navigator.mediaDevices.getDisplayMedia({
|
100 |
audio: {...config, channelCount: 1},
|
|
|
159 |
useState<StreamingStatus>('stopped');
|
160 |
|
161 |
const isStreamConfiguredRef = useRef<boolean>(false);
|
|
|
162 |
|
163 |
const [outputMode, setOutputMode] = useState<SupportedOutputMode>('s2s&t');
|
164 |
const [inputSource, setInputSource] =
|
|
|
315 |
console.log('[configureStreamAsync] sending config', config);
|
316 |
|
317 |
socket.emit('configure_stream', config, (statusObject) => {
|
|
|
318 |
if (statusObject.status === 'ok') {
|
319 |
isStreamConfiguredRef.current = true;
|
320 |
console.debug(
|
|
|
759 |
</Typography>
|
760 |
</div>
|
761 |
</div>
|
762 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
763 |
<Stack spacing="22px" direction="column">
|
764 |
<Box>
|
765 |
<RoomConfig
|
|
|
831 |
</Select>
|
832 |
</FormControl>
|
833 |
|
834 |
+
<Typography variant="body2">
|
835 |
+
{`Supported Source Languages: ${
|
836 |
+
currentAgent?.sourceLangs.join(', ') ?? 'None'
|
837 |
+
}`}
|
838 |
+
</Typography>
|
839 |
</Stack>
|
840 |
|
841 |
<Stack spacing={0.5}>
|
|
|
860 |
value={targetLang ?? ''}>
|
861 |
{currentAgent?.targetLangs.map((langCode) => (
|
862 |
<MenuItem value={langCode} key={langCode}>
|
863 |
+
{`${ISO6391.getName(langCode)} (${langCode})`}
|
|
|
|
|
|
|
|
|
864 |
</MenuItem>
|
865 |
))}
|
866 |
</Select>
|
|
|
968 |
</RadioGroup>
|
969 |
</FormControl>
|
970 |
</Box>
|
971 |
+
<Box sx={{flex: 1}}>
|
972 |
+
<FormControl disabled={streamFixedConfigOptionsDisabled}>
|
|
|
973 |
<FormLabel>Options</FormLabel>
|
974 |
<FormControlLabel
|
975 |
control={
|
|
|
986 |
}
|
987 |
/>
|
988 |
}
|
989 |
+
label="Noise Suppression (Browser)"
|
990 |
/>
|
991 |
<FormControlLabel
|
992 |
control={
|
|
|
1003 |
}
|
1004 |
/>
|
1005 |
}
|
1006 |
+
label="Echo Cancellation (Browser)"
|
1007 |
/>
|
1008 |
<FormControlLabel
|
1009 |
control={
|
|
|
1014 |
) => setServerDebugFlag(event.target.checked)}
|
1015 |
/>
|
1016 |
}
|
1017 |
+
label="Server Debug Flag"
|
1018 |
/>
|
1019 |
</FormControl>
|
1020 |
</Box>
|
1021 |
</Stack>
|
1022 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1023 |
<Stack direction="row" spacing={2}>
|
1024 |
{streamingStatus === 'stopped' ? (
|
1025 |
<Button
|
|
|
1081 |
</Alert>
|
1082 |
</div>
|
1083 |
)}
|
1084 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
1085 |
{serverState != null &&
|
1086 |
serverState.totalActiveTranscoders >=
|
1087 |
TOTAL_ACTIVE_TRANSCODER_WARNING_THRESHOLD && (
|
|
|
1096 |
serverState.serverLock.clientID !== clientID && (
|
1097 |
<div>
|
1098 |
<Alert severity="warning">
|
1099 |
+
{`The server is currently locked by "${serverState.serverLock.name}". Priority will be given to that client when they are streaming, and your streaming session may be halted abruptly.`}
|
1100 |
</Alert>
|
1101 |
</div>
|
1102 |
)}
|
streaming-react-app/src/URLParams.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1 |
-
import {
|
2 |
-
import {
|
3 |
|
4 |
/**
|
5 |
* These are the URL parameters you can provide to the app to change its behavior.
|
|
|
1 |
+
import {getBooleanParamFlag, getStringParamFlag} from './getParamFlag';
|
2 |
+
import {URLParamsObject} from './types/URLParamsTypes';
|
3 |
|
4 |
/**
|
5 |
* These are the URL parameters you can provide to the app to change its behavior.
|
streaming-react-app/src/languageLookup.ts
DELETED
@@ -1,119 +0,0 @@
|
|
1 |
-
const LANG3_TO_NAME = {
|
2 |
-
afr: 'afrikaans',
|
3 |
-
amh: 'amharic',
|
4 |
-
arb: 'arabic',
|
5 |
-
asm: 'assamese',
|
6 |
-
azj: 'azerbaijani',
|
7 |
-
bak: 'bashkir',
|
8 |
-
bel: 'belarusian',
|
9 |
-
ben: 'bengali',
|
10 |
-
bod: 'tibetan',
|
11 |
-
bos: 'bosnian',
|
12 |
-
bre: 'breton',
|
13 |
-
bul: 'bulgarian',
|
14 |
-
cat: 'catalan',
|
15 |
-
ces: 'czech',
|
16 |
-
cmn: 'chinese',
|
17 |
-
cym: 'welsh',
|
18 |
-
dan: 'danish',
|
19 |
-
deu: 'german',
|
20 |
-
ell: 'greek',
|
21 |
-
eng: 'english',
|
22 |
-
est: 'estonian',
|
23 |
-
eus: 'basque',
|
24 |
-
fao: 'faroese',
|
25 |
-
fin: 'finnish',
|
26 |
-
fra: 'french',
|
27 |
-
glg: 'galician',
|
28 |
-
guj: 'gujarati',
|
29 |
-
hat: 'haitian creole',
|
30 |
-
hau: 'hausa',
|
31 |
-
haw: 'hawaiian',
|
32 |
-
heb: 'hebrew',
|
33 |
-
hin: 'hindi',
|
34 |
-
hrv: 'croatian',
|
35 |
-
hun: 'hungarian',
|
36 |
-
hye: 'armenian',
|
37 |
-
ind: 'indonesian',
|
38 |
-
isl: 'icelandic',
|
39 |
-
ita: 'italian',
|
40 |
-
jav: 'javanese',
|
41 |
-
jpn: 'japanese',
|
42 |
-
kan: 'kannada',
|
43 |
-
kat: 'georgian',
|
44 |
-
kaz: 'kazakh',
|
45 |
-
khk: 'mongolian',
|
46 |
-
khm: 'khmer',
|
47 |
-
kor: 'korean',
|
48 |
-
lao: 'lao',
|
49 |
-
lat: 'latin',
|
50 |
-
lin: 'lingala',
|
51 |
-
lit: 'lithuanian',
|
52 |
-
ltz: 'luxembourgish',
|
53 |
-
lvs: 'latvian',
|
54 |
-
mal: 'malayalam',
|
55 |
-
mar: 'marathi',
|
56 |
-
mkd: 'macedonian',
|
57 |
-
mlg: 'malagasy',
|
58 |
-
mlt: 'maltese',
|
59 |
-
mri: 'maori',
|
60 |
-
mya: 'myanmar',
|
61 |
-
nld: 'dutch',
|
62 |
-
nno: 'nynorsk',
|
63 |
-
nob: 'norwegian',
|
64 |
-
npi: 'nepali',
|
65 |
-
oci: 'occitan',
|
66 |
-
pan: 'punjabi',
|
67 |
-
pbt: 'pashto',
|
68 |
-
pes: 'persian',
|
69 |
-
pol: 'polish',
|
70 |
-
por: 'portuguese',
|
71 |
-
ron: 'romanian',
|
72 |
-
rus: 'russian',
|
73 |
-
san: 'sanskrit',
|
74 |
-
sin: 'sinhala',
|
75 |
-
slk: 'slovak',
|
76 |
-
slv: 'slovenian',
|
77 |
-
sna: 'shona',
|
78 |
-
snd: 'sindhi',
|
79 |
-
som: 'somali',
|
80 |
-
spa: 'spanish',
|
81 |
-
sqi: 'albanian',
|
82 |
-
srp: 'serbian',
|
83 |
-
sun: 'sundanese',
|
84 |
-
swe: 'swedish',
|
85 |
-
swh: 'swahili',
|
86 |
-
tam: 'tamil',
|
87 |
-
tat: 'tatar',
|
88 |
-
tel: 'telugu',
|
89 |
-
tgk: 'tajik',
|
90 |
-
tgl: 'tagalog',
|
91 |
-
tha: 'thai',
|
92 |
-
tuk: 'turkmen',
|
93 |
-
tur: 'turkish',
|
94 |
-
ukr: 'ukrainian',
|
95 |
-
urd: 'urdu',
|
96 |
-
uzn: 'uzbek',
|
97 |
-
vie: 'vietnamese',
|
98 |
-
yid: 'yiddish',
|
99 |
-
yor: 'yoruba',
|
100 |
-
zlm: 'malay',
|
101 |
-
};
|
102 |
-
|
103 |
-
export function getLanguageFromThreeLetterCode(
|
104 |
-
lang3Code: string,
|
105 |
-
): string | null {
|
106 |
-
try {
|
107 |
-
const name = LANG3_TO_NAME[lang3Code] ?? null;
|
108 |
-
if (name == null) {
|
109 |
-
return null;
|
110 |
-
}
|
111 |
-
const capitalizedWords = name
|
112 |
-
.split(' ')
|
113 |
-
.map((word: string) => word[0].toUpperCase() + word.slice(1));
|
114 |
-
return capitalizedWords.join(' ');
|
115 |
-
} catch (e) {
|
116 |
-
console.warn(`Unable to get language name for code ${lang3Code}: ${e}`);
|
117 |
-
}
|
118 |
-
return null;
|
119 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
streaming-react-app/src/types/StreamingTypes.ts
CHANGED
@@ -1,3 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
interface ServerTranslationDataBase {
|
2 |
eos: boolean;
|
3 |
event: string;
|
@@ -26,6 +36,7 @@ export type AgentCapabilities = {
|
|
26 |
name: string;
|
27 |
description: string;
|
28 |
modalities: Array<OutputModalitiesBase>;
|
|
|
29 |
targetLangs: Array<string>;
|
30 |
dynamicParams: Array<DynamicParams>;
|
31 |
};
|
@@ -38,10 +49,10 @@ export const SUPPORTED_OUTPUT_MODES: Array<{
|
|
38 |
value: (typeof SUPPORTED_OUTPUT_MODE_VALUES)[number];
|
39 |
label: string;
|
40 |
}> = [
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
|
46 |
export const SUPPORTED_INPUT_SOURCE_VALUES = [
|
47 |
'userMedia',
|
@@ -56,13 +67,14 @@ export const SUPPORTED_INPUT_SOURCES: Array<{
|
|
56 |
label: string;
|
57 |
}> = [
|
58 |
{value: 'userMedia', label: 'Microphone'},
|
59 |
-
{value: 'displayMedia', label: 'Browser Tab
|
60 |
];
|
61 |
|
62 |
export type StartStreamEventConfig = {
|
63 |
event: 'config';
|
64 |
rate: number;
|
65 |
model_name: string;
|
|
|
66 |
debug: boolean;
|
67 |
async_processing: boolean;
|
68 |
model_type: SupportedOutputMode;
|
@@ -72,7 +84,6 @@ export type StartStreamEventConfig = {
|
|
72 |
export interface BrowserAudioStreamConfig {
|
73 |
echoCancellation: boolean;
|
74 |
noiseSuppression: boolean;
|
75 |
-
echoCancellation: boolean;
|
76 |
}
|
77 |
|
78 |
export interface ServerStateItem {
|
@@ -89,7 +100,7 @@ export type ServerLockObject = {
|
|
89 |
export type ServerState = ServerStateItem & {
|
90 |
agentsCapabilities: Array<AgentCapabilities>;
|
91 |
statusByRoom: {
|
92 |
-
[key: string]: {
|
93 |
};
|
94 |
totalActiveConnections: number;
|
95 |
totalActiveTranscoders: number;
|
@@ -112,7 +123,9 @@ export type TranslationSentences = Array<string>;
|
|
112 |
|
113 |
export type DynamicConfig = {
|
114 |
// targetLanguage: a 3-letter string representing the desired output language.
|
|
|
115 |
targetLanguage: string;
|
|
|
116 |
expressive: boolean | null;
|
117 |
};
|
118 |
|
|
|
1 |
+
export const SUPPORTED_LANGUAGE_CODES = ['en-US', 'es-ES'] as const;
|
2 |
+
|
3 |
+
export type SupportedLanguageCode = (typeof SUPPORTED_LANGUAGE_CODES)[number];
|
4 |
+
|
5 |
+
export type StartStreamingData = {
|
6 |
+
inputLang: SupportedLanguageCode;
|
7 |
+
outputLang: SupportedLanguageCode;
|
8 |
+
outputMode: SupportedOutputMode;
|
9 |
+
};
|
10 |
+
|
11 |
interface ServerTranslationDataBase {
|
12 |
eos: boolean;
|
13 |
event: string;
|
|
|
36 |
name: string;
|
37 |
description: string;
|
38 |
modalities: Array<OutputModalitiesBase>;
|
39 |
+
sourceLangs: Array<string>;
|
40 |
targetLangs: Array<string>;
|
41 |
dynamicParams: Array<DynamicParams>;
|
42 |
};
|
|
|
49 |
value: (typeof SUPPORTED_OUTPUT_MODE_VALUES)[number];
|
50 |
label: string;
|
51 |
}> = [
|
52 |
+
{value: 's2s&t', label: 'Text & Speech'},
|
53 |
+
{value: 's2t', label: 'Text'},
|
54 |
+
{value: 's2s', label: 'Speech'},
|
55 |
+
];
|
56 |
|
57 |
export const SUPPORTED_INPUT_SOURCE_VALUES = [
|
58 |
'userMedia',
|
|
|
67 |
label: string;
|
68 |
}> = [
|
69 |
{value: 'userMedia', label: 'Microphone'},
|
70 |
+
{value: 'displayMedia', label: 'Browser Tab'},
|
71 |
];
|
72 |
|
73 |
export type StartStreamEventConfig = {
|
74 |
event: 'config';
|
75 |
rate: number;
|
76 |
model_name: string;
|
77 |
+
// source_language: SupportedLanguageCode;
|
78 |
debug: boolean;
|
79 |
async_processing: boolean;
|
80 |
model_type: SupportedOutputMode;
|
|
|
84 |
export interface BrowserAudioStreamConfig {
|
85 |
echoCancellation: boolean;
|
86 |
noiseSuppression: boolean;
|
|
|
87 |
}
|
88 |
|
89 |
export interface ServerStateItem {
|
|
|
100 |
export type ServerState = ServerStateItem & {
|
101 |
agentsCapabilities: Array<AgentCapabilities>;
|
102 |
statusByRoom: {
|
103 |
+
[key: string]: {activeConnections: number; activeTranscoders: number};
|
104 |
};
|
105 |
totalActiveConnections: number;
|
106 |
totalActiveTranscoders: number;
|
|
|
123 |
|
124 |
export type DynamicConfig = {
|
125 |
// targetLanguage: a 3-letter string representing the desired output language.
|
126 |
+
// Supported languages are provided by the agent capabilities config
|
127 |
targetLanguage: string;
|
128 |
+
|
129 |
expressive: boolean | null;
|
130 |
};
|
131 |
|
streaming-react-app/src/types/URLParamsTypes.ts
CHANGED
@@ -7,10 +7,10 @@ export type URLParamsObject = {
|
|
7 |
serverURL: string | null;
|
8 |
skipARIntro: boolean;
|
9 |
ARTranscriptionType:
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
};
|
15 |
|
16 |
export type URLParamNames = keyof URLParamsObject;
|
|
|
7 |
serverURL: string | null;
|
8 |
skipARIntro: boolean;
|
9 |
ARTranscriptionType:
|
10 |
+
| 'single_block'
|
11 |
+
| 'lines'
|
12 |
+
| 'lines_with_background'
|
13 |
+
| string;
|
14 |
};
|
15 |
|
16 |
export type URLParamNames = keyof URLParamsObject;
|
streaming-react-app/vite.config.ts
CHANGED
@@ -1,8 +1,8 @@
|
|
1 |
-
import {
|
2 |
import react from '@vitejs/plugin-react';
|
3 |
|
4 |
// https://vitejs.dev/config/
|
5 |
-
export default defineConfig(({
|
6 |
let define = {};
|
7 |
if (command === 'serve') {
|
8 |
define = {
|
@@ -12,13 +12,5 @@ export default defineConfig(({ command }) => {
|
|
12 |
return {
|
13 |
plugins: [react()],
|
14 |
define: define,
|
15 |
-
|
16 |
-
proxy: {
|
17 |
-
'/ws': {
|
18 |
-
target: 'ws://localhost:7860',
|
19 |
-
ws: true
|
20 |
-
}
|
21 |
-
},
|
22 |
-
},
|
23 |
-
}
|
24 |
});
|
|
|
1 |
+
import {defineConfig} from 'vite';
|
2 |
import react from '@vitejs/plugin-react';
|
3 |
|
4 |
// https://vitejs.dev/config/
|
5 |
+
export default defineConfig(({command}) => {
|
6 |
let define = {};
|
7 |
if (command === 'serve') {
|
8 |
define = {
|
|
|
12 |
return {
|
13 |
plugins: [react()],
|
14 |
define: define,
|
15 |
+
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
});
|
streaming-react-app/yarn.lock
CHANGED
@@ -61,7 +61,7 @@
|
|
61 |
resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz"
|
62 |
integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==
|
63 |
|
64 |
-
"@babel/core@^7.22.9":
|
65 |
version "7.22.10"
|
66 |
resolved "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz"
|
67 |
integrity sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==
|
@@ -298,7 +298,7 @@
|
|
298 |
resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz"
|
299 |
integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==
|
300 |
|
301 |
-
"@emotion/react@11.11.1":
|
302 |
version "11.11.1"
|
303 |
resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz"
|
304 |
integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==
|
@@ -328,7 +328,7 @@
|
|
328 |
resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz"
|
329 |
integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==
|
330 |
|
331 |
-
"@emotion/styled@11.11.0":
|
332 |
version "11.11.0"
|
333 |
resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz"
|
334 |
integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==
|
@@ -360,116 +360,11 @@
|
|
360 |
resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz"
|
361 |
integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==
|
362 |
|
363 |
-
"@esbuild/android-arm64@0.18.20":
|
364 |
-
version "0.18.20"
|
365 |
-
resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.18.20.tgz#984b4f9c8d0377443cc2dfcef266d02244593622"
|
366 |
-
integrity sha512-Nz4rJcchGDtENV0eMKUNa6L12zz2zBDXuhj/Vjh18zGqB44Bi7MBMSXjgunJgjRhCmKOjnPuZp4Mb6OKqtMHLQ==
|
367 |
-
|
368 |
-
"@esbuild/android-arm@0.18.20":
|
369 |
-
version "0.18.20"
|
370 |
-
resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.18.20.tgz#fedb265bc3a589c84cc11f810804f234947c3682"
|
371 |
-
integrity sha512-fyi7TDI/ijKKNZTUJAQqiG5T7YjJXgnzkURqmGj13C6dCqckZBLdl4h7bkhHt/t0WP+zO9/zwroDvANaOqO5Sw==
|
372 |
-
|
373 |
-
"@esbuild/android-x64@0.18.20":
|
374 |
-
version "0.18.20"
|
375 |
-
resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.18.20.tgz#35cf419c4cfc8babe8893d296cd990e9e9f756f2"
|
376 |
-
integrity sha512-8GDdlePJA8D6zlZYJV/jnrRAi6rOiNaCC/JclcXpB+KIuvfBN4owLtgzY2bsxnx666XjJx2kDPUmnTtR8qKQUg==
|
377 |
-
|
378 |
-
"@esbuild/darwin-arm64@0.18.20":
|
379 |
-
version "0.18.20"
|
380 |
-
resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.18.20.tgz#08172cbeccf95fbc383399a7f39cfbddaeb0d7c1"
|
381 |
-
integrity sha512-bxRHW5kHU38zS2lPTPOyuyTm+S+eobPUnTNkdJEfAddYgEcll4xkT8DB9d2008DtTbl7uJag2HuE5NZAZgnNEA==
|
382 |
-
|
383 |
-
"@esbuild/darwin-x64@0.18.20":
|
384 |
-
version "0.18.20"
|
385 |
-
resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.18.20.tgz#d70d5790d8bf475556b67d0f8b7c5bdff053d85d"
|
386 |
-
integrity sha512-pc5gxlMDxzm513qPGbCbDukOdsGtKhfxD1zJKXjCCcU7ju50O7MeAZ8c4krSJcOIJGFR+qx21yMMVYwiQvyTyQ==
|
387 |
-
|
388 |
-
"@esbuild/freebsd-arm64@0.18.20":
|
389 |
-
version "0.18.20"
|
390 |
-
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.20.tgz#98755cd12707f93f210e2494d6a4b51b96977f54"
|
391 |
-
integrity sha512-yqDQHy4QHevpMAaxhhIwYPMv1NECwOvIpGCZkECn8w2WFHXjEwrBn3CeNIYsibZ/iZEUemj++M26W3cNR5h+Tw==
|
392 |
-
|
393 |
-
"@esbuild/freebsd-x64@0.18.20":
|
394 |
-
version "0.18.20"
|
395 |
-
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.18.20.tgz#c1eb2bff03915f87c29cece4c1a7fa1f423b066e"
|
396 |
-
integrity sha512-tgWRPPuQsd3RmBZwarGVHZQvtzfEBOreNuxEMKFcd5DaDn2PbBxfwLcj4+aenoh7ctXcbXmOQIn8HI6mCSw5MQ==
|
397 |
-
|
398 |
-
"@esbuild/linux-arm64@0.18.20":
|
399 |
-
version "0.18.20"
|
400 |
-
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.18.20.tgz#bad4238bd8f4fc25b5a021280c770ab5fc3a02a0"
|
401 |
-
integrity sha512-2YbscF+UL7SQAVIpnWvYwM+3LskyDmPhe31pE7/aoTMFKKzIc9lLbyGUpmmb8a8AixOL61sQ/mFh3jEjHYFvdA==
|
402 |
-
|
403 |
-
"@esbuild/linux-arm@0.18.20":
|
404 |
-
version "0.18.20"
|
405 |
-
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.18.20.tgz#3e617c61f33508a27150ee417543c8ab5acc73b0"
|
406 |
-
integrity sha512-/5bHkMWnq1EgKr1V+Ybz3s1hWXok7mDFUMQ4cG10AfW3wL02PSZi5kFpYKrptDsgb2WAJIvRcDm+qIvXf/apvg==
|
407 |
-
|
408 |
-
"@esbuild/linux-ia32@0.18.20":
|
409 |
-
version "0.18.20"
|
410 |
-
resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.18.20.tgz#699391cccba9aee6019b7f9892eb99219f1570a7"
|
411 |
-
integrity sha512-P4etWwq6IsReT0E1KHU40bOnzMHoH73aXp96Fs8TIT6z9Hu8G6+0SHSw9i2isWrD2nbx2qo5yUqACgdfVGx7TA==
|
412 |
-
|
413 |
-
"@esbuild/linux-loong64@0.18.20":
|
414 |
-
version "0.18.20"
|
415 |
-
resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.18.20.tgz#e6fccb7aac178dd2ffb9860465ac89d7f23b977d"
|
416 |
-
integrity sha512-nXW8nqBTrOpDLPgPY9uV+/1DjxoQ7DoB2N8eocyq8I9XuqJ7BiAMDMf9n1xZM9TgW0J8zrquIb/A7s3BJv7rjg==
|
417 |
-
|
418 |
-
"@esbuild/linux-mips64el@0.18.20":
|
419 |
-
version "0.18.20"
|
420 |
-
resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.18.20.tgz#eeff3a937de9c2310de30622a957ad1bd9183231"
|
421 |
-
integrity sha512-d5NeaXZcHp8PzYy5VnXV3VSd2D328Zb+9dEq5HE6bw6+N86JVPExrA6O68OPwobntbNJ0pzCpUFZTo3w0GyetQ==
|
422 |
-
|
423 |
-
"@esbuild/linux-ppc64@0.18.20":
|
424 |
-
version "0.18.20"
|
425 |
-
resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.18.20.tgz#2f7156bde20b01527993e6881435ad79ba9599fb"
|
426 |
-
integrity sha512-WHPyeScRNcmANnLQkq6AfyXRFr5D6N2sKgkFo2FqguP44Nw2eyDlbTdZwd9GYk98DZG9QItIiTlFLHJHjxP3FA==
|
427 |
-
|
428 |
-
"@esbuild/linux-riscv64@0.18.20":
|
429 |
-
version "0.18.20"
|
430 |
-
resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.18.20.tgz#6628389f210123d8b4743045af8caa7d4ddfc7a6"
|
431 |
-
integrity sha512-WSxo6h5ecI5XH34KC7w5veNnKkju3zBRLEQNY7mv5mtBmrP/MjNBCAlsM2u5hDBlS3NGcTQpoBvRzqBcRtpq1A==
|
432 |
-
|
433 |
-
"@esbuild/linux-s390x@0.18.20":
|
434 |
-
version "0.18.20"
|
435 |
-
resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.18.20.tgz#255e81fb289b101026131858ab99fba63dcf0071"
|
436 |
-
integrity sha512-+8231GMs3mAEth6Ja1iK0a1sQ3ohfcpzpRLH8uuc5/KVDFneH6jtAJLFGafpzpMRO6DzJ6AvXKze9LfFMrIHVQ==
|
437 |
-
|
438 |
"@esbuild/linux-x64@0.18.20":
|
439 |
version "0.18.20"
|
440 |
resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz"
|
441 |
integrity sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==
|
442 |
|
443 |
-
"@esbuild/netbsd-x64@0.18.20":
|
444 |
-
version "0.18.20"
|
445 |
-
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.18.20.tgz#30e8cd8a3dded63975e2df2438ca109601ebe0d1"
|
446 |
-
integrity sha512-iO1c++VP6xUBUmltHZoMtCUdPlnPGdBom6IrO4gyKPFFVBKioIImVooR5I83nTew5UOYrk3gIJhbZh8X44y06A==
|
447 |
-
|
448 |
-
"@esbuild/openbsd-x64@0.18.20":
|
449 |
-
version "0.18.20"
|
450 |
-
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.18.20.tgz#7812af31b205055874c8082ea9cf9ab0da6217ae"
|
451 |
-
integrity sha512-e5e4YSsuQfX4cxcygw/UCPIEP6wbIL+se3sxPdCiMbFLBWu0eiZOJ7WoD+ptCLrmjZBK1Wk7I6D/I3NglUGOxg==
|
452 |
-
|
453 |
-
"@esbuild/sunos-x64@0.18.20":
|
454 |
-
version "0.18.20"
|
455 |
-
resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.18.20.tgz#d5c275c3b4e73c9b0ecd38d1ca62c020f887ab9d"
|
456 |
-
integrity sha512-kDbFRFp0YpTQVVrqUd5FTYmWo45zGaXe0X8E1G/LKFC0v8x0vWrhOWSLITcCn63lmZIxfOMXtCfti/RxN/0wnQ==
|
457 |
-
|
458 |
-
"@esbuild/win32-arm64@0.18.20":
|
459 |
-
version "0.18.20"
|
460 |
-
resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.18.20.tgz#73bc7f5a9f8a77805f357fab97f290d0e4820ac9"
|
461 |
-
integrity sha512-ddYFR6ItYgoaq4v4JmQQaAI5s7npztfV4Ag6NrhiaW0RrnOXqBkgwZLofVTlq1daVTQNhtI5oieTvkRPfZrePg==
|
462 |
-
|
463 |
-
"@esbuild/win32-ia32@0.18.20":
|
464 |
-
version "0.18.20"
|
465 |
-
resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.18.20.tgz#ec93cbf0ef1085cc12e71e0d661d20569ff42102"
|
466 |
-
integrity sha512-Wv7QBi3ID/rROT08SABTS7eV4hX26sVduqDOTe1MvGMjNd3EjOz4b7zeexIR62GTIEKrfJXKL9LFxTYgkyeu7g==
|
467 |
-
|
468 |
-
"@esbuild/win32-x64@0.18.20":
|
469 |
-
version "0.18.20"
|
470 |
-
resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.18.20.tgz#786c5f41f043b07afb1af37683d7c33668858f6d"
|
471 |
-
integrity sha512-kTdfRcSiDfQca/y9QIkng02avJ+NCaQvrMejlsB3RRv5sE9rRoeBPISaZpKxHELzRxZyLvNts1P27W3wV+8geQ==
|
472 |
-
|
473 |
"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0":
|
474 |
version "4.4.0"
|
475 |
resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz"
|
@@ -584,7 +479,7 @@
|
|
584 |
dependencies:
|
585 |
"@babel/runtime" "^7.22.6"
|
586 |
|
587 |
-
"@mui/material@5.14.5":
|
588 |
version "5.14.5"
|
589 |
resolved "https://registry.npmjs.org/@mui/material/-/material-5.14.5.tgz"
|
590 |
integrity sha512-4qa4GMfuZH0Ai3mttk5ccXP8a3sf7aPlAJwyMrUSz6h9hPri6BPou94zeu3rENhhmKLby9S/W1y+pmficy8JKA==
|
@@ -659,7 +554,7 @@
|
|
659 |
"@nodelib/fs.stat" "2.0.5"
|
660 |
run-parallel "^1.1.9"
|
661 |
|
662 |
-
"@nodelib/fs.stat
|
663 |
version "2.0.5"
|
664 |
resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz"
|
665 |
integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
|
@@ -752,7 +647,7 @@
|
|
752 |
utility-types "^3.10.0"
|
753 |
zustand "^3.5.13"
|
754 |
|
755 |
-
"@react-three/fiber@^8.14.1":
|
756 |
version "8.14.1"
|
757 |
resolved "https://registry.npmjs.org/@react-three/fiber/-/fiber-8.14.1.tgz"
|
758 |
integrity sha512-Ky/FiCyJiyaI8bd+vckzgkHgKDSQDOcSSUVFOHCuCO9XOLb7Ebs6lof2hPpFa1HkaeE5ZIbTWIprvN0QqdPF0w==
|
@@ -798,7 +693,7 @@
|
|
798 |
resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz"
|
799 |
integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
|
800 |
|
801 |
-
"@types/node@^20.5.3":
|
802 |
version "20.5.3"
|
803 |
resolved "https://registry.npmjs.org/@types/node/-/node-20.5.3.tgz"
|
804 |
integrity sha512-ITI7rbWczR8a/S6qjAW7DMqxqFMjjTo61qZVWJ1ubPvbIQsL5D/TvwjYEalM8Kthpe3hTzOGrF2TGbAu2uyqeA==
|
@@ -853,7 +748,7 @@
|
|
853 |
dependencies:
|
854 |
"@types/react" "*"
|
855 |
|
856 |
-
"@types/react@*", "@types/react@^18.2.15":
|
857 |
version "18.2.20"
|
858 |
resolved "https://registry.npmjs.org/@types/react/-/react-18.2.20.tgz"
|
859 |
integrity sha512-WKNtmsLWJM/3D5mG4U84cysVY31ivmyw85dE84fOCk5Hx78wezB/XEjVPWl2JTZ5FkEeaTJf+VgUAUn3PE7Isw==
|
@@ -872,6 +767,21 @@
|
|
872 |
resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz"
|
873 |
integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==
|
874 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
875 |
"@types/uuid@^9.0.2":
|
876 |
version "9.0.2"
|
877 |
resolved "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.2.tgz"
|
@@ -899,7 +809,7 @@
|
|
899 |
semver "^7.5.4"
|
900 |
ts-api-utils "^1.0.1"
|
901 |
|
902 |
-
"@typescript-eslint/parser@^6.0.0":
|
903 |
version "6.4.0"
|
904 |
resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.4.0.tgz"
|
905 |
integrity sha512-I1Ah1irl033uxjxO9Xql7+biL3YD7w9IU8zF+xlzD/YxY6a4b7DYA08PXUUCbm2sEljwJF6ERFy2kTGAGcNilg==
|
@@ -994,7 +904,7 @@ acorn-jsx@^5.3.2:
|
|
994 |
resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz"
|
995 |
integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
|
996 |
|
997 |
-
acorn@^8.9.0:
|
998 |
version "8.10.0"
|
999 |
resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz"
|
1000 |
integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==
|
@@ -1032,7 +942,14 @@ ansi-styles@^3.2.1:
|
|
1032 |
dependencies:
|
1033 |
color-convert "^1.9.0"
|
1034 |
|
1035 |
-
ansi-styles@^4.0.0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1036 |
version "4.3.0"
|
1037 |
resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
|
1038 |
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
|
@@ -1116,7 +1033,7 @@ braces@^3.0.2:
|
|
1116 |
dependencies:
|
1117 |
fill-range "^7.0.1"
|
1118 |
|
1119 |
-
browserslist@^4.21.9:
|
1120 |
version "4.21.10"
|
1121 |
resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz"
|
1122 |
integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==
|
@@ -1167,7 +1084,15 @@ chalk@^2.4.2:
|
|
1167 |
escape-string-regexp "^1.0.5"
|
1168 |
supports-color "^5.3.0"
|
1169 |
|
1170 |
-
chalk@^4.0.0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1171 |
version "4.1.2"
|
1172 |
resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
|
1173 |
integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
|
@@ -1203,16 +1128,16 @@ color-convert@^2.0.1:
|
|
1203 |
dependencies:
|
1204 |
color-name "~1.1.4"
|
1205 |
|
1206 |
-
color-name@1.1.3:
|
1207 |
-
version "1.1.3"
|
1208 |
-
resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz"
|
1209 |
-
integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
|
1210 |
-
|
1211 |
color-name@~1.1.4:
|
1212 |
version "1.1.4"
|
1213 |
resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
|
1214 |
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
|
1215 |
|
|
|
|
|
|
|
|
|
|
|
1216 |
concat-map@0.0.1:
|
1217 |
version "0.0.1"
|
1218 |
resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
|
@@ -1427,7 +1352,7 @@ eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4
|
|
1427 |
resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz"
|
1428 |
integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
|
1429 |
|
1430 |
-
eslint@^8.45.0:
|
1431 |
version "8.47.0"
|
1432 |
resolved "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz"
|
1433 |
integrity sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==
|
@@ -1546,7 +1471,7 @@ fastq@^1.6.0:
|
|
1546 |
dependencies:
|
1547 |
reusify "^1.0.4"
|
1548 |
|
1549 |
-
fflate@^0.6.9:
|
1550 |
version "0.6.10"
|
1551 |
resolved "https://registry.npmjs.org/fflate/-/fflate-0.6.10.tgz"
|
1552 |
integrity sha512-IQrh3lEPM93wVCEczc9SaAOvkmcoQn/G8Bo1e8ZPlY3X3bnAxWaBdvTdvM1hP62iZp0BXWDy4vTAy4fF0+Dlpg==
|
@@ -1603,11 +1528,6 @@ fs.realpath@^1.0.0:
|
|
1603 |
resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
|
1604 |
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
|
1605 |
|
1606 |
-
fsevents@~2.3.2:
|
1607 |
-
version "2.3.3"
|
1608 |
-
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
|
1609 |
-
integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
|
1610 |
-
|
1611 |
function-bind@^1.1.1:
|
1612 |
version "1.1.1"
|
1613 |
resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz"
|
@@ -1741,7 +1661,7 @@ hoist-non-react-statics@^3.3.1:
|
|
1741 |
dependencies:
|
1742 |
react-is "^16.7.0"
|
1743 |
|
1744 |
-
ieee754
|
1745 |
version "1.1.13"
|
1746 |
resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz"
|
1747 |
integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==
|
@@ -1772,7 +1692,7 @@ inflight@^1.0.4:
|
|
1772 |
once "^1.3.0"
|
1773 |
wrappy "1"
|
1774 |
|
1775 |
-
inherits
|
1776 |
version "2.0.4"
|
1777 |
resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz"
|
1778 |
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
|
@@ -1853,6 +1773,11 @@ isexe@^2.0.0:
|
|
1853 |
resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz"
|
1854 |
integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
|
1855 |
|
|
|
|
|
|
|
|
|
|
|
1856 |
isomorphic-unfetch@^3.0.0:
|
1857 |
version "3.1.0"
|
1858 |
resolved "https://registry.npmjs.org/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz"
|
@@ -1965,7 +1890,7 @@ lodash.pick@^4.4.0:
|
|
1965 |
resolved "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz"
|
1966 |
integrity sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==
|
1967 |
|
1968 |
-
lodash
|
1969 |
version "4.17.21"
|
1970 |
resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
|
1971 |
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
|
@@ -2006,6 +1931,11 @@ meshline@^3.1.6:
|
|
2006 |
resolved "https://registry.npmjs.org/meshline/-/meshline-3.1.6.tgz"
|
2007 |
integrity sha512-8JZJOdaL5oz3PI/upG8JvP/5FfzYUOhrkJ8np/WKvXzl0/PZ2V9pqTvCIjSKv+w9ccg2xb+yyBhXAwt6ier3ug==
|
2008 |
|
|
|
|
|
|
|
|
|
|
|
2009 |
micromatch@^4.0.4:
|
2010 |
version "4.0.5"
|
2011 |
resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz"
|
@@ -2179,16 +2109,16 @@ prop-types@^15.6.0, prop-types@^15.6.2, prop-types@^15.8.1:
|
|
2179 |
object-assign "^4.1.1"
|
2180 |
react-is "^16.13.1"
|
2181 |
|
2182 |
-
punycode@1.3.2:
|
2183 |
-
version "1.3.2"
|
2184 |
-
resolved "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz"
|
2185 |
-
integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==
|
2186 |
-
|
2187 |
punycode@^2.1.0:
|
2188 |
version "2.3.0"
|
2189 |
resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz"
|
2190 |
integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
|
2191 |
|
|
|
|
|
|
|
|
|
|
|
2192 |
querystring@0.2.0:
|
2193 |
version "0.2.0"
|
2194 |
resolved "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz"
|
@@ -2206,7 +2136,7 @@ react-composer@^5.0.3:
|
|
2206 |
dependencies:
|
2207 |
prop-types "^15.6.0"
|
2208 |
|
2209 |
-
react-dom@^18.2.0:
|
2210 |
version "18.2.0"
|
2211 |
resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz"
|
2212 |
integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==
|
@@ -2219,7 +2149,12 @@ react-google-charts@^4.0.1:
|
|
2219 |
resolved "https://registry.npmjs.org/react-google-charts/-/react-google-charts-4.0.1.tgz"
|
2220 |
integrity sha512-V/hcMcNuBgD5w49BYTUDye+bUKaPmsU5vy/9W/Nj2xEeGn+6/AuH9IvBkbDcNBsY00cV9OeexdmgfI5RFHgsXQ==
|
2221 |
|
2222 |
-
react-is@^16.13.1
|
|
|
|
|
|
|
|
|
|
|
2223 |
version "16.13.1"
|
2224 |
resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz"
|
2225 |
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
|
@@ -2264,7 +2199,7 @@ react-use-measure@^2.1.1:
|
|
2264 |
dependencies:
|
2265 |
debounce "^1.2.1"
|
2266 |
|
2267 |
-
react@^18.2.0:
|
2268 |
version "18.2.0"
|
2269 |
resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz"
|
2270 |
integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==
|
@@ -2333,7 +2268,7 @@ rxjs@^7.8.1:
|
|
2333 |
dependencies:
|
2334 |
tslib "^2.1.0"
|
2335 |
|
2336 |
-
sax
|
2337 |
version "1.2.1"
|
2338 |
resolved "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz"
|
2339 |
integrity sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==
|
@@ -2522,7 +2457,7 @@ three-stdlib@^2.21.1, three-stdlib@^2.25.1:
|
|
2522 |
potpack "^1.0.1"
|
2523 |
zstddec "^0.0.2"
|
2524 |
|
2525 |
-
three@^0.156.1:
|
2526 |
version "0.156.1"
|
2527 |
resolved "https://registry.npmjs.org/three/-/three-0.156.1.tgz"
|
2528 |
integrity sha512-kP7H0FK9d/k6t/XvQ9FO6i+QrePoDcNhwl0I02+wmUJRNSLCUIDMcfObnzQvxb37/0Uc9TDT0T1HgsRRrO6SYQ==
|
@@ -2584,7 +2519,17 @@ tslib@^1.11.1:
|
|
2584 |
resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
|
2585 |
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
|
2586 |
|
2587 |
-
tslib@^2.1.0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2588 |
version "2.6.2"
|
2589 |
resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
|
2590 |
integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==
|
@@ -2601,7 +2546,7 @@ type-fest@^0.20.2:
|
|
2601 |
resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz"
|
2602 |
integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
|
2603 |
|
2604 |
-
typescript@5.1.6:
|
2605 |
version "5.1.6"
|
2606 |
resolved "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz"
|
2607 |
integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==
|
@@ -2655,17 +2600,17 @@ utility-types@^3.10.0:
|
|
2655 |
resolved "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz"
|
2656 |
integrity sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==
|
2657 |
|
2658 |
-
uuid@8.0.0:
|
2659 |
-
version "8.0.0"
|
2660 |
-
resolved "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz"
|
2661 |
-
integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==
|
2662 |
-
|
2663 |
uuid@^9.0.0:
|
2664 |
version "9.0.0"
|
2665 |
resolved "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz"
|
2666 |
integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==
|
2667 |
|
2668 |
-
|
|
|
|
|
|
|
|
|
|
|
2669 |
version "4.4.9"
|
2670 |
resolved "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz"
|
2671 |
integrity sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==
|
@@ -2802,7 +2747,12 @@ zstddec@^0.0.2:
|
|
2802 |
resolved "https://registry.npmjs.org/zstddec/-/zstddec-0.0.2.tgz"
|
2803 |
integrity sha512-DCo0oxvcvOTGP/f5FA6tz2Z6wF+FIcEApSTu0zV5sQgn9hoT5lZ9YRAKUraxt9oP7l4e8TnNdi8IZTCX6WCkwA==
|
2804 |
|
2805 |
-
zustand@^3.5.13
|
|
|
|
|
|
|
|
|
|
|
2806 |
version "3.7.2"
|
2807 |
resolved "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz"
|
2808 |
integrity sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==
|
|
|
61 |
resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz"
|
62 |
integrity sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==
|
63 |
|
64 |
+
"@babel/core@^7.0.0", "@babel/core@^7.0.0-0", "@babel/core@^7.22.9":
|
65 |
version "7.22.10"
|
66 |
resolved "https://registry.npmjs.org/@babel/core/-/core-7.22.10.tgz"
|
67 |
integrity sha512-fTmqbbUBAwCcre6zPzNngvsI0aNrPZe77AeqvDxWM9Nm+04RrJ3CAmGHA9f7lJQY6ZMhRztNemy4uslDxTX4Qw==
|
|
|
298 |
resolved "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.1.tgz"
|
299 |
integrity sha512-W2P2c/VRW1/1tLox0mVUalvnWXxavmv/Oum2aPsRcoDJuob75FC3Y8FbpfLwUegRcxINtGUMPq0tFCvYNTBXNA==
|
300 |
|
301 |
+
"@emotion/react@^11.0.0-rc.0", "@emotion/react@^11.4.1", "@emotion/react@^11.5.0", "@emotion/react@11.11.1":
|
302 |
version "11.11.1"
|
303 |
resolved "https://registry.npmjs.org/@emotion/react/-/react-11.11.1.tgz"
|
304 |
integrity sha512-5mlW1DquU5HaxjLkfkGN1GA/fvVGdyHURRiX/0FHl2cfIfRxSOfmxEH5YS43edp0OldZrZ+dkBKbngxcNCdZvA==
|
|
|
328 |
resolved "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.2.2.tgz"
|
329 |
integrity sha512-0QBtGvaqtWi+nx6doRwDdBIzhNdZrXUppvTM4dtZZWEGTXL/XE/yJxLMGlDT1Gt+UHH5IX1n+jkXyytE/av7OA==
|
330 |
|
331 |
+
"@emotion/styled@^11.3.0", "@emotion/styled@11.11.0":
|
332 |
version "11.11.0"
|
333 |
resolved "https://registry.npmjs.org/@emotion/styled/-/styled-11.11.0.tgz"
|
334 |
integrity sha512-hM5Nnvu9P3midq5aaXj4I+lnSfNi7Pmd4EWk1fOZ3pxookaQTNew6bp4JaCBYM4HVFZF9g7UjJmsUmC2JlxOng==
|
|
|
360 |
resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.3.1.tgz"
|
361 |
integrity sha512-EsBwpc7hBUJWAsNPBmJy4hxWx12v6bshQsldrVmjxJoc3isbxhOrF2IcCpaXxfvq03NwkI7sbsOLXbYuqF/8Ww==
|
362 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
363 |
"@esbuild/linux-x64@0.18.20":
|
364 |
version "0.18.20"
|
365 |
resolved "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.20.tgz"
|
366 |
integrity sha512-UYqiqemphJcNsFEskc73jQ7B9jgwjWrSayxawS6UVFZGWrAAtkzjxSqnoclCXxWtfwLdzU+vTpcNYhpn43uP1w==
|
367 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
368 |
"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0":
|
369 |
version "4.4.0"
|
370 |
resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz"
|
|
|
479 |
dependencies:
|
480 |
"@babel/runtime" "^7.22.6"
|
481 |
|
482 |
+
"@mui/material@^5.0.0", "@mui/material@5.14.5":
|
483 |
version "5.14.5"
|
484 |
resolved "https://registry.npmjs.org/@mui/material/-/material-5.14.5.tgz"
|
485 |
integrity sha512-4qa4GMfuZH0Ai3mttk5ccXP8a3sf7aPlAJwyMrUSz6h9hPri6BPou94zeu3rENhhmKLby9S/W1y+pmficy8JKA==
|
|
|
554 |
"@nodelib/fs.stat" "2.0.5"
|
555 |
run-parallel "^1.1.9"
|
556 |
|
557 |
+
"@nodelib/fs.stat@^2.0.2", "@nodelib/fs.stat@2.0.5":
|
558 |
version "2.0.5"
|
559 |
resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz"
|
560 |
integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
|
|
|
647 |
utility-types "^3.10.0"
|
648 |
zustand "^3.5.13"
|
649 |
|
650 |
+
"@react-three/fiber@^8.14.1", "@react-three/fiber@>=6.0", "@react-three/fiber@>=8.0", "@react-three/fiber@>=8.0.0":
|
651 |
version "8.14.1"
|
652 |
resolved "https://registry.npmjs.org/@react-three/fiber/-/fiber-8.14.1.tgz"
|
653 |
integrity sha512-Ky/FiCyJiyaI8bd+vckzgkHgKDSQDOcSSUVFOHCuCO9XOLb7Ebs6lof2hPpFa1HkaeE5ZIbTWIprvN0QqdPF0w==
|
|
|
693 |
resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz"
|
694 |
integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
|
695 |
|
696 |
+
"@types/node@^20.5.3", "@types/node@>= 14":
|
697 |
version "20.5.3"
|
698 |
resolved "https://registry.npmjs.org/@types/node/-/node-20.5.3.tgz"
|
699 |
integrity sha512-ITI7rbWczR8a/S6qjAW7DMqxqFMjjTo61qZVWJ1ubPvbIQsL5D/TvwjYEalM8Kthpe3hTzOGrF2TGbAu2uyqeA==
|
|
|
748 |
dependencies:
|
749 |
"@types/react" "*"
|
750 |
|
751 |
+
"@types/react@*", "@types/react@^17.0.0 || ^18.0.0", "@types/react@^18.2.15", "@types/react@>=16.8":
|
752 |
version "18.2.20"
|
753 |
resolved "https://registry.npmjs.org/@types/react/-/react-18.2.20.tgz"
|
754 |
integrity sha512-WKNtmsLWJM/3D5mG4U84cysVY31ivmyw85dE84fOCk5Hx78wezB/XEjVPWl2JTZ5FkEeaTJf+VgUAUn3PE7Isw==
|
|
|
767 |
resolved "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz"
|
768 |
integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==
|
769 |
|
770 |
+
"@types/stats.js@*":
|
771 |
+
version "0.17.3"
|
772 |
+
resolved "https://registry.npmjs.org/@types/stats.js/-/stats.js-0.17.3.tgz"
|
773 |
+
integrity sha512-pXNfAD3KHOdif9EQXZ9deK82HVNaXP5ZIF5RP2QG6OQFNTaY2YIetfrE9t528vEreGQvEPRDDc8muaoYeK0SxQ==
|
774 |
+
|
775 |
+
"@types/three@>=0.144.0":
|
776 |
+
version "0.158.3"
|
777 |
+
resolved "https://registry.npmjs.org/@types/three/-/three-0.158.3.tgz"
|
778 |
+
integrity sha512-6Qs1rUvLSbkJ4hlIe6/rdwIf61j1x2UKvGJg7s8KjswYsz1C1qDTs6voVXXB8kYaI0hgklgZgbZUupfL1l9xdA==
|
779 |
+
dependencies:
|
780 |
+
"@types/stats.js" "*"
|
781 |
+
"@types/webxr" "*"
|
782 |
+
fflate "~0.6.10"
|
783 |
+
meshoptimizer "~0.18.1"
|
784 |
+
|
785 |
"@types/uuid@^9.0.2":
|
786 |
version "9.0.2"
|
787 |
resolved "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.2.tgz"
|
|
|
809 |
semver "^7.5.4"
|
810 |
ts-api-utils "^1.0.1"
|
811 |
|
812 |
+
"@typescript-eslint/parser@^6.0.0", "@typescript-eslint/parser@^6.0.0 || ^6.0.0-alpha":
|
813 |
version "6.4.0"
|
814 |
resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.4.0.tgz"
|
815 |
integrity sha512-I1Ah1irl033uxjxO9Xql7+biL3YD7w9IU8zF+xlzD/YxY6a4b7DYA08PXUUCbm2sEljwJF6ERFy2kTGAGcNilg==
|
|
|
904 |
resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz"
|
905 |
integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
|
906 |
|
907 |
+
"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", acorn@^8.9.0:
|
908 |
version "8.10.0"
|
909 |
resolved "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz"
|
910 |
integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==
|
|
|
942 |
dependencies:
|
943 |
color-convert "^1.9.0"
|
944 |
|
945 |
+
ansi-styles@^4.0.0:
|
946 |
+
version "4.3.0"
|
947 |
+
resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
|
948 |
+
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
|
949 |
+
dependencies:
|
950 |
+
color-convert "^2.0.1"
|
951 |
+
|
952 |
+
ansi-styles@^4.1.0:
|
953 |
version "4.3.0"
|
954 |
resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz"
|
955 |
integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
|
|
|
1033 |
dependencies:
|
1034 |
fill-range "^7.0.1"
|
1035 |
|
1036 |
+
browserslist@^4.21.9, "browserslist@>= 4.21.0":
|
1037 |
version "4.21.10"
|
1038 |
resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz"
|
1039 |
integrity sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==
|
|
|
1084 |
escape-string-regexp "^1.0.5"
|
1085 |
supports-color "^5.3.0"
|
1086 |
|
1087 |
+
chalk@^4.0.0:
|
1088 |
+
version "4.1.2"
|
1089 |
+
resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
|
1090 |
+
integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
|
1091 |
+
dependencies:
|
1092 |
+
ansi-styles "^4.1.0"
|
1093 |
+
supports-color "^7.1.0"
|
1094 |
+
|
1095 |
+
chalk@^4.1.2:
|
1096 |
version "4.1.2"
|
1097 |
resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz"
|
1098 |
integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
|
|
|
1128 |
dependencies:
|
1129 |
color-name "~1.1.4"
|
1130 |
|
|
|
|
|
|
|
|
|
|
|
1131 |
color-name@~1.1.4:
|
1132 |
version "1.1.4"
|
1133 |
resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz"
|
1134 |
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
|
1135 |
|
1136 |
+
color-name@1.1.3:
|
1137 |
+
version "1.1.3"
|
1138 |
+
resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz"
|
1139 |
+
integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==
|
1140 |
+
|
1141 |
concat-map@0.0.1:
|
1142 |
version "0.0.1"
|
1143 |
resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
|
|
|
1352 |
resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz"
|
1353 |
integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
|
1354 |
|
1355 |
+
"eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.0.0 || ^8.0.0", eslint@^8.45.0, eslint@>=7:
|
1356 |
version "8.47.0"
|
1357 |
resolved "https://registry.npmjs.org/eslint/-/eslint-8.47.0.tgz"
|
1358 |
integrity sha512-spUQWrdPt+pRVP1TTJLmfRNJJHHZryFmptzcafwSvHsceV81djHOdnEeDmkdotZyLNjDhrOasNK8nikkoG1O8Q==
|
|
|
1471 |
dependencies:
|
1472 |
reusify "^1.0.4"
|
1473 |
|
1474 |
+
fflate@^0.6.9, fflate@~0.6.10:
|
1475 |
version "0.6.10"
|
1476 |
resolved "https://registry.npmjs.org/fflate/-/fflate-0.6.10.tgz"
|
1477 |
integrity sha512-IQrh3lEPM93wVCEczc9SaAOvkmcoQn/G8Bo1e8ZPlY3X3bnAxWaBdvTdvM1hP62iZp0BXWDy4vTAy4fF0+Dlpg==
|
|
|
1528 |
resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
|
1529 |
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
|
1530 |
|
|
|
|
|
|
|
|
|
|
|
1531 |
function-bind@^1.1.1:
|
1532 |
version "1.1.1"
|
1533 |
resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz"
|
|
|
1661 |
dependencies:
|
1662 |
react-is "^16.7.0"
|
1663 |
|
1664 |
+
ieee754@^1.1.4, ieee754@1.1.13:
|
1665 |
version "1.1.13"
|
1666 |
resolved "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz"
|
1667 |
integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==
|
|
|
1692 |
once "^1.3.0"
|
1693 |
wrappy "1"
|
1694 |
|
1695 |
+
inherits@^2.0.3, inherits@2:
|
1696 |
version "2.0.4"
|
1697 |
resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz"
|
1698 |
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
|
|
|
1773 |
resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz"
|
1774 |
integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
|
1775 |
|
1776 |
+
iso-639-1@^3.1.0:
|
1777 |
+
version "3.1.0"
|
1778 |
+
resolved "https://registry.npmjs.org/iso-639-1/-/iso-639-1-3.1.0.tgz"
|
1779 |
+
integrity sha512-rWcHp9dcNbxa5C8jA/cxFlWNFNwy5Vup0KcFvgA8sPQs9ZeJHj/Eq0Y8Yz2eL8XlWYpxw4iwh9FfTeVxyqdRMw==
|
1780 |
+
|
1781 |
isomorphic-unfetch@^3.0.0:
|
1782 |
version "3.1.0"
|
1783 |
resolved "https://registry.npmjs.org/isomorphic-unfetch/-/isomorphic-unfetch-3.1.0.tgz"
|
|
|
1890 |
resolved "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz"
|
1891 |
integrity sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==
|
1892 |
|
1893 |
+
lodash@^4.17.21, lodash@4.17.21:
|
1894 |
version "4.17.21"
|
1895 |
resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
|
1896 |
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
|
|
|
1931 |
resolved "https://registry.npmjs.org/meshline/-/meshline-3.1.6.tgz"
|
1932 |
integrity sha512-8JZJOdaL5oz3PI/upG8JvP/5FfzYUOhrkJ8np/WKvXzl0/PZ2V9pqTvCIjSKv+w9ccg2xb+yyBhXAwt6ier3ug==
|
1933 |
|
1934 |
+
meshoptimizer@~0.18.1:
|
1935 |
+
version "0.18.1"
|
1936 |
+
resolved "https://registry.npmjs.org/meshoptimizer/-/meshoptimizer-0.18.1.tgz"
|
1937 |
+
integrity sha512-ZhoIoL7TNV4s5B6+rx5mC//fw8/POGyNxS/DZyCJeiZ12ScLfVwRE/GfsxwiTkMYYD5DmK2/JXnEVXqL4rF+Sw==
|
1938 |
+
|
1939 |
micromatch@^4.0.4:
|
1940 |
version "4.0.5"
|
1941 |
resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz"
|
|
|
2109 |
object-assign "^4.1.1"
|
2110 |
react-is "^16.13.1"
|
2111 |
|
|
|
|
|
|
|
|
|
|
|
2112 |
punycode@^2.1.0:
|
2113 |
version "2.3.0"
|
2114 |
resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz"
|
2115 |
integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==
|
2116 |
|
2117 |
+
punycode@1.3.2:
|
2118 |
+
version "1.3.2"
|
2119 |
+
resolved "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz"
|
2120 |
+
integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==
|
2121 |
+
|
2122 |
querystring@0.2.0:
|
2123 |
version "0.2.0"
|
2124 |
resolved "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz"
|
|
|
2136 |
dependencies:
|
2137 |
prop-types "^15.6.0"
|
2138 |
|
2139 |
+
"react-dom@^17.0.0 || ^18.0.0", react-dom@^18.2.0, react-dom@>=16.13, react-dom@>=16.3.0, react-dom@>=16.6.0, react-dom@>=18.0:
|
2140 |
version "18.2.0"
|
2141 |
resolved "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz"
|
2142 |
integrity sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==
|
|
|
2149 |
resolved "https://registry.npmjs.org/react-google-charts/-/react-google-charts-4.0.1.tgz"
|
2150 |
integrity sha512-V/hcMcNuBgD5w49BYTUDye+bUKaPmsU5vy/9W/Nj2xEeGn+6/AuH9IvBkbDcNBsY00cV9OeexdmgfI5RFHgsXQ==
|
2151 |
|
2152 |
+
react-is@^16.13.1:
|
2153 |
+
version "16.13.1"
|
2154 |
+
resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz"
|
2155 |
+
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
|
2156 |
+
|
2157 |
+
react-is@^16.7.0:
|
2158 |
version "16.13.1"
|
2159 |
resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz"
|
2160 |
integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
|
|
|
2199 |
dependencies:
|
2200 |
debounce "^1.2.1"
|
2201 |
|
2202 |
+
"react@^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0", "react@^16.8.0 || ^17.0.0 || ^18.0.0", "react@^17.0.0 || ^18.0.0", react@^18.0.0, react@^18.2.0, "react@>= 16.8.0", react@>=16.13, react@>=16.3.0, react@>=16.6.0, react@>=16.8, react@>=16.8.0, react@>=17.0, react@>=18.0:
|
2203 |
version "18.2.0"
|
2204 |
resolved "https://registry.npmjs.org/react/-/react-18.2.0.tgz"
|
2205 |
integrity sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==
|
|
|
2268 |
dependencies:
|
2269 |
tslib "^2.1.0"
|
2270 |
|
2271 |
+
sax@>=0.6.0, sax@1.2.1:
|
2272 |
version "1.2.1"
|
2273 |
resolved "https://registry.npmjs.org/sax/-/sax-1.2.1.tgz"
|
2274 |
integrity sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA==
|
|
|
2457 |
potpack "^1.0.1"
|
2458 |
zstddec "^0.0.2"
|
2459 |
|
2460 |
+
three@^0.156.1, "three@>= 0.151.0", three@>=0.125.0, three@>=0.126, three@>=0.126.1, three@>=0.128.0, three@>=0.133, three@>=0.137, three@>=0.141, three@>=0.144.0:
|
2461 |
version "0.156.1"
|
2462 |
resolved "https://registry.npmjs.org/three/-/three-0.156.1.tgz"
|
2463 |
integrity sha512-kP7H0FK9d/k6t/XvQ9FO6i+QrePoDcNhwl0I02+wmUJRNSLCUIDMcfObnzQvxb37/0Uc9TDT0T1HgsRRrO6SYQ==
|
|
|
2519 |
resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
|
2520 |
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
|
2521 |
|
2522 |
+
tslib@^2.1.0:
|
2523 |
+
version "2.6.2"
|
2524 |
+
resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
|
2525 |
+
integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==
|
2526 |
+
|
2527 |
+
tslib@^2.3.1:
|
2528 |
+
version "2.6.2"
|
2529 |
+
resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
|
2530 |
+
integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==
|
2531 |
+
|
2532 |
+
tslib@^2.5.0:
|
2533 |
version "2.6.2"
|
2534 |
resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz"
|
2535 |
integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==
|
|
|
2546 |
resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz"
|
2547 |
integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
|
2548 |
|
2549 |
+
typescript@>=4.2.0, typescript@5.1.6:
|
2550 |
version "5.1.6"
|
2551 |
resolved "https://registry.npmjs.org/typescript/-/typescript-5.1.6.tgz"
|
2552 |
integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA==
|
|
|
2600 |
resolved "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz"
|
2601 |
integrity sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==
|
2602 |
|
|
|
|
|
|
|
|
|
|
|
2603 |
uuid@^9.0.0:
|
2604 |
version "9.0.0"
|
2605 |
resolved "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz"
|
2606 |
integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==
|
2607 |
|
2608 |
+
uuid@8.0.0:
|
2609 |
+
version "8.0.0"
|
2610 |
+
resolved "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz"
|
2611 |
+
integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==
|
2612 |
+
|
2613 |
+
vite@^4.2.0, vite@^4.4.5:
|
2614 |
version "4.4.9"
|
2615 |
resolved "https://registry.npmjs.org/vite/-/vite-4.4.9.tgz"
|
2616 |
integrity sha512-2mbUn2LlUmNASWwSCNSJ/EG2HuSRTnVNaydp6vMCm5VIqJsjMfbIWtbH2kDuwUVW5mMUKKZvGPX/rqeqVvv1XA==
|
|
|
2747 |
resolved "https://registry.npmjs.org/zstddec/-/zstddec-0.0.2.tgz"
|
2748 |
integrity sha512-DCo0oxvcvOTGP/f5FA6tz2Z6wF+FIcEApSTu0zV5sQgn9hoT5lZ9YRAKUraxt9oP7l4e8TnNdi8IZTCX6WCkwA==
|
2749 |
|
2750 |
+
zustand@^3.5.13:
|
2751 |
+
version "3.7.2"
|
2752 |
+
resolved "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz"
|
2753 |
+
integrity sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==
|
2754 |
+
|
2755 |
+
zustand@^3.7.1:
|
2756 |
version "3.7.2"
|
2757 |
resolved "https://registry.npmjs.org/zustand/-/zustand-3.7.2.tgz"
|
2758 |
integrity sha512-PIJDIZKtokhof+9+60cpockVOq05sJzHCriyvaLBmEJixseQ1a5Kdov6fWZfWOu5SK9c+FhH1jU0tntLxRJYMA==
|