jan/web/app/_hooks/useUpdateBot.ts
NamH 6e2210cb22
feat: adding create bot functionality (#368)
* feat: adding create bot functionality

Signed-off-by: James <james@jan.ai>

* update the temperature progress bar

Signed-off-by: James <james@jan.ai>

* chore: remove tgz

Signed-off-by: James <james@jan.ai>

* update core dependency

Signed-off-by: James <james@jan.ai>

* fix e2e test

Signed-off-by: James <james@jan.ai>

---------

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
2023-10-23 15:57:56 +07:00

39 lines
992 B
TypeScript

import { Bot } from "@/_models/Bot";
import { executeSerial } from "../../../electron/core/plugin-manager/execution/extension-manager";
import { DataService } from "@janhq/core";
export default function useUpdateBot() {
const updateBot = async (
bot: Bot,
updatableField: UpdatableField
): Promise<void> => {
try {
// TODO: if bot does not changed, no need to update
for (const [key, value] of Object.entries(updatableField)) {
if (value !== undefined) {
//@ts-ignore
bot[key] = value;
}
}
await executeSerial(DataService.UpdateBot, bot);
console.debug("Bot updated", JSON.stringify(bot, null, 2));
} catch (err) {
alert(`Update bot error: ${err}`);
console.error(err);
return;
}
};
return { updateBot };
}
export type UpdatableField = {
presencePenalty?: number;
frequencyPenalty?: number;
maxTokens?: number;
customTemperature?: number;
systemPrompt?: number;
};