mirror of
				https://github.com/ggml-org/llama.cpp.git
				synced 2025-10-31 08:51:55 +00:00 
			
		
		
		
	Handle legacy 'context' attachments (#16687)
This commit is contained in:
		 Aleksander Grygier
					Aleksander Grygier
				
			
				
					committed by
					
						 GitHub
						GitHub
					
				
			
			
				
	
			
			
			 GitHub
						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, | 	DatabaseMessageExtraAudioFile, | ||||||
| 	DatabaseMessageExtraImageFile, | 	DatabaseMessageExtraImageFile, | ||||||
| 	DatabaseMessageExtraTextFile, | 	DatabaseMessageExtraTextFile, | ||||||
| 	DatabaseMessageExtraPdfFile | 	DatabaseMessageExtraPdfFile, | ||||||
|  | 	DatabaseMessageExtraLegacyContext | ||||||
| } from '$lib/types/database'; | } from '$lib/types/database'; | ||||||
|  |  | ||||||
| import type { | import type { | ||||||
| @@ -73,6 +74,7 @@ declare global { | |||||||
| 		DatabaseMessageExtraImageFile, | 		DatabaseMessageExtraImageFile, | ||||||
| 		DatabaseMessageExtraTextFile, | 		DatabaseMessageExtraTextFile, | ||||||
| 		DatabaseMessageExtraPdfFile, | 		DatabaseMessageExtraPdfFile, | ||||||
|  | 		DatabaseMessageExtraLegacyContext, | ||||||
| 		SettingsConfigValue, | 		SettingsConfigValue, | ||||||
| 		SettingsFieldConfig, | 		SettingsFieldConfig, | ||||||
| 		SettingsConfigType, | 		SettingsConfigType, | ||||||
|   | |||||||
| @@ -94,6 +94,17 @@ | |||||||
| 					attachmentIndex: index, | 					attachmentIndex: index, | ||||||
| 					textContent: attachment.content | 					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') { | 			} else if (attachment.type === 'audioFile') { | ||||||
| 				items.push({ | 				items.push({ | ||||||
| 					id: `attachment-${index}`, | 					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( | 		const audioFiles = message.extra.filter( | ||||||
| 			(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraAudioFile => | 			(extra: DatabaseMessageExtra): extra is DatabaseMessageExtraAudioFile => | ||||||
| 				extra.type === 'audioFile' | 				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 | 	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 = | export type DatabaseMessageExtra = | ||||||
| 	| DatabaseMessageExtraImageFile | 	| DatabaseMessageExtraImageFile | ||||||
| 	| DatabaseMessageExtraTextFile | 	| DatabaseMessageExtraTextFile | ||||||
| 	| DatabaseMessageExtraAudioFile | 	| DatabaseMessageExtraAudioFile | ||||||
| 	| DatabaseMessageExtraPdfFile; | 	| DatabaseMessageExtraPdfFile | ||||||
|  | 	| DatabaseMessageExtraLegacyContext; | ||||||
|  |  | ||||||
| export interface DatabaseMessage { | export interface DatabaseMessage { | ||||||
| 	id: string; | 	id: string; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user