mirror of
https://github.com/Ed1s0nZ/CyberStrikeAI.git
synced 2026-08-18 17:07:21 +02:00
25 lines
660 B
Go
25 lines
660 B
Go
package openai
|
|
|
|
import (
|
|
"net/http"
|
|
|
|
"cyberstrike-ai/internal/config"
|
|
)
|
|
|
|
// NewEinoHTTPClient adds OpenAI-compatible request fixes and SSE sanitation.
|
|
// Claude channels use Eino's native agenticclaude model and never enter here.
|
|
func NewEinoHTTPClient(cfg *config.OpenAIConfig, base *http.Client) *http.Client {
|
|
if base == nil {
|
|
base = http.DefaultClient
|
|
}
|
|
cloned := *base
|
|
transport := base.Transport
|
|
if transport == nil {
|
|
transport = http.DefaultTransport
|
|
}
|
|
transport = &reasoningToolChoiceCompatRoundTripper{base: transport, cfg: cfg}
|
|
transport = &einoSSESanitizingRoundTripper{base: transport}
|
|
cloned.Transport = transport
|
|
return &cloned
|
|
}
|