From ae5358ff65fbef77dce61c8441f81bc7538eb9a2 Mon Sep 17 00:00:00 2001 From: LordMathis Date: Wed, 12 Nov 2025 23:49:34 +0100 Subject: [PATCH] Change FlashAttn field type to string in LlamaServerOptions --- pkg/backends/llama.go | 2 +- pkg/backends/llama_test.go | 9 ++++----- pkg/validation/validation_test.go | 22 ---------------------- 3 files changed, 5 insertions(+), 28 deletions(-) diff --git a/pkg/backends/llama.go b/pkg/backends/llama.go index b3e561b..dc46ec4 100644 --- a/pkg/backends/llama.go +++ b/pkg/backends/llama.go @@ -41,7 +41,7 @@ type LlamaServerOptions struct { BatchSize int `json:"batch_size,omitempty"` UBatchSize int `json:"ubatch_size,omitempty"` Keep int `json:"keep,omitempty"` - FlashAttn bool `json:"flash_attn,omitempty"` + FlashAttn string `json:"flash_attn,omitempty"` NoPerf bool `json:"no_perf,omitempty"` Escape bool `json:"escape,omitempty"` NoEscape bool `json:"no_escape,omitempty"` diff --git a/pkg/backends/llama_test.go b/pkg/backends/llama_test.go index 50d9932..60b3c9d 100644 --- a/pkg/backends/llama_test.go +++ b/pkg/backends/llama_test.go @@ -33,12 +33,11 @@ func TestLlamaCppBuildCommandArgs_BooleanFields(t *testing.T) { { name: "multiple booleans", options: backends.LlamaServerOptions{ - Verbose: true, - FlashAttn: true, - Mlock: false, - NoMmap: true, + Verbose: true, + Mlock: false, + NoMmap: true, }, - expected: []string{"--verbose", "--flash-attn", "--no-mmap"}, + expected: []string{"--verbose", "--no-mmap"}, excluded: []string{"--mlock"}, }, } diff --git a/pkg/validation/validation_test.go b/pkg/validation/validation_test.go index e447666..08ac8f0 100644 --- a/pkg/validation/validation_test.go +++ b/pkg/validation/validation_test.go @@ -239,25 +239,3 @@ func TestValidateInstanceOptions_MultipleFieldInjection(t *testing.T) { }) } } - -func TestValidateInstanceOptions_NonStringFields(t *testing.T) { - // Test that non-string fields don't interfere with validation - options := backends.Options{ - BackendType: backends.BackendTypeLlamaCpp, - LlamaServerOptions: &backends.LlamaServerOptions{ - Port: 8080, - GPULayers: 32, - CtxSize: 4096, - Temperature: 0.7, - TopK: 40, - TopP: 0.9, - Verbose: true, - FlashAttn: false, - }, - } - - err := options.ValidateInstanceOptions() - if err != nil { - t.Errorf("ValidateInstanceOptions with non-string fields should not error, got: %v", err) - } -}