fix: bug fix

This commit is contained in:
n4ze3m
2025-01-25 15:19:28 +05:30
parent 7b6b6751cc
commit 51804bc9ae
29 changed files with 133 additions and 136 deletions

View File

@@ -373,7 +373,6 @@ export const deleteChatForEdit = async (history_id: string, index: number) => {
const db = new PageAssitDatabase()
const chatHistory = (await db.getChatHistory(history_id)).reverse()
const previousHistory = chatHistory.slice(0, index + 1)
// console.log(previousHistory)
await db.db.set({ [history_id]: previousHistory.reverse() })
}

View File

@@ -163,8 +163,8 @@ export const getAllKnowledge = async (status?: string) => {
if (status) {
return data
.filter((d) => d.db_type === "knowledge")
.filter((d) => d.status === status)
.filter((d) => d?.db_type === "knowledge")
.filter((d) => d?.status === status)
.map((d) => {
d.source.forEach((s) => {
delete s.content
@@ -175,9 +175,9 @@ export const getAllKnowledge = async (status?: string) => {
}
return data
.filter((d) => d.db_type === "knowledge")
.filter((d) => d?.db_type === "knowledge")
.map((d) => {
d.source.forEach((s) => {
d?.source.forEach((s) => {
delete s.content
})
return d

View File

@@ -293,7 +293,7 @@ export const getModelInfo = async (id: string) => {
export const getAllCustomModels = async () => {
const db = new ModelDb()
const models = (await db.getAll()).filter(
(model) => model.db_type === "openai_model"
(model) => model?.db_type === "openai_model"
)
const modelsWithProvider = await Promise.all(
models.map(async (model) => {
@@ -324,7 +324,7 @@ export const deleteAllModelsByProviderId = async (provider_id: string) => {
export const isLookupExist = async (lookup: string) => {
const db = new ModelDb()
const models = await db.getAll()
const model = models.find((model) => model.lookup === lookup)
const model = models.find((model) => model?.lookup === lookup)
return model ? true : false
}
@@ -394,85 +394,90 @@ export const dynamicFetchLlamafile = async ({
export const ollamaFormatAllCustomModels = async (
modelType: "all" | "chat" | "embedding" = "all"
) => {
const [allModles, allProviders] = await Promise.all([
getAllCustomModels(),
getAllOpenAIConfig()
])
const lmstudioProviders = allProviders.filter(
(provider) => provider.provider === "lmstudio"
)
const llamafileProviders = allProviders.filter(
(provider) => provider.provider === "llamafile"
)
const ollamaProviders = allProviders.filter(
(provider) => provider.provider === "ollama2"
)
const lmModelsPromises = lmstudioProviders.map((provider) =>
dynamicFetchLMStudio({
baseUrl: provider.baseUrl,
providerId: provider.id
})
)
const llamafileModelsPromises = llamafileProviders.map((provider) =>
dynamicFetchLlamafile({
baseUrl: provider.baseUrl,
providerId: provider.id
})
)
const ollamaModelsPromises = ollamaProviders.map((provider) =>
dynamicFetchOllama2({
baseUrl: provider.baseUrl,
providerId: provider.id
}))
const lmModelsFetch = await Promise.all(lmModelsPromises)
const llamafileModelsFetch = await Promise.all(llamafileModelsPromises)
const ollamaModelsFetch = await Promise.all(ollamaModelsPromises)
const lmModels = lmModelsFetch.flat()
const llamafileModels = llamafileModelsFetch.flat()
const ollama2Models = ollamaModelsFetch.flat()
// merge allModels and lmModels
const allModlesWithLMStudio = [
...(modelType !== "all"
? allModles.filter((model) => model.model_type === modelType)
: allModles),
...lmModels,
...llamafileModels,
...ollama2Models
]
const ollamaModels = allModlesWithLMStudio.map((model) => {
return {
name: model.name,
model: model.id,
modified_at: "",
provider:
allProviders.find((provider) => provider.id === model.provider_id)
?.provider || "custom",
size: 0,
digest: "",
details: {
parent_model: "",
format: "",
family: "",
families: [],
parameter_size: "",
quantization_level: ""
try {
const [allModles, allProviders] = await Promise.all([
getAllCustomModels(),
getAllOpenAIConfig()
])
const lmstudioProviders = allProviders.filter(
(provider) => provider.provider === "lmstudio"
)
const llamafileProviders = allProviders.filter(
(provider) => provider.provider === "llamafile"
)
const ollamaProviders = allProviders.filter(
(provider) => provider.provider === "ollama2"
)
const lmModelsPromises = lmstudioProviders.map((provider) =>
dynamicFetchLMStudio({
baseUrl: provider.baseUrl,
providerId: provider.id
})
)
const llamafileModelsPromises = llamafileProviders.map((provider) =>
dynamicFetchLlamafile({
baseUrl: provider.baseUrl,
providerId: provider.id
})
)
const ollamaModelsPromises = ollamaProviders.map((provider) =>
dynamicFetchOllama2({
baseUrl: provider.baseUrl,
providerId: provider.id
}))
const lmModelsFetch = await Promise.all(lmModelsPromises)
const llamafileModelsFetch = await Promise.all(llamafileModelsPromises)
const ollamaModelsFetch = await Promise.all(ollamaModelsPromises)
const lmModels = lmModelsFetch.flat()
const llamafileModels = llamafileModelsFetch.flat()
const ollama2Models = ollamaModelsFetch.flat()
// merge allModels and lmModels
const allModlesWithLMStudio = [
...(modelType !== "all"
? allModles.filter((model) => model.model_type === modelType)
: allModles),
...lmModels,
...llamafileModels,
...ollama2Models
]
const ollamaModels = allModlesWithLMStudio.map((model) => {
return {
name: model.name,
model: model.id,
modified_at: "",
provider:
allProviders.find((provider) => provider.id === model.provider_id)
?.provider || "custom",
size: 0,
digest: "",
details: {
parent_model: "",
format: "",
family: "",
families: [],
parameter_size: "",
quantization_level: ""
}
}
}
})
return ollamaModels
})
return ollamaModels
} catch(e) {
console.error(e)
return []
}
}

View File

@@ -114,7 +114,7 @@ export const addOpenAICofig = async ({ name, baseUrl, apiKey, provider }: { name
export const getAllOpenAIConfig = async () => {
const openaiDb = new OpenAIModelDb()
const configs = await openaiDb.getAll()
return configs.filter(config => config.db_type === "openai")
return configs.filter(config => config?.db_type === "openai")
}
export const updateOpenAIConfig = async ({ id, name, baseUrl, apiKey }: { id: string, name: string, baseUrl: string, apiKey: string }) => {