'use client' import type { FC } from 'react' import type { RetrievalConfig } from '@/types/app' import Image from 'next/image' import * as React from 'react' import { useTranslation } from 'react-i18next' import RadioCard from '@/app/components/base/radio-card' import { RETRIEVE_METHOD } from '@/types/app' import { retrievalIcon } from '../../create/icons' type Props = { value: RetrievalConfig } export const getIcon = (type: RETRIEVE_METHOD) => { return ({ [RETRIEVE_METHOD.semantic]: retrievalIcon.vector, [RETRIEVE_METHOD.fullText]: retrievalIcon.fullText, [RETRIEVE_METHOD.hybrid]: retrievalIcon.hybrid, [RETRIEVE_METHOD.invertedIndex]: retrievalIcon.vector, [RETRIEVE_METHOD.keywordSearch]: retrievalIcon.vector, })[type] || retrievalIcon.vector } const EconomicalRetrievalMethodConfig: FC = ({ // type, value, }) => { const { t } = useTranslation() const type = value.search_method const icon = return (
{value.reranking_model.reranking_model_name && (
{t('modelProvider.rerankModel.key', { ns: 'common' })}
{value.reranking_model.reranking_model_name}
)}
{t('datasetConfig.top_k', { ns: 'appDebug' })}
{value.top_k}
{t('datasetConfig.score_threshold', { ns: 'appDebug' })}
{value.score_threshold}
)} /> ) } export default React.memo(EconomicalRetrievalMethodConfig)