summaryrefslogtreecommitdiff
path: root/internal/llm/openrouter.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-03-02 14:34:46 +0200
committerPaul Buetow <paul@buetow.org>2026-03-02 14:34:46 +0200
commit986456be623ba1974fdf06bfdfcaeffd8cd13bb7 (patch)
treeada0248bc5dfc32a7355dc088742089262a270fd /internal/llm/openrouter.go
parent3e3d1cb988b457a55425a7334f8f5a91cc939666 (diff)
llm: extract shared doJSON and logStart helpers (task 409)
Diffstat (limited to 'internal/llm/openrouter.go')
-rw-r--r--internal/llm/openrouter.go20
1 files changed, 2 insertions, 18 deletions
diff --git a/internal/llm/openrouter.go b/internal/llm/openrouter.go
index 8aae6b8..19c2f6c 100644
--- a/internal/llm/openrouter.go
+++ b/internal/llm/openrouter.go
@@ -2,7 +2,6 @@
package llm
import (
- "bytes"
"context"
"encoding/json"
"errors"
@@ -159,11 +158,7 @@ func (c openRouterClient) logf(format string, args ...any) {
}
func (c openRouterClient) logStart(stream bool, o Options, messages []Message) {
- logMessages := make([]struct{ Role, Content string }, len(messages))
- for i, m := range messages {
- logMessages[i] = struct{ Role, Content string }{m.Role, m.Content}
- }
- c.chatLogger.LogStart(stream, o.Model, o.Temperature, o.MaxTokens, o.Stop, logMessages)
+ logStartMessages(c.chatLogger, stream, o, messages)
}
func (c openRouterClient) doJSON(ctx context.Context, url string, body []byte) (*http.Response, error) {
@@ -185,16 +180,5 @@ func (c openRouterClient) doJSONWithAccept(ctx context.Context, url string, body
}
func (c openRouterClient) doJSONWithHeaders(ctx context.Context, url string, body []byte, headers map[string]string, accept string) (*http.Response, error) {
- req, err := http.NewRequestWithContext(ctx, http.MethodPost, url, bytes.NewReader(body))
- if err != nil {
- return nil, err
- }
- req.Header.Set("Content-Type", "application/json")
- if strings.TrimSpace(accept) != "" {
- req.Header.Set("Accept", accept)
- }
- for k, v := range headers {
- req.Header.Set(k, v)
- }
- return c.httpClient.Do(req)
+ return doJSONRequest(ctx, c.httpClient, url, body, headers, accept)
}