Skip to content

Commit cec64bb

Browse files
fix: openai use responses column migration added and minor fixes
1 parent 6110981 commit cec64bb

File tree

4 files changed

+46
-2
lines changed

4 files changed

+46
-2
lines changed

core/schemas/mux.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -809,6 +809,7 @@ func (br *BifrostResponse) ToResponsesOnly() {
809809

810810
// Clear Chat fields after conversion
811811
br.Choices = nil
812+
br.Object = "response"
812813
br.ExtraFields.RequestType = ResponsesRequest
813814
}
814815

core/schemas/providers/openai/text.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,11 @@ func (r *OpenAITextCompletionRequest) ToBifrostRequest() *schemas.BifrostTextCom
2929
return nil
3030
}
3131

32+
provider, model := schemas.ParseModelString(r.Model, schemas.OpenAI)
33+
3234
return &schemas.BifrostTextCompletionRequest{
33-
Provider: schemas.OpenAI,
34-
Model: r.Model,
35+
Provider: provider,
36+
Model: model,
3537
Input: r.Prompt,
3638
Params: &r.TextCompletionParameters,
3739
}

framework/configstore/migrations.go

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ func triggerMigrations(ctx context.Context, db *gorm.DB) error {
2222
if err := migrationAddVirtualKeyProviderConfigTable(ctx, db); err != nil {
2323
return err
2424
}
25+
if err := migrationAddOpenAIUseResponsesAPIColumn(ctx, db); err != nil {
26+
return err
27+
}
2528
return nil
2629
}
2730

@@ -282,3 +285,25 @@ func migrationAddVirtualKeyProviderConfigTable(ctx context.Context, db *gorm.DB)
282285
}
283286
return nil
284287
}
288+
289+
func migrationAddOpenAIUseResponsesAPIColumn(ctx context.Context, db *gorm.DB) error {
290+
m := migration.New(db, migration.DefaultOptions, []*migration.Migration{{
291+
ID: "add_open_ai_use_responses_api_column",
292+
Migrate: func(tx *gorm.DB) error {
293+
tx = tx.WithContext(ctx)
294+
migrator := tx.Migrator()
295+
296+
if !migrator.HasColumn(&TableKey{}, "open_ai_use_responses_api") {
297+
if err := migrator.AddColumn(&TableKey{}, "open_ai_use_responses_api"); err != nil {
298+
return err
299+
}
300+
}
301+
return nil
302+
},
303+
}})
304+
err := m.Migrate()
305+
if err != nil {
306+
return fmt.Errorf("error while running db migration: %s", err.Error())
307+
}
308+
return nil
309+
}

plugins/logging/main.go

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -396,6 +396,22 @@ func (p *LoggerPlugin) PostHook(ctx *context.Context, result *schemas.BifrostRes
396396
}
397397
}
398398
}
399+
if result.ResponsesResponse != nil {
400+
outputMessages := result.ResponsesResponse.Output
401+
if len(outputMessages) > 0 {
402+
chatMessages := schemas.ToChatMessages(outputMessages)
403+
if len(chatMessages) > 0 {
404+
lastMessage := chatMessages[len(chatMessages)-1]
405+
updateData.OutputMessage = &lastMessage
406+
407+
// Extract tool calls if present
408+
if lastMessage.ChatAssistantMessage != nil &&
409+
lastMessage.ChatAssistantMessage.ToolCalls != nil {
410+
updateData.ToolCalls = lastMessage.ChatAssistantMessage.ToolCalls
411+
}
412+
}
413+
}
414+
}
399415
if result.Data != nil {
400416
updateData.EmbeddingOutput = result.Data
401417
}

0 commit comments

Comments
 (0)