#nlp #machine-learning #sentence-piece #tokenizer

no-std sentencepiece-model

SentencePiece model parser generated from the SentencePiece protobuf definition

5 releases

0.1.4 Oct 8, 2024
0.1.3 Jul 16, 2024
0.1.2 Jul 4, 2024
0.1.1 Jul 2, 2024
0.1.0 Nov 18, 2023

#1251 in Parser implementations

Download history 2/week @ 2024-07-28 27/week @ 2024-09-15 6/week @ 2024-09-22 21/week @ 2024-09-29 152/week @ 2024-10-06 14/week @ 2024-10-13

348 downloads per month

BSD-2-Clause

8KB
78 lines

sentencepiece-model

Crates.io Docs.rs

SentencePiece model parser generated from the SentencePiece protobuf definition.

use sentencepiece_model::SentencePieceModel;

let model = SentencePieceModel::from_file("tests/t5-spiece.model")?;
assert_eq!(model.pieces.len(), 32000);
assert_eq!(model.trainer()?.unk_id(), 2);

Usage

[dependencies]
sentencepiece-model = "0.1"

sentencepiece-model uses prost-build and protox to generate Rust code from the SentencePiece protobuf definition at build time. protoc is not required.


lib.rs:

SentencePiece model parser generated from the SentencePiece protobuf definition.

See SentencePieceModel for the entry point for parsing and accessing sentencepiece models.

use sentencepiece_model::SentencePieceModel;

let model = SentencePieceModel::from_file("tests/t5-spiece.model")?;
assert_eq!(model.pieces.len(), 32000);
assert_eq!(model.trainer().unwrap().unk_id(), 2);

Dependencies

~0.2–2.4MB
~33K SLoC