diff options
Diffstat (limited to 'internal/llm/openai.go')
| -rw-r--r-- | internal/llm/openai.go | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/internal/llm/openai.go b/internal/llm/openai.go index a119fe7..d475de0 100644 --- a/internal/llm/openai.go +++ b/internal/llm/openai.go @@ -110,11 +110,14 @@ func resolveOpenAITemperature(model string, configured *float64) *float64 { // Constructor (kept among the first functions by convention) // newOpenAI constructs an OpenAI client using explicit configuration values. // The apiKey may be empty; calls will fail until a valid key is supplied. -func newOpenAI(baseURL, model, apiKey string, defaultTemp *float64) Client { +// Following the Go idiom "return concrete types, accept interfaces", this +// returns openAIClient directly so callers keep full type information; the +// provider registry wraps it back into a Client at registration time. +func newOpenAI(baseURL, model, apiKey string, defaultTemp *float64) openAIClient { return newOpenAIWithTimeout(baseURL, model, apiKey, defaultTemp, 0) } -func newOpenAIWithTimeout(baseURL, model, apiKey string, defaultTemp *float64, timeoutSec int) Client { +func newOpenAIWithTimeout(baseURL, model, apiKey string, defaultTemp *float64, timeoutSec int) openAIClient { if strings.TrimSpace(baseURL) == "" { baseURL = "https://api.openai.com/v1" } |
