import { getAllModelSettings } from "@/services/model-settings" import { useStoreChatModelSettings } from "@/store/model" import { useQuery } from "@tanstack/react-query" import { Collapse, Form, Input, InputNumber, Modal, Skeleton } from "antd" import React from "react" import { useTranslation } from "react-i18next" type Props = { open: boolean setOpen: (open: boolean) => void } export const CurrentChatModelSettings = ({ open, setOpen }: Props) => { const { t } = useTranslation("common") const [form] = Form.useForm() const cUserSettings = useStoreChatModelSettings() const { isPending: isLoading } = useQuery({ queryKey: ["fetchModelConfig2", open], queryFn: async () => { const data = await getAllModelSettings() form.setFieldsValue({ temperature: cUserSettings.temperature ?? data.temperature, topK: cUserSettings.topK ?? data.topK, topP: cUserSettings.topP ?? data.topP, keepAlive: cUserSettings.keepAlive ?? data.keepAlive, numCtx: cUserSettings.numCtx ?? data.numCtx, seed: cUserSettings.seed }) return data }, enabled: open, refetchOnMount: true }) return ( setOpen(false)} onCancel={() => setOpen(false)} footer={null}> {!isLoading ? (
{ Object.entries(values).forEach(([key, value]) => { cUserSettings.setX(key, value) setOpen(false) }) }} form={form} layout="vertical"> ) } ]} /> ) : ( )}
) }