Skip to content

Commit 6bd884c

Browse files
committed
feat: add llama_sampler_init_top_n_sigma module function
1 parent 95de4e4 commit 6bd884c

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

ext/llama_cpp/llama_cpp.c

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3367,6 +3367,20 @@ static VALUE rb_llama_sampler_init_xtc(VALUE self, VALUE p, VALUE t, VALUE min_k
33673367
return TypedData_Wrap_Struct(rb_cLlamaSampler, &llama_sampler_data_type, sampler);
33683368
}
33693369

3370+
/**
3371+
* @overload llama_sampler_init_top_n_sigma(n)
3372+
* @param [Float] n
3373+
* @return [LlamaSampler]
3374+
*/
3375+
static VALUE rb_llama_sampler_init_top_n_sigma(VALUE self, VALUE n) {
3376+
if (!RB_FLOAT_TYPE_P(n)) {
3377+
rb_raise(rb_eArgError, "n must be a Float");
3378+
return Qnil;
3379+
}
3380+
struct llama_sampler* sampler = llama_sampler_init_top_n_sigma(NUM2DBL(n));
3381+
return TypedData_Wrap_Struct(rb_cLlamaSampler, &llama_sampler_data_type, sampler);
3382+
}
3383+
33703384
/**
33713385
* @overload llama_sampler_init_mirostat(n_vocab, seed, tau, eta, m)
33723386
* @param [Integer] n_vocab
@@ -5047,6 +5061,9 @@ void Init_llama_cpp(void) {
50475061
/* llama_sampler_init_xtc */
50485062
rb_define_module_function(rb_mLlamaCpp, "llama_sampler_init_xtc", rb_llama_sampler_init_xtc, 4);
50495063

5064+
/* llama_sampler_init_top_n_sigma */
5065+
rb_define_module_function(rb_mLlamaCpp, "llama_sampler_init_top_n_sigma", rb_llama_sampler_init_top_n_sigma, 1);
5066+
50505067
/* llama_sampler_init_mirostat */
50515068
rb_define_module_function(rb_mLlamaCpp, "llama_sampler_init_mirostat", rb_llama_sampler_init_mirostat, 5);
50525069

0 commit comments

Comments
 (0)