1#include "eddy/models/parakeet/parakeet_openvino.hpp"
2
3auto backend = std::make_shared<eddy::OpenVINOBackend>(
4 eddy::OpenVINOOptions{.device = "CPU"}
5);
6
7eddy::parakeet::ModelPaths paths{
8 .preprocessor = {.path = "models/parakeet/parakeet_melspectogram.xml"},
9 .encoder = {.path = "models/parakeet/parakeet_encoder.xml"},
10 .decoder = {.path = "models/parakeet/parakeet_decoder.xml"},
11 .joint = {.path = "models/parakeet/parakeet_joint.xml"},
12 .tokenizer_json = "models/parakeet/parakeet_vocab.json"
13};
14
15eddy::parakeet::RuntimeConfig cfg{
16 .device = "CPU",
17 .blank_token_id = 1024,
18 .duration_bins = {0, 1, 2, 3, 4}
19};
20
21auto model = eddy::parakeet::make_openvino_parakeet(backend, paths, cfg);
22model->warmup();
23
24// Transcribe audio
25eddy::parakeet::AudioSegment segment;
26segment.sample_rate = 16000;
27segment.pcm = /* your 16kHz mono float32 audio */;
28
29auto result = model->infer(segment, {});
30std::cout << "Transcription: " << result.text << "\n";