Jelajahi Sumber

fix: add typescript types for models

Jun Siang Cheah 1 tahun lalu
induk
melakukan
81b7cdfed7
1 mengubah file dengan 33 tambahan dan 2 penghapusan
  1. 33 2
      src/lib/stores/index.ts

+ 33 - 2
src/lib/stores/index.ts

@@ -1,5 +1,5 @@
 import { APP_NAME } from '$lib/constants';
-import { writable } from 'svelte/store';
+import { type Writable, writable } from 'svelte/store';
 
 // Backend
 export const WEBUI_NAME = writable(APP_NAME);
@@ -14,7 +14,7 @@ export const chatId = writable('');
 
 export const chats = writable([]);
 export const tags = writable([]);
-export const models = writable([]);
+export const models: Writable<Model[]> = writable([]);
 
 export const modelfiles = writable([]);
 export const prompts = writable([]);
@@ -36,3 +36,34 @@ export const documents = writable([
 export const settings = writable({});
 export const showSettings = writable(false);
 export const showChangelog = writable(false);
+
+type Model = OpenAIModel | OllamaModel;
+
+type OpenAIModel = {
+	id: string;
+	name: string;
+	external: boolean;
+	source?: string;
+}
+
+type OllamaModel = {
+	id: string;
+	name: string;
+
+	// Ollama specific fields
+	details: OllamaModelDetails;
+	size: number;
+	description: string;
+	model: string;
+	modified_at: string;
+	digest: string;
+}
+
+type OllamaModelDetails = {
+  parent_model: string;
+  format: string;
+  family: string;
+  families: string[] | null;
+  parameter_size: string;
+  quantization_level: string;
+};