Spaces:
Running
on
CPU Upgrade
Running
on
CPU Upgrade
fix: multimodal on TGI endpoint type (#1491)
Browse files
src/lib/server/endpoints/tgi/endpointTgi.ts
CHANGED
@@ -23,8 +23,8 @@ export const endpointTgiParametersSchema = z.object({
|
|
23 |
supportedMimeTypes: ["image/jpeg", "image/webp"],
|
24 |
preferredMimeType: "image/webp",
|
25 |
maxSizeInMB: 5,
|
26 |
-
maxWidth:
|
27 |
-
maxHeight:
|
28 |
}),
|
29 |
})
|
30 |
.default({}),
|
@@ -81,22 +81,13 @@ export function endpointTgi(input: z.input<typeof endpointTgiParametersSchema>):
|
|
81 |
};
|
82 |
}
|
83 |
|
84 |
-
const whiteImage = {
|
85 |
-
mime: "image/png",
|
86 |
-
image: Buffer.from(
|
87 |
-
"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAAQABADAREAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD+/igAoAKACgD/2Q==",
|
88 |
-
"base64"
|
89 |
-
),
|
90 |
-
};
|
91 |
-
|
92 |
async function prepareMessage(
|
93 |
isMultimodal: boolean,
|
94 |
message: EndpointMessage,
|
95 |
imageProcessor: ImageProcessor
|
96 |
): Promise<EndpointMessage> {
|
97 |
if (!isMultimodal) return message;
|
98 |
-
|
99 |
-
const files = await Promise.all(message.files?.map(imageProcessor) ?? [whiteImage]);
|
100 |
const markdowns = files.map(
|
101 |
(file) => `})`
|
102 |
);
|
|
|
23 |
supportedMimeTypes: ["image/jpeg", "image/webp"],
|
24 |
preferredMimeType: "image/webp",
|
25 |
maxSizeInMB: 5,
|
26 |
+
maxWidth: 378,
|
27 |
+
maxHeight: 980,
|
28 |
}),
|
29 |
})
|
30 |
.default({}),
|
|
|
81 |
};
|
82 |
}
|
83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
async function prepareMessage(
|
85 |
isMultimodal: boolean,
|
86 |
message: EndpointMessage,
|
87 |
imageProcessor: ImageProcessor
|
88 |
): Promise<EndpointMessage> {
|
89 |
if (!isMultimodal) return message;
|
90 |
+
const files = await Promise.all(message.files?.map(imageProcessor) ?? []);
|
|
|
91 |
const markdowns = files.map(
|
92 |
(file) => `})`
|
93 |
);
|
src/lib/server/textGeneration/generate.ts
CHANGED
@@ -17,6 +17,7 @@ export async function* generate(
|
|
17 |
continueMessage: isContinue,
|
18 |
generateSettings: assistant?.generateSettings,
|
19 |
toolResults,
|
|
|
20 |
})) {
|
21 |
// text generation completed
|
22 |
if (output.generated_text) {
|
|
|
17 |
continueMessage: isContinue,
|
18 |
generateSettings: assistant?.generateSettings,
|
19 |
toolResults,
|
20 |
+
isMultimodal: model.multimodal,
|
21 |
})) {
|
22 |
// text generation completed
|
23 |
if (output.generated_text) {
|