2个版本
0.1.1 | 2024年5月7日 |
---|---|
0.1.0 | 2024年3月12日 |
#680 in 文本处理
19KB
305 行
syllarust
一个在Rust中本地实现的简单音节计数器。这是基于python-syllables团队的工作,该团队在Python中实现了相同的功能。
我的目标是给Rust带来同样的便利/简单性——并使用Rust的无畏并发模型来帮助提高音节计数生成的速度/质量。这意味着如果你正在尝试为大型NLP/LLM应用程序生成音节计数,其中速度很重要,这可能正是你需要的crate!
使用Rayon的并行代码片段
use syllarust::estimate_syllables;
use rayon::prelude::*;
fn main() {
let test_strs: Vec<&str> = vec![
"Apple",
"Tart",
"plate",
"Pontificate",
"Hello"
];
let start = Instant::now();
let results: Vec<usize> = test_strs.par_iter()
.map(|s| estimate_syllables(s))
.collect();
let stop = Instant::now();
println!("{:?}", stop - start);
println!("{:?}", results);
}
贡献/问题
这是一个正在进行的仓库。如果你有任何功能请求/发现错误,请给我留一个问题,我会尽力解决。我也欢迎合理的PR。
如果你是一个更有经验的Rust开发者,你发现任何低效之处,我将非常感激你的反馈。我是一个相对较新的Rustacean 🦀,全职作为一名Python原生ML工程师,因此我有时可能会做一些愚蠢的事情。
依赖项
~3.5–4.5MB
~79K SLoC