package chatter import ( "context" ) // Role defines who sent the message type Role string const ( RoleSystem Role = "system" RoleUser Role = "user" RoleAssistant Role = "assistant" ) // Message represents a single turn in a conversation type Message struct { Role Role Content string } type ChatAdapter interface { GenerateStructured(ctx context.Context, messages []Message, target interface{}) error } // PredictionConfig allows for per-request overrides type PredictionConfig struct { Temperature float64 MaxTokens int Stop []string }