dify/web/app/components/datasets/settings/utils/index.tsx
Stephen Zhou a84c2d36a3
style: format with vp fmt (#38803)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-07-12 15:57:46 +00:00

57 lines
2.0 KiB
TypeScript

import type {
DefaultModel,
Model,
} from '@/app/components/header/account-setting/model-provider-page/declarations'
import { ModelFeatureEnum } from '@/app/components/header/account-setting/model-provider-page/declarations'
import { IndexingType } from '../../create/step-two'
type ShowMultiModalTipProps = {
embeddingModel: DefaultModel
rerankingEnable: boolean
rerankModel: {
rerankingProviderName: string
rerankingModelName: string
}
indexMethod: IndexingType | undefined
embeddingModelList: Model[]
rerankModelList: Model[]
}
export const checkShowMultiModalTip = ({
embeddingModel,
rerankingEnable,
rerankModel,
indexMethod,
embeddingModelList,
rerankModelList,
}: ShowMultiModalTipProps) => {
if (indexMethod !== IndexingType.QUALIFIED || !embeddingModel.provider || !embeddingModel.model)
return false
const currentEmbeddingModelProvider = embeddingModelList.find(
(model) => model.provider === embeddingModel.provider,
)
if (!currentEmbeddingModelProvider) return false
const currentEmbeddingModel = currentEmbeddingModelProvider.models.find(
(model) => model.model === embeddingModel.model,
)
if (!currentEmbeddingModel) return false
const isCurrentEmbeddingModelSupportMultiModal = !!currentEmbeddingModel.features?.includes(
ModelFeatureEnum.vision,
)
if (!isCurrentEmbeddingModelSupportMultiModal) return false
const { rerankingModelName, rerankingProviderName } = rerankModel
if (!rerankingEnable || !rerankingModelName || !rerankingProviderName) return false
const currentRerankingModelProvider = rerankModelList.find(
(model) => model.provider === rerankingProviderName,
)
if (!currentRerankingModelProvider) return false
const currentRerankingModel = currentRerankingModelProvider.models.find(
(model) => model.model === rerankingModelName,
)
if (!currentRerankingModel) return false
const isRerankingModelSupportMultiModal = !!currentRerankingModel.features?.includes(
ModelFeatureEnum.vision,
)
return !isRerankingModelSupportMultiModal
}