23 lines
444 B
Go
23 lines
444 B
Go
package llm
|
|
|
|
import (
|
|
"context"
|
|
"iter"
|
|
)
|
|
|
|
type Provider interface {
|
|
Stream(ctx context.Context, req Request) (iter.Seq2[Event, error], error)
|
|
Caps() Caps
|
|
Name() string
|
|
}
|
|
|
|
type Caps struct {
|
|
ParallelToolCalls bool
|
|
UsageInStream bool
|
|
SystemRole string // "system" | "developer" | "" = eigenes Request-Feld
|
|
ExplicitCache bool
|
|
Reasoning bool
|
|
StrictSchemas bool
|
|
MaxContext int
|
|
SupportsImages bool
|
|
}
|