mirror of
https://github.com/ollama/ollama.git
synced 2025-05-03 06:20:22 +02:00
This package provides a way to convert JSON schemas to equivalent EBNF. It is intended to be a replacement to llama.cpp's schema_to_grammar. This is still an early version and does not yet support all JSON schema features. The to-do list includes: - minumum/maximum constraints on integer types - minLength/maxLength constraints on string types - defs and refs
23 lines
352 B
Go
23 lines
352 B
Go
//go:build go1.24
|
|
|
|
package grammar
|
|
|
|
import "testing"
|
|
|
|
func BenchmarkFromSchema(b *testing.B) {
|
|
for tt := range testCases(b) {
|
|
b.Run("", func(b *testing.B) {
|
|
s := []byte(tt.schema)
|
|
|
|
b.ReportAllocs()
|
|
for b.Loop() {
|
|
_, err := FromSchema(nil, s)
|
|
if err != nil {
|
|
b.Fatalf("GrammarFromSchema: %v", err)
|
|
}
|
|
}
|
|
})
|
|
return
|
|
}
|
|
}
|