diff --git a/llm/gguf.go b/llm/gguf.go index a283b5386..9339488e0 100644 --- a/llm/gguf.go +++ b/llm/gguf.go @@ -810,9 +810,10 @@ func ggufWriteTensorInfo(ws io.Writer, t *Tensor) error { func ggufWriteTensor(ws io.Writer, t *Tensor, offset int) error { slog.Debug(t.Name, "kind", t.Kind, "shape", t.Shape, "offset", t.Offset) - if err := binary.Write(ws, binary.LittleEndian, bytes.Repeat([]byte{0}, int(ggufPadding(int64(offset), 32)))); err != nil { + fmt.Println(int(ggufPadding(int64(offset), 32))) + /* if err := binary.Write(ws, binary.LittleEndian, bytes.Repeat([]byte{0}, int(ggufPadding(int64(offset), 32)))); err != nil { return err - } + } */ _, err := t.WriteTo(ws) return err diff --git a/llm/gguf_test.go b/llm/gguf_test.go index 2445d3111..5c4ee805d 100644 --- a/llm/gguf_test.go +++ b/llm/gguf_test.go @@ -54,6 +54,7 @@ func TestGGUFRewrite(t *testing.T) { if err != nil { t.Fatal(err) } + //t.Fatal("FULL SIZE JFAKFJJEFJAJFLAEJJAFAJKLFJ", n) if diff, diff2, ok := compareGGML(n, ggml2, ggml, temp, f); !ok { if cmp.Diff(diff, diff2) != "" { diff --git a/server/model.go b/server/model.go index c5522d9f3..8cc5f4e35 100644 --- a/server/model.go +++ b/server/model.go @@ -260,7 +260,7 @@ func parseFromFile(ctx context.Context, file *os.File, digest string, fn func(ap WriterTo: &llm.TensorWriter{ // This needs offset + tensors.Offset int64(tensor.Offset) to be correct - Reader: io.NewSectionReader(file, int64(tensor.Offset), int64(tensor.Size())), + Reader: io.NewSectionReader(file, offset + int64(tensor.Offset), int64(tensor.Size())), }, }) }