Skip to content

Commit 17d5760

Browse files
committed
fix: byok compatibility
1 parent 1183277 commit 17d5760

2 files changed

Lines changed: 29 additions & 5 deletions

File tree

internal/services/toolkit/client/client_v2.go

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,26 @@ func NewAIClientV2(
6363
logger *logger.Logger,
6464
) *AIClientV2 {
6565
database := db.Database("paperdebugger")
66+
67+
llmProvider := &models.LLMProviderConfig{
68+
APIKey: cfg.OpenAIAPIKey,
69+
}
70+
71+
var baseUrl string
72+
var apiKey string
73+
if llmProvider != nil && llmProvider.IsCustom() {
74+
baseUrl = cfg.InferenceBaseURL + "/openai"
75+
apiKey = cfg.OpenAIAPIKey
76+
} else {
77+
baseUrl = cfg.InferenceBaseURL + "/openrouter"
78+
apiKey = cfg.InferenceAPIKey
79+
}
80+
6681
oaiClient := openai.NewClient(
67-
option.WithBaseURL(cfg.InferenceBaseURL+"/openrouter"),
68-
option.WithAPIKey(cfg.InferenceAPIKey),
82+
option.WithBaseURL(baseUrl),
83+
option.WithAPIKey(apiKey),
6984
)
70-
CheckOpenAIWorksV2(oaiClient, logger)
85+
CheckOpenAIWorksV2(oaiClient, llmProvider, logger)
7186

7287
toolRegistry := initializeToolkitV2(db, projectService, cfg, logger)
7388
toolCallHandler := handler.NewToolCallHandlerV2(toolRegistry)

internal/services/toolkit/client/utils_v2.go

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import (
1212
"paperdebugger/internal/libs/db"
1313
"paperdebugger/internal/libs/logger"
1414
"paperdebugger/internal/services"
15+
"paperdebugger/internal/models"
1516
"paperdebugger/internal/services/toolkit/registry"
1617
"paperdebugger/internal/services/toolkit/tools/xtramcp"
1718
chatv2 "paperdebugger/pkg/gen/api/chat/v2"
@@ -87,13 +88,21 @@ func getDefaultParamsV2(modelSlug string, toolRegistry *registry.ToolRegistryV2)
8788
}
8889
}
8990

90-
func CheckOpenAIWorksV2(oaiClient openaiv3.Client, logger *logger.Logger) {
91+
func CheckOpenAIWorksV2(oaiClient openaiv3.Client, llmProvider *models.LLMProviderConfig, logger *logger.Logger) {
9192
logger.Info("[AI Client V2] checking if openai client works")
93+
94+
var model string
95+
if llmProvider != nil && llmProvider.IsCustom() {
96+
model = "gpt-5-nano"
97+
} else {
98+
model = "openai/gpt-5-nano"
99+
}
100+
92101
chatCompletion, err := oaiClient.Chat.Completions.New(context.TODO(), openaiv3.ChatCompletionNewParams{
93102
Messages: []openaiv3.ChatCompletionMessageParamUnion{
94103
openaiv3.UserMessage("Say 'openai client works'"),
95104
},
96-
Model: "openai/gpt-5-nano",
105+
Model: model,
97106
})
98107
if err != nil {
99108
logger.Errorf("[AI Client V2] openai client does not work: %v", err)

0 commit comments

Comments
 (0)