diff --git a/src/api/model.ts b/src/api/model.ts index a98c5ac00..3ce2e3a03 100644 --- a/src/api/model.ts +++ b/src/api/model.ts @@ -49,6 +49,7 @@ export const getModelTrainings = (id: string) => type GetModelDataListProps = RequestPaging & { modelId: string; + searchText: string; }; /** * 获取模型的知识库数据 diff --git a/src/pages/api/model/data/getModelData.ts b/src/pages/api/model/data/getModelData.ts index ce93594db..5cb6976d3 100644 --- a/src/pages/api/model/data/getModelData.ts +++ b/src/pages/api/model/data/getModelData.ts @@ -4,20 +4,20 @@ import { connectToDatabase } from '@/service/mongo'; import { authToken } from '@/service/utils/tools'; import { connectRedis } from '@/service/redis'; import { VecModelDataIdx } from '@/constants/redis'; -import { SearchOptions } from 'redis'; export default async function handler(req: NextApiRequest, res: NextApiResponse) { try { let { modelId, pageNum = 1, - pageSize = 10 + pageSize = 10, + searchText = '' } = req.query as { modelId: string; pageNum: string; pageSize: string; + searchText: string; }; - const { authorization } = req.headers; pageNum = +pageNum; @@ -40,7 +40,7 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse< // 从 redis 中获取数据 const searchRes = await redis.ft.search( VecModelDataIdx, - `@modelId:{${modelId}} @userId:{${userId}}`, + `@modelId:{${modelId}} @userId:{${userId}} ${searchText ? `*${searchText}*` : ''}`, { RETURN: ['q', 'text', 'status'], LIMIT: { diff --git a/src/pages/model/detail/components/ModelDataCard.tsx b/src/pages/model/detail/components/ModelDataCard.tsx index 45d35bdf1..a62ecf37c 100644 --- a/src/pages/model/detail/components/ModelDataCard.tsx +++ b/src/pages/model/detail/components/ModelDataCard.tsx @@ -15,7 +15,8 @@ import { Menu, MenuButton, MenuList, - MenuItem + MenuItem, + Input } from '@chakra-ui/react'; import type { ModelSchema } from '@/types/mongoSchema'; import type { RedisModelDataItemType } from '@/types/redis'; @@ -40,9 +41,11 @@ const SelectFileModel = dynamic(() => import('./SelectFileModal')); const SelectUrlModel = dynamic(() => import('./SelectUrlModal')); const SelectCsvModal = dynamic(() => import('./SelectCsvModal')); +let lastSearch = ''; + const ModelDataCard = ({ model }: { model: ModelSchema }) => { const { Loading, setIsLoading } = useLoading(); - + const [searchText, setSearchText] = useState(''); const { data: modelDataList, isLoading, @@ -54,7 +57,8 @@ const ModelDataCard = ({ model }: { model: ModelSchema }) => { api: getModelDataList, pageSize: 8, params: { - modelId: model._id + modelId: model._id, + searchText } }); @@ -158,9 +162,33 @@ const ModelDataCard = ({ model }: { model: ModelSchema }) => { - {!!(splitDataLen && splitDataLen > 0) && ( - {splitDataLen}条数据正在拆分... - )} + + {/* 拆分数据提示 */} + {!!(splitDataLen && splitDataLen > 0) && ( + {splitDataLen}条数据正在拆分... + )} + + setSearchText(e.target.value)} + onBlur={() => { + if (searchText === lastSearch) return; + getData(1); + lastSearch = searchText; + }} + onKeyDown={(e) => { + if (searchText === lastSearch) return; + if (e.key === 'Enter') { + getData(1); + lastSearch = searchText; + } + }} + /> + + diff --git a/src/pages/model/detail/components/ModelEditForm.tsx b/src/pages/model/detail/components/ModelEditForm.tsx index cb0f0fdb5..22e14b6d8 100644 --- a/src/pages/model/detail/components/ModelEditForm.tsx +++ b/src/pages/model/detail/components/ModelEditForm.tsx @@ -54,20 +54,20 @@ const ModelEditForm = ({ })} > - + modelId: {getValues('_id')} - + - 底层模型: + 模型类型: - {getValues('service.modelName')} + {modelList.find((item) => item.model === getValues('service.modelName'))?.name} - + 价格: @@ -80,7 +80,7 @@ const ModelEditForm = ({ - 删除: + 删除模型和数据集 + ) } diff --git a/src/pages/number/components/BillTable.tsx b/src/pages/number/components/BillTable.tsx index 70728c6c9..61eb80056 100644 --- a/src/pages/number/components/BillTable.tsx +++ b/src/pages/number/components/BillTable.tsx @@ -30,7 +30,7 @@ const BillTable = () => { - + diff --git a/src/pages/number/components/PayRecordTable.tsx b/src/pages/number/components/PayRecordTable.tsx index 47ee6592d..6d6548fb6 100644 --- a/src/pages/number/components/PayRecordTable.tsx +++ b/src/pages/number/components/PayRecordTable.tsx @@ -77,7 +77,7 @@ const PayRecordTable = () => { - + diff --git a/src/service/events/pushBill.ts b/src/service/events/pushBill.ts index 1f17ee1e1..08d474f84 100644 --- a/src/service/events/pushBill.ts +++ b/src/service/events/pushBill.ts @@ -21,7 +21,7 @@ export const pushChatBill = async ({ try { // 计算 token 数量 - const tokens = Math.floor(encode(text).length * 0.7); + const tokens = Math.floor(encode(text).length * 0.75); console.log(`chat generate success. text len: ${text.length}. token len: ${tokens}`);
类型 内容长度 Tokens 长度消费金额
订单号 时间 金额消费状态