use ai_dataloader::iterable::DataLoader;
#[cfg(not(feature = "tch"))]
fn main() {
let dataset = vec![
(0, vec![1, 23, 4, 0]),
(1, vec![4, 0, 0, 0]),
(1, vec![8, 23, 12, 3]),
(0, vec![2, 45, 4, 0]),
];
let loader = DataLoader::builder(dataset).batch_size(2).shuffle().build();
for (label, text) in &loader {
dbg!(label);
dbg!(text);
}
}
#[cfg(feature = "tch")]
use ai_dataloader::collate::TorchCollate;
#[cfg(feature = "tch")]
fn main() {
let dataset = vec![
(0, vec![1, 23, 4, 0]),
(1, vec![4, 0, 0, 0]),
(1, vec![8, 23, 12, 3]),
(0, vec![2, 45, 4, 0]),
];
let loader = DataLoader::builder(dataset)
.batch_size(2)
.shuffle()
.collate_fn(TorchCollate)
.build();
for (_label, text) in &loader {
dbg!(_label);
dbg!(text);
}
}