import { useTranslate } from '@/hooks/common-hooks'; import { Form, Slider } from 'antd'; import { z } from 'zod'; import { SliderInputFormField } from '../slider-input-form-field'; type FieldType = { similarity_threshold?: number; // vector_similarity_weight?: number; }; interface IProps { isTooltipShown?: boolean; vectorSimilarityWeightName?: string; } const SimilaritySlider = ({ isTooltipShown = false, vectorSimilarityWeightName = 'vector_similarity_weight', }: IProps) => { const { t } = useTranslate('knowledgeDetails'); return ( <> label={t('similarityThreshold')} name={'similarity_threshold'} tooltip={isTooltipShown && t('similarityThresholdTip')} initialValue={0.2} > ); }; export default SimilaritySlider; interface SimilaritySliderFormFieldProps { vectorSimilarityWeightName?: string; isTooltipShown?: boolean; } export const initialSimilarityThresholdValue = { similarity_threshold: 0.2, }; export const initialKeywordsSimilarityWeightValue = { keywords_similarity_weight: 0.7, }; export const similarityThresholdSchema = { similarity_threshold: z.number() }; export const keywordsSimilarityWeightSchema = { keywords_similarity_weight: z.number(), }; export const vectorSimilarityWeightSchema = { vector_similarity_weight: z.number(), }; export const initialVectorSimilarityWeightValue = { vector_similarity_weight: 0.3, }; export function SimilaritySliderFormField({ vectorSimilarityWeightName = 'vector_similarity_weight', isTooltipShown, }: SimilaritySliderFormFieldProps) { const { t } = useTranslate('knowledgeDetails'); const isVector = vectorSimilarityWeightName === 'vector_similarity_weight'; return ( <> ); }