* fix: image upload button and drag event are not enabled * fix: add tooltips for unsupported model
58 lines
1.5 KiB
TypeScript
58 lines
1.5 KiB
TypeScript
import { ModelRuntimeParams, ModelSettingParams } from '@janhq/core'
|
|
|
|
import { ModelParams } from '@/helpers/atoms/Thread.atom'
|
|
|
|
export const toRuntimeParams = (
|
|
modelParams?: ModelParams
|
|
): ModelRuntimeParams => {
|
|
if (!modelParams) return {}
|
|
const defaultModelParams: ModelRuntimeParams = {
|
|
temperature: undefined,
|
|
token_limit: undefined,
|
|
top_k: undefined,
|
|
top_p: undefined,
|
|
stream: undefined,
|
|
max_tokens: undefined,
|
|
stop: undefined,
|
|
frequency_penalty: undefined,
|
|
presence_penalty: undefined,
|
|
}
|
|
|
|
const runtimeParams: ModelRuntimeParams = {}
|
|
|
|
for (const [key, value] of Object.entries(modelParams)) {
|
|
if (key in defaultModelParams) {
|
|
Object.assign(runtimeParams, { ...runtimeParams, [key]: value })
|
|
}
|
|
}
|
|
|
|
return runtimeParams
|
|
}
|
|
|
|
export const toSettingParams = (
|
|
modelParams?: ModelParams
|
|
): ModelSettingParams => {
|
|
if (!modelParams) return {}
|
|
const defaultSettingParams: ModelSettingParams = {
|
|
ctx_len: undefined,
|
|
ngl: undefined,
|
|
embedding: undefined,
|
|
n_parallel: undefined,
|
|
cpu_threads: undefined,
|
|
prompt_template: undefined,
|
|
llama_model_path: undefined,
|
|
mmproj: undefined,
|
|
vision_model: undefined,
|
|
text_model: undefined,
|
|
}
|
|
const settingParams: ModelSettingParams = {}
|
|
|
|
for (const [key, value] of Object.entries(modelParams)) {
|
|
if (key in defaultSettingParams) {
|
|
Object.assign(settingParams, { ...settingParams, [key]: value })
|
|
}
|
|
}
|
|
|
|
return settingParams
|
|
}
|