1c9a7c0b05
Co-authored-by: Michael Neale <michael.neale@gmail.com> Co-authored-by: Wendy Tang <wendytang@squareup.com> Co-authored-by: Jarrod Sibbison <72240382+jsibbison-square@users.noreply.github.com> Co-authored-by: Alex Hancock <alex.hancock@example.com> Co-authored-by: Alex Hancock <alexhancock@block.xyz> Co-authored-by: Lifei Zhou <lifei@squareup.com> Co-authored-by: Wes <141185334+wesrblock@users.noreply.github.com> Co-authored-by: Max Novich <maksymstepanenko1990@gmail.com> Co-authored-by: Zaki Ali <zaki@squareup.com> Co-authored-by: Salman Mohammed <smohammed@squareup.com> Co-authored-by: Kalvin C <kalvinnchau@users.noreply.github.com> Co-authored-by: Alec Thomas <alec@swapoff.org> Co-authored-by: lily-de <119957291+lily-de@users.noreply.github.com> Co-authored-by: kalvinnchau <kalvin@block.xyz> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Rizel Scarlett <rizel@squareup.com> Co-authored-by: bwrage <bwrage@squareup.com> Co-authored-by: Kalvin Chau <kalvin@squareup.com> Co-authored-by: Alice Hau <110418948+ahau-square@users.noreply.github.com> Co-authored-by: Alistair Gray <ajgray@stripe.com> Co-authored-by: Nahiyan Khan <nahiyan.khan@gmail.com> Co-authored-by: Alex Hancock <alexhancock@squareup.com> Co-authored-by: Nahiyan Khan <nahiyan@squareup.com> Co-authored-by: marcelle <1852848+laanak08@users.noreply.github.com> Co-authored-by: Yingjie He <yingjiehe@block.xyz> Co-authored-by: Yingjie He <yingjiehe@squareup.com> Co-authored-by: Lily Delalande <ldelalande@block.xyz> Co-authored-by: Adewale Abati <acekyd01@gmail.com> Co-authored-by: Ebony Louis <ebony774@gmail.com> Co-authored-by: Angie Jones <jones.angie@gmail.com> Co-authored-by: Ebony Louis <55366651+EbonyLouis@users.noreply.github.com>
21 lines
758 B
Rust
21 lines
758 B
Rust
use criterion::{black_box, criterion_group, criterion_main, Criterion};
|
|
use goose::token_counter::TokenCounter;
|
|
|
|
fn benchmark_tokenization(c: &mut Criterion) {
|
|
let lengths = [1_000, 5_000, 10_000, 50_000, 100_000, 124_000, 200_000];
|
|
let tokenizer_names = ["Xenova--gpt-4o", "Xenova--claude-tokenizer"];
|
|
|
|
for tokenizer_name in tokenizer_names {
|
|
let counter = TokenCounter::new(tokenizer_name);
|
|
for &length in &lengths {
|
|
let text = "hello ".repeat(length);
|
|
c.bench_function(&format!("{}_{}_tokens", tokenizer_name, length), |b| {
|
|
b.iter(|| counter.count_tokens(black_box(&text)))
|
|
});
|
|
}
|
|
}
|
|
}
|
|
|
|
criterion_group!(benches, benchmark_tokenization);
|
|
criterion_main!(benches);
|