| | |
| | | <!-- 添加模型 --> |
| | | <a-modal |
| | | v-model:visible="addTabVisible" |
| | | title="添加模式" |
| | | :title="title" |
| | | @before-open="handleOpened" |
| | | @cancel="handleCancel" |
| | | :footer="false" |
| | |
| | | ref, |
| | | computed, |
| | | } from 'vue'; |
| | | import { addLlmFactory, getLlmDetail } from '@/api/model'; |
| | | import { addLlmFactory, getLlmDetail, editLlmFactory } from '@/api/model'; |
| | | import { Message } from '@arco-design/web-vue'; |
| | | import { userModelState } from '@/store'; |
| | | |
| | | const modelStore = userModelState(); |
| | | |
| | | const addTabVisible = defineModel('tabShow'); |
| | | |
| | | const httpUrl = modelStore.hrefUrl; |
| | | const loading = ref(false); |
| | | const props = defineProps({ |
| | | task_id: { |
| | |
| | | nameList: { |
| | | type: Object, |
| | | default: {}, |
| | | }, |
| | | title: { |
| | | type: String, |
| | | default: '添加模型', |
| | | }, |
| | | }); |
| | | const editList = computed(() => props.nameList); |
| | |
| | | logo: '', |
| | | urlS: '', |
| | | }); |
| | | const formRef = ref(null); |
| | | const formRef = ref(); |
| | | |
| | | const rules = { |
| | | name: [ |
| | |
| | | console.log(editList, 9999); |
| | | formRef.value.validate().then(async (res) => { |
| | | if (!res) { |
| | | await addLlmFactory({ |
| | | name: form.name, |
| | | tags: form.tags, |
| | | api_base: form.api_base, |
| | | // all_params: all_params, |
| | | logo: imageUrls.value[0], |
| | | }) |
| | | .then((resData) => { |
| | | if ((resData as any).code === 200) { |
| | | emit('refresh-parent'); |
| | | addTabVisible.value = false; |
| | | Message.success('添加成功'); |
| | | } |
| | | if (props.title == '编辑模型') { |
| | | await editLlmFactory({ |
| | | name: form.name, |
| | | tags: form.tags, |
| | | api_base: form.api_base, |
| | | // all_params: all_params, |
| | | logo: uploadUrl.value[0] || '', |
| | | }) |
| | | .catch(() => { |
| | | Message.error('添加失败'); |
| | | }); |
| | | .then((resData) => { |
| | | if ((resData as any).code === 200) { |
| | | emit('refresh-parent'); |
| | | addTabVisible.value = false; |
| | | } |
| | | }) |
| | | .catch(() => {}); |
| | | } else { |
| | | await addLlmFactory({ |
| | | name: form.name, |
| | | tags: form.tags, |
| | | api_base: form.api_base, |
| | | // all_params: all_params, |
| | | logo: uploadUrl.value[0], |
| | | }) |
| | | .then((resData) => { |
| | | if ((resData as any).code === 200) { |
| | | emit('refresh-parent'); |
| | | addTabVisible.value = false; |
| | | Message.success('添加成功'); |
| | | } |
| | | }) |
| | | .catch(() => { |
| | | Message.error('添加失败'); |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | }; |
| | |
| | | const uploadAction = '/api/v1/llm/upload'; // 替换为你的上传API |
| | | const fileList = ref([]); |
| | | const imageUrls = ref([]); |
| | | const uploadUrl = ref([]); |
| | | const updateFileList = (newFileList) => { |
| | | fileList.value = newFileList; |
| | | }; |
| | | |
| | | const handleSuccess = (urls) => { |
| | | imageUrls.value = urls; // 拿到上传的图片地址 |
| | | console.log(urls, 77777); |
| | | uploadUrl.value = urls; |
| | | |
| | | const urlsArr = urls.map((url) => { |
| | | return httpUrl + url; |
| | | }); |
| | | imageUrls.value = urlsArr; // 拿到上传的图片地址 |
| | | }; |
| | | |
| | | const handleOpened = (el) => { |
| | |
| | | formRef.value?.resetFields(); |
| | | }; |
| | | |
| | | // onMounted(() => { |
| | | // if (editList.value) { |
| | | // getDetail(); |
| | | // } |
| | | // }); |
| | | |
| | | // const getDetail = async () => { |
| | | // const data = await getLlmDetail( |
| | | // editList.value.llm_factory, |
| | | // editList.value.tags |
| | | // ); |
| | | |
| | | // form.urlS = data.data.urlS; |
| | | // imageUrls.value = data.data.logo; |
| | | // }; |
| | | |
| | | watchEffect(() => { |
| | | if (props.nameList) { |
| | | console.log(props.nameList); |
| | | if (props.nameList && props.title == '编辑模型') { |
| | | form.name = props.nameList.llm_factory; |
| | | form.tags = props.nameList.tags; |
| | | form.urlS = props.nameList.logo; |
| | | } |
| | | |
| | | // getDetail(); |
| | | }); |
| | | </script> |
| | | |