refactor: Move text attachments up before the message content in chat completions payload (#23406)
This commit is contained in:
@@ -824,26 +824,6 @@ export class ChatService {
|
|||||||
|
|
||||||
const contentParts: ApiChatMessageContentPart[] = [];
|
const contentParts: ApiChatMessageContentPart[] = [];
|
||||||
|
|
||||||
if (message.content) {
|
|
||||||
contentParts.push({
|
|
||||||
type: ContentPartType.TEXT,
|
|
||||||
text: message.content
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Include images from all messages
|
|
||||||
const imageFiles = message.extra.filter(
|
|
||||||
(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraImageFile =>
|
|
||||||
extra.type === AttachmentType.IMAGE
|
|
||||||
);
|
|
||||||
|
|
||||||
for (const image of imageFiles) {
|
|
||||||
contentParts.push({
|
|
||||||
type: ContentPartType.IMAGE_URL,
|
|
||||||
image_url: { url: image.base64Url }
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
const textFiles = message.extra.filter(
|
const textFiles = message.extra.filter(
|
||||||
(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraTextFile =>
|
(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraTextFile =>
|
||||||
extra.type === AttachmentType.TEXT
|
extra.type === AttachmentType.TEXT
|
||||||
@@ -869,6 +849,26 @@ export class ChatService {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (message.content) {
|
||||||
|
contentParts.push({
|
||||||
|
type: ContentPartType.TEXT,
|
||||||
|
text: message.content
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// Include images from all messages
|
||||||
|
const imageFiles = message.extra.filter(
|
||||||
|
(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraImageFile =>
|
||||||
|
extra.type === AttachmentType.IMAGE
|
||||||
|
);
|
||||||
|
|
||||||
|
for (const image of imageFiles) {
|
||||||
|
contentParts.push({
|
||||||
|
type: ContentPartType.IMAGE_URL,
|
||||||
|
image_url: { url: image.base64Url }
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
const audioFiles = message.extra.filter(
|
const audioFiles = message.extra.filter(
|
||||||
(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraAudioFile =>
|
(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraAudioFile =>
|
||||||
extra.type === AttachmentType.AUDIO
|
extra.type === AttachmentType.AUDIO
|
||||||
|
|||||||
Reference in New Issue
Block a user