forked from open-webui/open-webui
		
	feat: external model info
This commit is contained in:
		
							parent
							
								
									eb004ccfc2
								
							
						
					
					
						commit
						32cb5f3ceb
					
				
					 3 changed files with 27 additions and 21 deletions
				
			
		|  | @ -33,7 +33,7 @@ export const getLiteLLMModels = async (token: string = '') => { | ||||||
| 					id: model.id, | 					id: model.id, | ||||||
| 					name: model.name ?? model.id, | 					name: model.name ?? model.id, | ||||||
| 					external: true, | 					external: true, | ||||||
| 					source: 'litellm' | 					source: 'LiteLLM' | ||||||
| 				})) | 				})) | ||||||
| 				.sort((a, b) => { | 				.sort((a, b) => { | ||||||
| 					return a.name.localeCompare(b.name); | 					return a.name.localeCompare(b.name); | ||||||
|  |  | ||||||
|  | @ -12,7 +12,7 @@ | ||||||
| 
 | 
 | ||||||
| 	import { user, MODEL_DOWNLOAD_POOL, models } from '$lib/stores'; | 	import { user, MODEL_DOWNLOAD_POOL, models } from '$lib/stores'; | ||||||
| 	import { toast } from 'svelte-sonner'; | 	import { toast } from 'svelte-sonner'; | ||||||
| 	import { getModels, splitStream } from '$lib/utils'; | 	import { capitalizeFirstLetter, getModels, splitStream } from '$lib/utils'; | ||||||
| 	import Tooltip from '$lib/components/common/Tooltip.svelte'; | 	import Tooltip from '$lib/components/common/Tooltip.svelte'; | ||||||
| 
 | 
 | ||||||
| 	const i18n = getContext('i18n'); | 	const i18n = getContext('i18n'); | ||||||
|  | @ -225,25 +225,27 @@ | ||||||
| 							</div> | 							</div> | ||||||
| 
 | 
 | ||||||
| 							{#if item.info.external} | 							{#if item.info.external} | ||||||
| 								<div class=" mr-2"> | 								<Tooltip content={item.info?.source ?? 'External'}> | ||||||
| 									<svg | 									<div class=" mr-2"> | ||||||
| 										xmlns="http://www.w3.org/2000/svg" | 										<svg | ||||||
| 										viewBox="0 0 16 16" | 											xmlns="http://www.w3.org/2000/svg" | ||||||
| 										fill="currentColor" | 											viewBox="0 0 16 16" | ||||||
| 										class="w-4 h-4" | 											fill="currentColor" | ||||||
| 									> | 											class="w-4 h-4" | ||||||
| 										<path | 										> | ||||||
| 											fill-rule="evenodd" | 											<path | ||||||
| 											d="M8.914 6.025a.75.75 0 0 1 1.06 0 3.5 3.5 0 0 1 0 4.95l-2 2a3.5 3.5 0 0 1-5.396-4.402.75.75 0 0 1 1.251.827 2 2 0 0 0 3.085 2.514l2-2a2 2 0 0 0 0-2.828.75.75 0 0 1 0-1.06Z" | 												fill-rule="evenodd" | ||||||
| 											clip-rule="evenodd" | 												d="M8.914 6.025a.75.75 0 0 1 1.06 0 3.5 3.5 0 0 1 0 4.95l-2 2a3.5 3.5 0 0 1-5.396-4.402.75.75 0 0 1 1.251.827 2 2 0 0 0 3.085 2.514l2-2a2 2 0 0 0 0-2.828.75.75 0 0 1 0-1.06Z" | ||||||
| 										/> | 												clip-rule="evenodd" | ||||||
| 										<path | 											/> | ||||||
| 											fill-rule="evenodd" | 											<path | ||||||
| 											d="M7.086 9.975a.75.75 0 0 1-1.06 0 3.5 3.5 0 0 1 0-4.95l2-2a3.5 3.5 0 0 1 5.396 4.402.75.75 0 0 1-1.251-.827 2 2 0 0 0-3.085-2.514l-2 2a2 2 0 0 0 0 2.828.75.75 0 0 1 0 1.06Z" | 												fill-rule="evenodd" | ||||||
| 											clip-rule="evenodd" | 												d="M7.086 9.975a.75.75 0 0 1-1.06 0 3.5 3.5 0 0 1 0-4.95l2-2a3.5 3.5 0 0 1 5.396 4.402.75.75 0 0 1-1.251-.827 2 2 0 0 0-3.085-2.514l-2 2a2 2 0 0 0 0 2.828.75.75 0 0 1 0 1.06Z" | ||||||
| 										/> | 												clip-rule="evenodd" | ||||||
| 									</svg> | 											/> | ||||||
| 								</div> | 										</svg> | ||||||
|  | 									</div> | ||||||
|  | 								</Tooltip> | ||||||
| 							{/if} | 							{/if} | ||||||
| 						</div> | 						</div> | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -31,6 +31,10 @@ export const getModels = async (token: string) => { | ||||||
| // Helper functions
 | // Helper functions
 | ||||||
| //////////////////////////
 | //////////////////////////
 | ||||||
| 
 | 
 | ||||||
|  | export const capitalizeFirstLetter = (string) => { | ||||||
|  | 	return string.charAt(0).toUpperCase() + string.slice(1); | ||||||
|  | }; | ||||||
|  | 
 | ||||||
| export const splitStream = (splitOn) => { | export const splitStream = (splitOn) => { | ||||||
| 	let buffer = ''; | 	let buffer = ''; | ||||||
| 	return new TransformStream({ | 	return new TransformStream({ | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Timothy J. Baek
						Timothy J. Baek