mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2025-10-27 08:21:30 +00:00
Handle legacy 'context' attachments (#16687)
This commit is contained in:
committed by
GitHub
parent
b617cfd289
commit
c9c1972e2c
Binary file not shown.
4
tools/server/webui/src/app.d.ts
vendored
4
tools/server/webui/src/app.d.ts
vendored
@@ -31,7 +31,8 @@ import type {
|
||||
DatabaseMessageExtraAudioFile,
|
||||
DatabaseMessageExtraImageFile,
|
||||
DatabaseMessageExtraTextFile,
|
||||
DatabaseMessageExtraPdfFile
|
||||
DatabaseMessageExtraPdfFile,
|
||||
DatabaseMessageExtraLegacyContext
|
||||
} from '$lib/types/database';
|
||||
|
||||
import type {
|
||||
@@ -73,6 +74,7 @@ declare global {
|
||||
DatabaseMessageExtraImageFile,
|
||||
DatabaseMessageExtraTextFile,
|
||||
DatabaseMessageExtraPdfFile,
|
||||
DatabaseMessageExtraLegacyContext,
|
||||
SettingsConfigValue,
|
||||
SettingsFieldConfig,
|
||||
SettingsConfigType,
|
||||
|
||||
@@ -94,6 +94,17 @@
|
||||
attachmentIndex: index,
|
||||
textContent: attachment.content
|
||||
});
|
||||
} else if (attachment.type === 'context') {
|
||||
// Legacy format from old webui - treat as text file
|
||||
items.push({
|
||||
id: `attachment-${index}`,
|
||||
name: attachment.name,
|
||||
type: 'text',
|
||||
isImage: false,
|
||||
attachment,
|
||||
attachmentIndex: index,
|
||||
textContent: attachment.content
|
||||
});
|
||||
} else if (attachment.type === 'audioFile') {
|
||||
items.push({
|
||||
id: `attachment-${index}`,
|
||||
|
||||
@@ -462,6 +462,19 @@ export class ChatService {
|
||||
});
|
||||
}
|
||||
|
||||
// Handle legacy 'context' type from old webui (pasted content)
|
||||
const legacyContextFiles = message.extra.filter(
|
||||
(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraLegacyContext =>
|
||||
extra.type === 'context'
|
||||
);
|
||||
|
||||
for (const legacyContextFile of legacyContextFiles) {
|
||||
contentParts.push({
|
||||
type: 'text',
|
||||
text: `\n\n--- File: ${legacyContextFile.name} ---\n${legacyContextFile.content}`
|
||||
});
|
||||
}
|
||||
|
||||
const audioFiles = message.extra.filter(
|
||||
(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraAudioFile =>
|
||||
extra.type === 'audioFile'
|
||||
|
||||
13
tools/server/webui/src/lib/types/database.d.ts
vendored
13
tools/server/webui/src/lib/types/database.d.ts
vendored
@@ -34,11 +34,22 @@ export interface DatabaseMessageExtraPdfFile {
|
||||
processedAsImages: boolean; // Whether PDF was processed as images
|
||||
}
|
||||
|
||||
/**
|
||||
* Legacy format from old webui - pasted content was stored as "context" type
|
||||
* @deprecated Use DatabaseMessageExtraTextFile instead
|
||||
*/
|
||||
export interface DatabaseMessageExtraLegacyContext {
|
||||
type: 'context';
|
||||
name: string;
|
||||
content: string;
|
||||
}
|
||||
|
||||
export type DatabaseMessageExtra =
|
||||
| DatabaseMessageExtraImageFile
|
||||
| DatabaseMessageExtraTextFile
|
||||
| DatabaseMessageExtraAudioFile
|
||||
| DatabaseMessageExtraPdfFile;
|
||||
| DatabaseMessageExtraPdfFile
|
||||
| DatabaseMessageExtraLegacyContext;
|
||||
|
||||
export interface DatabaseMessage {
|
||||
id: string;
|
||||
|
||||
Reference in New Issue
Block a user