@@ -250,7 +250,7 @@ export class OpenAIContentConverter {
250250 const mergedMessages =
251251 this . mergeConsecutiveAssistantMessages ( cleanedMessages ) ;
252252
253- return this . filterEmptyMessages ( mergedMessages ) ;
253+ return mergedMessages ;
254254 }
255255
256256 /**
@@ -1199,43 +1199,4 @@ export class OpenAIContentConverter {
11991199
12001200 return merged ;
12011201 }
1202-
1203- /**
1204- * Filter out messages that have neither content nor tool_calls
1205- * to prevent API errors
1206- */
1207- private filterEmptyMessages (
1208- messages : OpenAI . Chat . ChatCompletionMessageParam [ ] ,
1209- ) : OpenAI . Chat . ChatCompletionMessageParam [ ] {
1210- return messages . filter ( ( message ) => {
1211- // Keep system, user, and tool messages if they have content
1212- if (
1213- message . role === 'system' ||
1214- message . role === 'user' ||
1215- message . role === 'tool'
1216- ) {
1217- return (
1218- message . content !== null &&
1219- message . content !== undefined &&
1220- message . content !== ''
1221- ) ;
1222- }
1223-
1224- // For assistant messages, keep if they have content or tool_calls
1225- if ( message . role === 'assistant' ) {
1226- const hasContent =
1227- message . content !== null &&
1228- message . content !== undefined &&
1229- message . content !== '' ;
1230- const hasToolCalls =
1231- 'tool_calls' in message &&
1232- message . tool_calls &&
1233- message . tool_calls . length > 0 ;
1234- return hasContent || hasToolCalls ;
1235- }
1236-
1237- // Keep other message types by default
1238- return true ;
1239- } ) ;
1240- }
12411202}
0 commit comments