import { useTranslate } from '@/hooks/common-hooks'; import { IModalProps } from '@/interfaces/common'; import { IAddLlmRequestBody } from '@/interfaces/request/llm'; import { Flex, Form, Input, Modal, Select, Space, Switch } from 'antd'; import omit from 'lodash/omit'; type FieldType = IAddLlmRequestBody & { vision: boolean; volc_ak: string; volc_sk: string; endpoint_id: string; ark_api_key: string; }; const { Option } = Select; const VolcEngineModal = ({ visible, hideModal, onOk, loading, llmFactory, }: IModalProps & { llmFactory: string }) => { const [form] = Form.useForm(); const { t } = useTranslate('setting'); const handleOk = async () => { const values = await form.validateFields(); const modelType = values.model_type === 'chat' && values.vision ? 'image2text' : values.model_type; const data = { ...omit(values, ['vision']), model_type: modelType, llm_factory: llmFactory, }; console.info(data); onOk?.(data); }; return ( { return ( {t('ollamaLink', { name: llmFactory })} {originNode} ); }} >
label={t('modelType')} name="model_type" initialValue={'chat'} rules={[{ required: true, message: t('modelTypeMessage') }]} > label={t('modelName')} name="llm_name" rules={[{ required: true, message: t('volcModelNameMessage') }]} > label={t('addEndpointID')} name="endpoint_id" rules={[{ required: true, message: t('endpointIDMessage') }]} > label={t('addArkApiKey')} name="ark_api_key" rules={[{ required: true, message: t('ArkApiKeyMessage') }]} > {({ getFieldValue }) => getFieldValue('model_type') === 'chat' && ( ) }
); }; export default VolcEngineModal;