2024-02-24 01:12:19 +00:00
|
|
|
import { APP_NAME } from '$lib/constants';
|
2024-04-21 10:41:18 +00:00
|
|
|
import { type Writable, writable } from 'svelte/store';
|
2023-11-19 00:47:12 +00:00
|
|
|
|
2023-11-20 01:47:07 +00:00
|
|
|
// Backend
|
2024-02-24 01:12:19 +00:00
|
|
|
export const WEBUI_NAME = writable(APP_NAME);
|
2023-11-19 00:47:12 +00:00
|
|
|
export const config = writable(undefined);
|
|
|
|
export const user = writable(undefined);
|
2023-11-20 01:47:07 +00:00
|
|
|
|
|
|
|
// Frontend
|
2024-03-25 06:03:26 +00:00
|
|
|
export const MODEL_DOWNLOAD_POOL = writable({});
|
2024-01-03 04:41:37 +00:00
|
|
|
|
2024-03-25 06:03:26 +00:00
|
|
|
export const theme = writable('system');
|
2023-11-20 01:47:07 +00:00
|
|
|
export const chatId = writable('');
|
2024-01-03 04:41:37 +00:00
|
|
|
|
2023-11-20 01:47:07 +00:00
|
|
|
export const chats = writable([]);
|
2024-01-18 10:55:25 +00:00
|
|
|
export const tags = writable([]);
|
2024-04-21 10:41:18 +00:00
|
|
|
export const models: Writable<Model[]> = writable([]);
|
2024-01-08 07:43:32 +00:00
|
|
|
|
2023-12-03 18:59:47 +00:00
|
|
|
export const modelfiles = writable([]);
|
2024-01-03 04:41:37 +00:00
|
|
|
export const prompts = writable([]);
|
2024-01-08 07:43:32 +00:00
|
|
|
export const documents = writable([
|
|
|
|
{
|
|
|
|
collection_name: 'collection_name',
|
|
|
|
filename: 'filename',
|
|
|
|
name: 'name',
|
|
|
|
title: 'title'
|
|
|
|
},
|
|
|
|
{
|
|
|
|
collection_name: 'collection_name1',
|
|
|
|
filename: 'filename1',
|
|
|
|
name: 'name1',
|
|
|
|
title: 'title1'
|
|
|
|
}
|
|
|
|
]);
|
2024-01-02 00:05:05 +00:00
|
|
|
|
2023-11-20 01:47:07 +00:00
|
|
|
export const settings = writable({});
|
|
|
|
export const showSettings = writable(false);
|
2024-02-23 08:47:54 +00:00
|
|
|
export const showChangelog = writable(false);
|
2024-04-21 10:41:18 +00:00
|
|
|
|
|
|
|
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;
|
|
|
|
};
|