Documentation
¶
Index ¶
Constants ¶
View Source
const ( EnvOpenAIAPIKey = "OPENAI_API_KEY" EnvOpenAIKey = "OPENAI_KEY" // Alternative env var name )
Environment variable names for OpenAI configuration.
View Source
const (
// DefaultModel is the recommended default model (fast and capable)
DefaultModel = "gpt-4o-mini"
)
Variables ¶
View Source
var ErrUnknownModel = fmt.Errorf("unknown model")
ErrUnknownModel is returned when a model ID is not in the registry.
Functions ¶
func DefaultOptions ¶ added in v0.12.0
DefaultOptions returns the default options for OpenAI. API key is read from OPENAI_API_KEY or OPENAI_KEY environment variables.
func MaybeRegister ¶ added in v0.13.0
MaybeRegister registers the OpenAI provider if an API key is available. Checks OPENAI_API_KEY and OPENAI_KEY environment variables.
Types ¶
type Provider ¶
type Provider struct {
// contains filtered or unexported fields
}
Provider implements the OpenAI LLM backend.
func New ¶
New creates a new OpenAI provider. Options are applied on top of DefaultOptions().
Example usage:
// Use defaults (reads from OPENAI_API_KEY or OPENAI_KEY env)
p := openai.New()
// Explicit static key
p := openai.New(llm.WithAPIKey("sk-..."))
// Custom env var
p := openai.New(llm.APIKeyFromEnv("MY_OPENAI_KEY"))
// Dynamic key (e.g., from secret manager)
p := openai.New(llm.WithAPIKeyFunc(func(ctx context.Context) (string, error) {
return secretManager.Get(ctx, "openai-key")
}))
func (*Provider) CreateStream ¶
func (p *Provider) CreateStream(ctx context.Context, opts llm.StreamOptions) (<-chan llm.StreamEvent, error)
func (*Provider) DefaultModel ¶
DefaultModel returns the configured default model ID.
func (*Provider) WithDefaultModel ¶
WithDefaultModel sets the default model to use.
Click to show internal directories.
Click to hide internal directories.