@@ -217,7 +217,7 @@ func toMessages(request types.CompletionRequest, compat bool) (result []openai.C
217
217
msgs []types.CompletionMessage
218
218
)
219
219
220
- if request .InternalSystemPrompt == nil || * request .InternalSystemPrompt {
220
+ if ! compat && ( request .InternalSystemPrompt == nil || * request .InternalSystemPrompt ) {
221
221
systemPrompts = append (systemPrompts , system .InternalSystemPrompt )
222
222
}
223
223
@@ -236,25 +236,6 @@ func toMessages(request types.CompletionRequest, compat bool) (result []openai.C
236
236
})
237
237
}
238
238
239
- if compat {
240
- // This is terrible hack to deal with APIs that strictly want: (system, user | user) (assistant, user)* assistant?
241
- // Two scenarios where this breaks with GPTScript is just sending system, or sending system, assistant
242
-
243
- // Don't send just a system message
244
- if len (msgs ) == 1 && msgs [0 ].Role == types .CompletionMessageRoleTypeSystem {
245
- msgs [0 ].Role = types .CompletionMessageRoleTypeUser
246
- }
247
-
248
- // Don't send system, assistant. If so, insert a user message that just has "."
249
- if len (msgs ) > 1 && msgs [0 ].Role == types .CompletionMessageRoleTypeSystem &&
250
- msgs [1 ].Role == types .CompletionMessageRoleTypeAssistant {
251
- msgs = slices .Insert (msgs , 1 , types.CompletionMessage {
252
- Role : types .CompletionMessageRoleTypeUser ,
253
- Content : types .Text ("." ),
254
- })
255
- }
256
- }
257
-
258
239
for _ , message := range msgs {
259
240
chatMessage := openai.ChatCompletionMessage {
260
241
Role : string (message .Role ),
0 commit comments