]> git.djapps.eu Git - pkg/ggml/sources/llama.cpp/commitdiff
DRY: Fixes clone functionality (#10192)
authorwwoodsTM <redacted>
Thu, 7 Nov 2024 15:20:25 +0000 (08:20 -0700)
committerGitHub <redacted>
Thu, 7 Nov 2024 15:20:25 +0000 (16:20 +0100)
src/llama-sampling.cpp

index c2cfe0a77ad842bd2f303a860ff10a56aa811706..fd8ca8a9edfac5298c7550ce4f821c2bc78e194e 100644 (file)
@@ -1876,8 +1876,11 @@ static void llama_sampler_dry_reset(struct llama_sampler * smpl) {
 static struct llama_sampler * llama_sampler_dry_clone(const struct llama_sampler * smpl) {
     const auto * ctx = (llama_sampler_dry *) smpl->ctx;
 
-    // nullptr is passed as vocab because it is only needed for raw sequence breaker processing, which we have already done and will be copying
-    auto * result = llama_sampler_init_dry(nullptr, ctx->dry_multiplier, ctx->dry_base, ctx->dry_allowed_length, ctx->dry_penalty_last_n, NULL, 0);
+    llama_vocab dummy_vocab;
+
+    // dummy vocab is passed because it is only needed for raw sequence breaker processing, which we have already done and will simply be copying
+    auto * result = llama_sampler_init_dry_impl(dummy_vocab, ctx->total_context_size, ctx->dry_multiplier, ctx->dry_base, ctx->dry_allowed_length, ctx->dry_penalty_last_n, NULL, 0);
+
     // Copy the state, including the processed breakers
     {
         auto * result_ctx = (llama_sampler_dry *) result->ctx;