-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
77 lines (63 loc) · 1.93 KB
/
Copy pathCargo.toml
File metadata and controls
77 lines (63 loc) · 1.93 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
[workspace]
members = [
"whisperforge-core",
"whisperforge-align",
"whisperforge-diarize",
"whisperforge",
]
resolver = "2"
[workspace.package]
version = "0.5.5"
edition = "2024"
license = "MIT"
repository = "https://github.com/bevsxyz/WhisperForge"
homepage = "https://github.com/bevsxyz/WhisperForge"
authors = ["bevsxyz"]
rust-version = "1.95"
[workspace.dependencies]
# Core ML framework
burn = { version = "0.21.0", features = ["std", "burn-flex"] }
burn-flex = "0.21.0"
# Audio processing
rubato = "3.0"
rustfft = "6.2"
cpal = "0.15"
ringbuf = "0.4"
# Text processing.
# default-features disabled to drop the `esaxx_fast` feature, which pulls esaxx-rs —
# a C++ build-dep that hardcodes `.static_crt(true)`, forcing the static CRT (/MT) and
# breaking the Windows MSVC link against ONNX Runtime's dynamic-CRT (/MD) prebuilt lib
# (see .cargo/config.toml and pykeio/ort #329). esaxx_fast is training-only; we only
# load + decode. `onig` keeps the same regex backend as the default → zero behavior change.
tokenizers = { version = "0.23", default-features = false, features = ["onig"] }
# Serialization and CLI
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
clap = { version = "4.4", features = ["derive"] }
# Error handling and utilities
anyhow = "1.0"
thiserror = "2.0"
# Compression (for decoding quality metrics)
flate2 = "1.0"
# RNG (for temperature sampling in decoding)
rand = "0.10"
# ONNX VAD inference
ort = { version = "=2.0.0-rc.10", default-features = false, features = ["std", "download-binaries", "copy-dylibs"] }
# Terminal UI and logging
crossterm = "0.28"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
# Development dependencies
tempfile = "3.8"
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "abort"
[profile.bench]
opt-level = 3
debug = true
# The profile that 'dist' will build with
[profile.dist]
inherits = "release"
lto = "thin"