chore: Update version to 1.1.9 and add Model Settings to Ollama settings page

This commit is contained in:
n4ze3m
2024-05-23 00:39:44 +05:30
parent d2afcc6a39
commit b3a455382c
13 changed files with 1271 additions and 18 deletions

View File

@@ -0,0 +1,101 @@
import { Storage } from "@plasmohq/storage"
const storage = new Storage()
type ModelSettings = {
f16KV?: boolean
frequencyPenalty?: number
keepAlive?: string
logitsAll?: boolean
mirostat?: number
mirostatEta?: number
mirostatTau?: number
numBatch?: number
numCtx?: number
numGpu?: number
numGqa?: number
numKeep?: number
numPredict?: number
numThread?: number
penalizeNewline?: boolean
presencePenalty?: number
repeatLastN?: number
repeatPenalty?: number
ropeFrequencyBase?: number
ropeFrequencyScale?: number
temperature?: number
tfsZ?: number
topK?: number
topP?: number
typicalP?: number
useMLock?: boolean
useMMap?: boolean
vocabOnly?: boolean
}
const keys = [
"f16KV",
"frequencyPenalty",
"keepAlive",
"logitsAll",
"mirostat",
"mirostatEta",
"mirostatTau",
"numBatch",
"numCtx",
"numGpu",
"numGqa",
"numKeep",
"numPredict",
"numThread",
"penalizeNewline",
"presencePenalty",
"repeatLastN",
"repeatPenalty",
"ropeFrequencyBase",
"ropeFrequencyScale",
"temperature",
"tfsZ",
"topK",
"topP",
"typicalP",
"useMLock",
"useMMap",
"vocabOnly"
]
const getAllModelSettings = async () => {
try {
const settings: ModelSettings = {}
for (const key of keys) {
const value = await storage.get(key)
settings[key] = value
if (!value && key === "keepAlive") {
settings[key] = "5m"
}
}
return settings
} catch (error) {
console.error(error)
return {}
}
}
const setModelSetting = async (key: string,
value: string | number | boolean) => {
await storage.set(key, value)
}
export const getAllDefaultModelSettings = async (): Promise<ModelSettings> => {
const settings: ModelSettings = {}
for (const key of keys) {
const value = await storage.get(key)
settings[key] = value
if (!value && key === "keepAlive") {
settings[key] = "5m"
}
}
return settings
}
export { getAllModelSettings, setModelSetting }