// reserve worst-case graph
if (!hparams.vocab_only) {
- uint32_t n_seqs = 1; // TODO: worst-case number of sequences
- uint32_t n_tokens = std::min(cparams.n_ctx, cparams.n_ubatch);
+ const uint32_t n_seqs = 1; // TODO: worst-case number of sequences
+ const uint32_t n_tokens = std::min(cparams.n_ctx, cparams.n_ubatch);
llama_token token = model.vocab.token_bos(); // not actually used by llama_build_graph, but required to choose between token and embedding inputs graph
+ // restore later
+ // TODO: something cleaner
+ const auto n_outputs_save = n_outputs;
+
// max number of outputs
n_outputs = n_tokens;
}
}
+ n_outputs = n_outputs_save;
+
for (size_t i = 0; i < backend_ptrs.size(); ++i) {
ggml_backend_t backend = backend_ptrs[i];
ggml_backend_buffer_type_t buft = backend_buft[i];