package provider import "context" // AIProvider defines the interface for AI model providers type AIProvider interface { // Chat sends a synchronous chat request Chat(ctx context.Context, req *ChatRequest) (*ChatResponse, error) // ChatStream sends a streaming chat request, returning chunks via channel ChatStream(ctx context.Context, req *ChatRequest) (<-chan *StreamChunk, error) // Name returns the provider name Name() string }