Spaces:
Sleeping
Sleeping
[build] update Dockerfile
Browse files- Cargo.lock +70 -71
- Cargo.toml +6 -4
- Dockerfile +3 -5
- src/lesson.rs +20 -9
- CUDA11.4.Dockerfile → whisper.Dockerfile +6 -5
- whisper/Cargo.toml +10 -1
Cargo.lock
CHANGED
@@ -347,9 +347,9 @@ dependencies = [
|
|
347 |
|
348 |
[[package]]
|
349 |
name = "aws-smithy-async"
|
350 |
-
version = "1.0.
|
351 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
352 |
-
checksum = "
|
353 |
dependencies = [
|
354 |
"futures-util",
|
355 |
"pin-project-lite",
|
@@ -409,9 +409,9 @@ dependencies = [
|
|
409 |
|
410 |
[[package]]
|
411 |
name = "aws-smithy-runtime"
|
412 |
-
version = "1.0.
|
413 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
414 |
-
checksum = "
|
415 |
dependencies = [
|
416 |
"aws-smithy-async",
|
417 |
"aws-smithy-http",
|
@@ -433,9 +433,9 @@ dependencies = [
|
|
433 |
|
434 |
[[package]]
|
435 |
name = "aws-smithy-runtime-api"
|
436 |
-
version = "1.0.
|
437 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
438 |
-
checksum = "
|
439 |
dependencies = [
|
440 |
"aws-smithy-async",
|
441 |
"aws-smithy-types",
|
@@ -449,9 +449,9 @@ dependencies = [
|
|
449 |
|
450 |
[[package]]
|
451 |
name = "aws-smithy-types"
|
452 |
-
version = "1.0.
|
453 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
454 |
-
checksum = "
|
455 |
dependencies = [
|
456 |
"base64-simd",
|
457 |
"bytes",
|
@@ -612,9 +612,9 @@ checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223"
|
|
612 |
|
613 |
[[package]]
|
614 |
name = "bytes-utils"
|
615 |
-
version = "0.1.
|
616 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
617 |
-
checksum = "
|
618 |
dependencies = [
|
619 |
"bytes",
|
620 |
"either",
|
@@ -753,9 +753,9 @@ dependencies = [
|
|
753 |
|
754 |
[[package]]
|
755 |
name = "data-encoding"
|
756 |
-
version = "2.
|
757 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
758 |
-
checksum = "
|
759 |
|
760 |
[[package]]
|
761 |
name = "deranged"
|
@@ -810,9 +810,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
|
|
810 |
|
811 |
[[package]]
|
812 |
name = "errno"
|
813 |
-
version = "0.3.
|
814 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
815 |
-
checksum = "
|
816 |
dependencies = [
|
817 |
"libc",
|
818 |
"windows-sys",
|
@@ -942,9 +942,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
|
|
942 |
|
943 |
[[package]]
|
944 |
name = "h2"
|
945 |
-
version = "0.3.
|
946 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
947 |
-
checksum = "
|
948 |
dependencies = [
|
949 |
"bytes",
|
950 |
"fnv",
|
@@ -952,7 +952,7 @@ dependencies = [
|
|
952 |
"futures-sink",
|
953 |
"futures-util",
|
954 |
"http",
|
955 |
-
"indexmap
|
956 |
"slab",
|
957 |
"tokio",
|
958 |
"tokio-util",
|
@@ -1037,17 +1037,11 @@ dependencies = [
|
|
1037 |
"windows-sys",
|
1038 |
]
|
1039 |
|
1040 |
-
[[package]]
|
1041 |
-
name = "hound"
|
1042 |
-
version = "3.5.1"
|
1043 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1044 |
-
checksum = "62adaabb884c94955b19907d60019f4e145d091c75345379e70d1ee696f7854f"
|
1045 |
-
|
1046 |
[[package]]
|
1047 |
name = "http"
|
1048 |
-
version = "0.2.
|
1049 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1050 |
-
checksum = "
|
1051 |
dependencies = [
|
1052 |
"bytes",
|
1053 |
"fnv",
|
@@ -1133,16 +1127,6 @@ dependencies = [
|
|
1133 |
"unicode-normalization",
|
1134 |
]
|
1135 |
|
1136 |
-
[[package]]
|
1137 |
-
name = "indexmap"
|
1138 |
-
version = "1.9.3"
|
1139 |
-
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1140 |
-
checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
|
1141 |
-
dependencies = [
|
1142 |
-
"autocfg",
|
1143 |
-
"hashbrown 0.12.3",
|
1144 |
-
]
|
1145 |
-
|
1146 |
[[package]]
|
1147 |
name = "indexmap"
|
1148 |
version = "2.1.0"
|
@@ -1216,9 +1200,9 @@ checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
|
|
1216 |
|
1217 |
[[package]]
|
1218 |
name = "linux-raw-sys"
|
1219 |
-
version = "0.4.
|
1220 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1221 |
-
checksum = "
|
1222 |
|
1223 |
[[package]]
|
1224 |
name = "lock_api"
|
@@ -1293,6 +1277,17 @@ dependencies = [
|
|
1293 |
"windows-sys",
|
1294 |
]
|
1295 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1296 |
[[package]]
|
1297 |
name = "nom"
|
1298 |
version = "5.1.3"
|
@@ -1495,9 +1490,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
|
|
1495 |
|
1496 |
[[package]]
|
1497 |
name = "poem"
|
1498 |
-
version = "1.3.
|
1499 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1500 |
-
checksum = "
|
1501 |
dependencies = [
|
1502 |
"async-trait",
|
1503 |
"base64 0.21.5",
|
@@ -1509,6 +1504,7 @@ dependencies = [
|
|
1509 |
"hyper",
|
1510 |
"mime",
|
1511 |
"mime_guess",
|
|
|
1512 |
"parking_lot",
|
1513 |
"percent-encoding",
|
1514 |
"pin-project-lite",
|
@@ -1524,13 +1520,14 @@ dependencies = [
|
|
1524 |
"tokio-tungstenite",
|
1525 |
"tokio-util",
|
1526 |
"tracing",
|
|
|
1527 |
]
|
1528 |
|
1529 |
[[package]]
|
1530 |
name = "poem-derive"
|
1531 |
-
version = "1.3.
|
1532 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1533 |
-
checksum = "
|
1534 |
dependencies = [
|
1535 |
"proc-macro-crate",
|
1536 |
"proc-macro2",
|
@@ -1551,9 +1548,6 @@ dependencies = [
|
|
1551 |
"aws-sdk-translate",
|
1552 |
"config",
|
1553 |
"futures-util",
|
1554 |
-
"fvad",
|
1555 |
-
"hound",
|
1556 |
-
"lazy_static",
|
1557 |
"once_cell",
|
1558 |
"poem",
|
1559 |
"serde",
|
@@ -1591,11 +1585,10 @@ dependencies = [
|
|
1591 |
|
1592 |
[[package]]
|
1593 |
name = "proc-macro-crate"
|
1594 |
-
version = "
|
1595 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1596 |
-
checksum = "
|
1597 |
dependencies = [
|
1598 |
-
"once_cell",
|
1599 |
"toml_edit",
|
1600 |
]
|
1601 |
|
@@ -1767,9 +1760,9 @@ dependencies = [
|
|
1767 |
|
1768 |
[[package]]
|
1769 |
name = "rustix"
|
1770 |
-
version = "0.38.
|
1771 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1772 |
-
checksum = "
|
1773 |
dependencies = [
|
1774 |
"bitflags 2.4.1",
|
1775 |
"errno",
|
@@ -1780,9 +1773,9 @@ dependencies = [
|
|
1780 |
|
1781 |
[[package]]
|
1782 |
name = "rustls"
|
1783 |
-
version = "0.21.
|
1784 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1785 |
-
checksum = "
|
1786 |
dependencies = [
|
1787 |
"log",
|
1788 |
"ring",
|
@@ -1804,9 +1797,9 @@ dependencies = [
|
|
1804 |
|
1805 |
[[package]]
|
1806 |
name = "rustls-pemfile"
|
1807 |
-
version = "1.0.
|
1808 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1809 |
-
checksum = "
|
1810 |
dependencies = [
|
1811 |
"base64 0.21.5",
|
1812 |
]
|
@@ -1883,18 +1876,18 @@ checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090"
|
|
1883 |
|
1884 |
[[package]]
|
1885 |
name = "serde"
|
1886 |
-
version = "1.0.
|
1887 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1888 |
-
checksum = "
|
1889 |
dependencies = [
|
1890 |
"serde_derive",
|
1891 |
]
|
1892 |
|
1893 |
[[package]]
|
1894 |
name = "serde_derive"
|
1895 |
-
version = "1.0.
|
1896 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1897 |
-
checksum = "
|
1898 |
dependencies = [
|
1899 |
"proc-macro2",
|
1900 |
"quote",
|
@@ -1930,7 +1923,7 @@ version = "0.9.27"
|
|
1930 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1931 |
checksum = "3cc7a1570e38322cfe4154732e5110f887ea57e22b76f4bfd32b5bdd3368666c"
|
1932 |
dependencies = [
|
1933 |
-
"indexmap
|
1934 |
"itoa",
|
1935 |
"ryu",
|
1936 |
"serde",
|
@@ -2000,9 +1993,9 @@ dependencies = [
|
|
2000 |
|
2001 |
[[package]]
|
2002 |
name = "smallvec"
|
2003 |
-
version = "1.11.
|
2004 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2005 |
-
checksum = "
|
2006 |
|
2007 |
[[package]]
|
2008 |
name = "socket2"
|
@@ -2248,11 +2241,11 @@ checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
|
|
2248 |
|
2249 |
[[package]]
|
2250 |
name = "toml_edit"
|
2251 |
-
version = "0.
|
2252 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2253 |
-
checksum = "
|
2254 |
dependencies = [
|
2255 |
-
"indexmap
|
2256 |
"toml_datetime",
|
2257 |
"winnow",
|
2258 |
]
|
@@ -2297,9 +2290,9 @@ dependencies = [
|
|
2297 |
|
2298 |
[[package]]
|
2299 |
name = "tracing-log"
|
2300 |
-
version = "0.
|
2301 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2302 |
-
checksum = "
|
2303 |
dependencies = [
|
2304 |
"log",
|
2305 |
"once_cell",
|
@@ -2308,9 +2301,9 @@ dependencies = [
|
|
2308 |
|
2309 |
[[package]]
|
2310 |
name = "tracing-subscriber"
|
2311 |
-
version = "0.3.
|
2312 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2313 |
-
checksum = "
|
2314 |
dependencies = [
|
2315 |
"matchers",
|
2316 |
"nu-ansi-term",
|
@@ -2466,9 +2459,9 @@ checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
|
|
2466 |
|
2467 |
[[package]]
|
2468 |
name = "uuid"
|
2469 |
-
version = "1.
|
2470 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2471 |
-
checksum = "
|
2472 |
|
2473 |
[[package]]
|
2474 |
name = "valuable"
|
@@ -2563,6 +2556,12 @@ dependencies = [
|
|
2563 |
"fs_extra",
|
2564 |
]
|
2565 |
|
|
|
|
|
|
|
|
|
|
|
|
|
2566 |
[[package]]
|
2567 |
name = "winapi"
|
2568 |
version = "0.3.9"
|
@@ -2686,6 +2685,6 @@ dependencies = [
|
|
2686 |
|
2687 |
[[package]]
|
2688 |
name = "zeroize"
|
2689 |
-
version = "1.
|
2690 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2691 |
-
checksum = "
|
|
|
347 |
|
348 |
[[package]]
|
349 |
name = "aws-smithy-async"
|
350 |
+
version = "1.0.1"
|
351 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
352 |
+
checksum = "1fbfa248f7f966d73e325dbc85851a5500042b6d96e3c3b535a8527707f36fe4"
|
353 |
dependencies = [
|
354 |
"futures-util",
|
355 |
"pin-project-lite",
|
|
|
409 |
|
410 |
[[package]]
|
411 |
name = "aws-smithy-runtime"
|
412 |
+
version = "1.0.1"
|
413 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
414 |
+
checksum = "064b808143d80b50744b1b22cce801238a545b84859c6cf8e275997252dd1d25"
|
415 |
dependencies = [
|
416 |
"aws-smithy-async",
|
417 |
"aws-smithy-http",
|
|
|
433 |
|
434 |
[[package]]
|
435 |
name = "aws-smithy-runtime-api"
|
436 |
+
version = "1.0.1"
|
437 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
438 |
+
checksum = "4d27c3235d4972ed976b5c1a82286e7c4457f618f3c2ae6d4ae44f081dd24575"
|
439 |
dependencies = [
|
440 |
"aws-smithy-async",
|
441 |
"aws-smithy-types",
|
|
|
449 |
|
450 |
[[package]]
|
451 |
name = "aws-smithy-types"
|
452 |
+
version = "1.0.1"
|
453 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
454 |
+
checksum = "d2fc32035dc0636a8583cf0c6dd7f1e6d5404103b836d26228b8730907a88d9f"
|
455 |
dependencies = [
|
456 |
"base64-simd",
|
457 |
"bytes",
|
|
|
612 |
|
613 |
[[package]]
|
614 |
name = "bytes-utils"
|
615 |
+
version = "0.1.4"
|
616 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
617 |
+
checksum = "7dafe3a8757b027e2be6e4e5601ed563c55989fcf1546e933c66c8eb3a058d35"
|
618 |
dependencies = [
|
619 |
"bytes",
|
620 |
"either",
|
|
|
753 |
|
754 |
[[package]]
|
755 |
name = "data-encoding"
|
756 |
+
version = "2.5.0"
|
757 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
758 |
+
checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5"
|
759 |
|
760 |
[[package]]
|
761 |
name = "deranged"
|
|
|
810 |
|
811 |
[[package]]
|
812 |
name = "errno"
|
813 |
+
version = "0.3.7"
|
814 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
815 |
+
checksum = "f258a7194e7f7c2a7837a8913aeab7fd8c383457034fa20ce4dd3dcb813e8eb8"
|
816 |
dependencies = [
|
817 |
"libc",
|
818 |
"windows-sys",
|
|
|
942 |
|
943 |
[[package]]
|
944 |
name = "h2"
|
945 |
+
version = "0.3.22"
|
946 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
947 |
+
checksum = "4d6250322ef6e60f93f9a2162799302cd6f68f79f6e5d85c8c16f14d1d958178"
|
948 |
dependencies = [
|
949 |
"bytes",
|
950 |
"fnv",
|
|
|
952 |
"futures-sink",
|
953 |
"futures-util",
|
954 |
"http",
|
955 |
+
"indexmap",
|
956 |
"slab",
|
957 |
"tokio",
|
958 |
"tokio-util",
|
|
|
1037 |
"windows-sys",
|
1038 |
]
|
1039 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1040 |
[[package]]
|
1041 |
name = "http"
|
1042 |
+
version = "0.2.11"
|
1043 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1044 |
+
checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb"
|
1045 |
dependencies = [
|
1046 |
"bytes",
|
1047 |
"fnv",
|
|
|
1127 |
"unicode-normalization",
|
1128 |
]
|
1129 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1130 |
[[package]]
|
1131 |
name = "indexmap"
|
1132 |
version = "2.1.0"
|
|
|
1200 |
|
1201 |
[[package]]
|
1202 |
name = "linux-raw-sys"
|
1203 |
+
version = "0.4.11"
|
1204 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1205 |
+
checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829"
|
1206 |
|
1207 |
[[package]]
|
1208 |
name = "lock_api"
|
|
|
1277 |
"windows-sys",
|
1278 |
]
|
1279 |
|
1280 |
+
[[package]]
|
1281 |
+
name = "nix"
|
1282 |
+
version = "0.27.1"
|
1283 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1284 |
+
checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
|
1285 |
+
dependencies = [
|
1286 |
+
"bitflags 2.4.1",
|
1287 |
+
"cfg-if",
|
1288 |
+
"libc",
|
1289 |
+
]
|
1290 |
+
|
1291 |
[[package]]
|
1292 |
name = "nom"
|
1293 |
version = "5.1.3"
|
|
|
1490 |
|
1491 |
[[package]]
|
1492 |
name = "poem"
|
1493 |
+
version = "1.3.59"
|
1494 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1495 |
+
checksum = "504774c97b0744c1ee108a37e5a65a9745a4725c4c06277521dabc28eb53a904"
|
1496 |
dependencies = [
|
1497 |
"async-trait",
|
1498 |
"base64 0.21.5",
|
|
|
1504 |
"hyper",
|
1505 |
"mime",
|
1506 |
"mime_guess",
|
1507 |
+
"nix",
|
1508 |
"parking_lot",
|
1509 |
"percent-encoding",
|
1510 |
"pin-project-lite",
|
|
|
1520 |
"tokio-tungstenite",
|
1521 |
"tokio-util",
|
1522 |
"tracing",
|
1523 |
+
"wildmatch",
|
1524 |
]
|
1525 |
|
1526 |
[[package]]
|
1527 |
name = "poem-derive"
|
1528 |
+
version = "1.3.59"
|
1529 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1530 |
+
checksum = "42ddcf4680d8d867e1e375116203846acb088483fa2070244f90589f458bbb31"
|
1531 |
dependencies = [
|
1532 |
"proc-macro-crate",
|
1533 |
"proc-macro2",
|
|
|
1548 |
"aws-sdk-translate",
|
1549 |
"config",
|
1550 |
"futures-util",
|
|
|
|
|
|
|
1551 |
"once_cell",
|
1552 |
"poem",
|
1553 |
"serde",
|
|
|
1585 |
|
1586 |
[[package]]
|
1587 |
name = "proc-macro-crate"
|
1588 |
+
version = "2.0.0"
|
1589 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1590 |
+
checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8"
|
1591 |
dependencies = [
|
|
|
1592 |
"toml_edit",
|
1593 |
]
|
1594 |
|
|
|
1760 |
|
1761 |
[[package]]
|
1762 |
name = "rustix"
|
1763 |
+
version = "0.38.25"
|
1764 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1765 |
+
checksum = "dc99bc2d4f1fed22595588a013687477aedf3cdcfb26558c559edb67b4d9b22e"
|
1766 |
dependencies = [
|
1767 |
"bitflags 2.4.1",
|
1768 |
"errno",
|
|
|
1773 |
|
1774 |
[[package]]
|
1775 |
name = "rustls"
|
1776 |
+
version = "0.21.9"
|
1777 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1778 |
+
checksum = "629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9"
|
1779 |
dependencies = [
|
1780 |
"log",
|
1781 |
"ring",
|
|
|
1797 |
|
1798 |
[[package]]
|
1799 |
name = "rustls-pemfile"
|
1800 |
+
version = "1.0.4"
|
1801 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1802 |
+
checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c"
|
1803 |
dependencies = [
|
1804 |
"base64 0.21.5",
|
1805 |
]
|
|
|
1876 |
|
1877 |
[[package]]
|
1878 |
name = "serde"
|
1879 |
+
version = "1.0.193"
|
1880 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1881 |
+
checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89"
|
1882 |
dependencies = [
|
1883 |
"serde_derive",
|
1884 |
]
|
1885 |
|
1886 |
[[package]]
|
1887 |
name = "serde_derive"
|
1888 |
+
version = "1.0.193"
|
1889 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1890 |
+
checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3"
|
1891 |
dependencies = [
|
1892 |
"proc-macro2",
|
1893 |
"quote",
|
|
|
1923 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1924 |
checksum = "3cc7a1570e38322cfe4154732e5110f887ea57e22b76f4bfd32b5bdd3368666c"
|
1925 |
dependencies = [
|
1926 |
+
"indexmap",
|
1927 |
"itoa",
|
1928 |
"ryu",
|
1929 |
"serde",
|
|
|
1993 |
|
1994 |
[[package]]
|
1995 |
name = "smallvec"
|
1996 |
+
version = "1.11.2"
|
1997 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
1998 |
+
checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970"
|
1999 |
|
2000 |
[[package]]
|
2001 |
name = "socket2"
|
|
|
2241 |
|
2242 |
[[package]]
|
2243 |
name = "toml_edit"
|
2244 |
+
version = "0.20.7"
|
2245 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2246 |
+
checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81"
|
2247 |
dependencies = [
|
2248 |
+
"indexmap",
|
2249 |
"toml_datetime",
|
2250 |
"winnow",
|
2251 |
]
|
|
|
2290 |
|
2291 |
[[package]]
|
2292 |
name = "tracing-log"
|
2293 |
+
version = "0.2.0"
|
2294 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2295 |
+
checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
|
2296 |
dependencies = [
|
2297 |
"log",
|
2298 |
"once_cell",
|
|
|
2301 |
|
2302 |
[[package]]
|
2303 |
name = "tracing-subscriber"
|
2304 |
+
version = "0.3.18"
|
2305 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2306 |
+
checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
|
2307 |
dependencies = [
|
2308 |
"matchers",
|
2309 |
"nu-ansi-term",
|
|
|
2459 |
|
2460 |
[[package]]
|
2461 |
name = "uuid"
|
2462 |
+
version = "1.6.1"
|
2463 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2464 |
+
checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560"
|
2465 |
|
2466 |
[[package]]
|
2467 |
name = "valuable"
|
|
|
2556 |
"fs_extra",
|
2557 |
]
|
2558 |
|
2559 |
+
[[package]]
|
2560 |
+
name = "wildmatch"
|
2561 |
+
version = "2.1.1"
|
2562 |
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2563 |
+
checksum = "ee583bdc5ff1cf9db20e9db5bb3ff4c3089a8f6b8b31aff265c9aba85812db86"
|
2564 |
+
|
2565 |
[[package]]
|
2566 |
name = "winapi"
|
2567 |
version = "0.3.9"
|
|
|
2685 |
|
2686 |
[[package]]
|
2687 |
name = "zeroize"
|
2688 |
+
version = "1.7.0"
|
2689 |
source = "registry+https://github.com/rust-lang/crates.io-index"
|
2690 |
+
checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d"
|
Cargo.toml
CHANGED
@@ -20,10 +20,7 @@ tokio = { version = "1.33", features = ["macros", "rt-multi-thread", "sync", "si
|
|
20 |
tokio-stream = "0.1"
|
21 |
tracing = { version = "0.1", features = [] }
|
22 |
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
23 |
-
fvad = "0.1"
|
24 |
-
whisper = { path="whisper", optional = true }
|
25 |
async-trait = "0.1.74"
|
26 |
-
lazy_static = { version = "1.4.0", features = [] }
|
27 |
|
28 |
[features]
|
29 |
whisper = ["dep:whisper"]
|
@@ -32,6 +29,11 @@ whisper = ["dep:whisper"]
|
|
32 |
version = "1.3"
|
33 |
features = ["websocket", "static-files"]
|
34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
[dev-dependencies]
|
36 |
-
hound = "3.5.1"
|
37 |
tracing-test = "*"
|
|
|
20 |
tokio-stream = "0.1"
|
21 |
tracing = { version = "0.1", features = [] }
|
22 |
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
|
|
|
|
23 |
async-trait = "0.1.74"
|
|
|
24 |
|
25 |
[features]
|
26 |
whisper = ["dep:whisper"]
|
|
|
29 |
version = "1.3"
|
30 |
features = ["websocket", "static-files"]
|
31 |
|
32 |
+
[target.'cfg(target_os="macos")'.dependencies]
|
33 |
+
whisper = { path="whisper", features = ["metal", "coreml"], optional = true }
|
34 |
+
|
35 |
+
[target.'cfg(target_os="linux")'.dependencies]
|
36 |
+
whisper = { path="whisper", features = ["cuda"], optional = true }
|
37 |
+
|
38 |
[dev-dependencies]
|
|
|
39 |
tracing-test = "*"
|
Dockerfile
CHANGED
@@ -1,7 +1,5 @@
|
|
1 |
-
FROM
|
2 |
RUN apt-get update && apt-get install -y curl
|
3 |
-
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain stable -y
|
4 |
-
ENV PATH=/root/.cargo/bin:$PATH
|
5 |
RUN cargo install cargo-chef
|
6 |
WORKDIR /app
|
7 |
|
@@ -12,11 +10,11 @@ RUN cargo chef prepare --recipe-path recipe.json
|
|
12 |
FROM chef as builder
|
13 |
RUN apt-get update && apt-get install -y cmake g++ libclang-dev libssl-dev pkg-config python3-dev
|
14 |
COPY --from=planner /app/recipe.json recipe.json
|
15 |
-
RUN cargo chef cook --release --recipe-path recipe.json
|
16 |
COPY . .
|
|
|
17 |
RUN cargo build --release
|
18 |
|
19 |
-
FROM
|
20 |
|
21 |
RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/*
|
22 |
WORKDIR /app
|
|
|
1 |
+
FROM rust:latest as chef
|
2 |
RUN apt-get update && apt-get install -y curl
|
|
|
|
|
3 |
RUN cargo install cargo-chef
|
4 |
WORKDIR /app
|
5 |
|
|
|
10 |
FROM chef as builder
|
11 |
RUN apt-get update && apt-get install -y cmake g++ libclang-dev libssl-dev pkg-config python3-dev
|
12 |
COPY --from=planner /app/recipe.json recipe.json
|
|
|
13 |
COPY . .
|
14 |
+
RUN cargo chef cook --release --recipe-path recipe.json
|
15 |
RUN cargo build --release
|
16 |
|
17 |
+
FROM ubuntu:latest as runtime
|
18 |
|
19 |
RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/*
|
20 |
WORKDIR /app
|
src/lesson.rs
CHANGED
@@ -45,9 +45,28 @@ impl Deref for LessonsManager {
|
|
45 |
|
46 |
pub(crate) enum ASR_Engine {
|
47 |
AWS,
|
|
|
48 |
Whisper,
|
49 |
}
|
50 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
51 |
impl LessonsManager {
|
52 |
pub(crate) fn new(sdk_config: &SdkConfig) -> Self {
|
53 |
let translate_client = aws_sdk_translate::Client::new(sdk_config);
|
@@ -140,15 +159,7 @@ impl InnerLesson {
|
|
140 |
let (speaker_voice_channel, mut speaker_voice_rx) = tokio::sync::mpsc::channel::<Vec<i16>>(128);
|
141 |
let (drop_handler, drop_rx) = tokio::sync::oneshot::channel::<Signal>();
|
142 |
|
143 |
-
let mut asr: Box<dyn ASR + Send> =
|
144 |
-
ASR_Engine::AWS => Box::new(AWS_ASR::from_env(speaker_lang.clone()).await.expect("Failed to initialize AWS ASR")),
|
145 |
-
ASR_Engine::Whisper => {
|
146 |
-
#[cfg(not(feature = "whisper"))]
|
147 |
-
unimplemented!("Whisper ASR is not enabled");
|
148 |
-
#[cfg(feature = "whisper")]
|
149 |
-
Box::new(Whisper_ASR::from_config().await.expect("Failed to initialize Whisper ASR"))
|
150 |
-
},
|
151 |
-
};
|
152 |
|
153 |
tokio::spawn(async move {
|
154 |
let fut = async {
|
|
|
45 |
|
46 |
pub(crate) enum ASR_Engine {
|
47 |
AWS,
|
48 |
+
#[cfg(feature = "whisper")]
|
49 |
Whisper,
|
50 |
}
|
51 |
|
52 |
+
impl ASR_Engine {
|
53 |
+
async fn create(self, lang: LanguageCode) -> Box<dyn ASR + Send> {
|
54 |
+
match self {
|
55 |
+
ASR_Engine::AWS => Box::new(
|
56 |
+
AWS_ASR::from_env(lang)
|
57 |
+
.await
|
58 |
+
.expect("Failed to initialize AWS ASR")
|
59 |
+
),
|
60 |
+
#[cfg(feature = "whisper")]
|
61 |
+
ASR_Engine::Whisper => Box::new(
|
62 |
+
Whisper_ASR::from_config()
|
63 |
+
.await
|
64 |
+
.expect("Failed to initialize Whisper ASR")
|
65 |
+
),
|
66 |
+
}
|
67 |
+
}
|
68 |
+
}
|
69 |
+
|
70 |
impl LessonsManager {
|
71 |
pub(crate) fn new(sdk_config: &SdkConfig) -> Self {
|
72 |
let translate_client = aws_sdk_translate::Client::new(sdk_config);
|
|
|
159 |
let (speaker_voice_channel, mut speaker_voice_rx) = tokio::sync::mpsc::channel::<Vec<i16>>(128);
|
160 |
let (drop_handler, drop_rx) = tokio::sync::oneshot::channel::<Signal>();
|
161 |
|
162 |
+
let mut asr: Box<dyn ASR + Send> = engine.create(speaker_lang.clone()).await;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
163 |
|
164 |
tokio::spawn(async move {
|
165 |
let fut = async {
|
CUDA11.4.Dockerfile → whisper.Dockerfile
RENAMED
@@ -1,5 +1,5 @@
|
|
1 |
-
FROM nvidia/cuda:
|
2 |
-
RUN apt-get update && apt-get install -y
|
3 |
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain stable -y
|
4 |
ENV PATH=/root/.cargo/bin:$PATH
|
5 |
RUN cargo install cargo-chef
|
@@ -10,12 +10,13 @@ COPY . .
|
|
10 |
RUN cargo chef prepare --recipe-path recipe.json
|
11 |
|
12 |
FROM chef as builder
|
|
|
13 |
COPY --from=planner /app/recipe.json recipe.json
|
14 |
-
RUN cargo chef cook --release --recipe-path recipe.json
|
15 |
COPY . .
|
16 |
-
RUN cargo
|
|
|
17 |
|
18 |
-
FROM nvidia/cuda:
|
19 |
|
20 |
RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/*
|
21 |
WORKDIR /app
|
|
|
1 |
+
FROM nvidia/cuda:12.2.2-devel-ubuntu22.04 as chef
|
2 |
+
RUN apt-get update && apt-get install -y curl
|
3 |
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- --default-toolchain stable -y
|
4 |
ENV PATH=/root/.cargo/bin:$PATH
|
5 |
RUN cargo install cargo-chef
|
|
|
10 |
RUN cargo chef prepare --recipe-path recipe.json
|
11 |
|
12 |
FROM chef as builder
|
13 |
+
RUN apt-get update && apt-get install -y cmake g++ libclang-dev libssl-dev pkg-config python3-dev
|
14 |
COPY --from=planner /app/recipe.json recipe.json
|
|
|
15 |
COPY . .
|
16 |
+
RUN cargo chef cook --release --recipe-path recipe.json
|
17 |
+
RUN cargo build --release --features whisper
|
18 |
|
19 |
+
FROM nvidia/cuda:12.2.2-runtime-ubuntu22.04 as runtime
|
20 |
|
21 |
RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/*
|
22 |
WORKDIR /app
|
whisper/Cargo.toml
CHANGED
@@ -10,6 +10,15 @@ path = "src/lib.rs"
|
|
10 |
[[bin]]
|
11 |
name = "whisper"
|
12 |
path = "src/main.rs"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
14 |
|
15 |
[dependencies]
|
@@ -22,7 +31,7 @@ lazy_static = { version = "1.4.0", features = [] }
|
|
22 |
|
23 |
[dependencies.whisper-rs]
|
24 |
git = "https://github.com/mingyang91/whisper-rs.git"
|
25 |
-
|
26 |
[dependencies.whisper-rs-sys]
|
27 |
git = "https://github.com/mingyang91/whisper-rs.git"
|
28 |
package = "whisper-rs-sys"
|
|
|
10 |
[[bin]]
|
11 |
name = "whisper"
|
12 |
path = "src/main.rs"
|
13 |
+
[features]
|
14 |
+
default = ["whisper-rs/default"]
|
15 |
+
coreml = ["whisper-rs/coreml"]
|
16 |
+
cuda = ["whisper-rs/cuda"]
|
17 |
+
metal = ["whisper-rs/metal"]
|
18 |
+
simd = ["whisper-rs/simd"]
|
19 |
+
openblas = ["whisper-rs/openblas"]
|
20 |
+
opencl = ["whisper-rs/opencl"]
|
21 |
+
|
22 |
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
23 |
|
24 |
[dependencies]
|
|
|
31 |
|
32 |
[dependencies.whisper-rs]
|
33 |
git = "https://github.com/mingyang91/whisper-rs.git"
|
34 |
+
|
35 |
[dependencies.whisper-rs-sys]
|
36 |
git = "https://github.com/mingyang91/whisper-rs.git"
|
37 |
package = "whisper-rs-sys"
|