feat: quote source

This commit is contained in:
archer
2023-05-30 23:38:16 +08:00
parent 746b9af2de
commit 87c5cb6bca
5 changed files with 6 additions and 10 deletions

View File

@@ -27,7 +27,7 @@ export default async function handler(req: NextApiRequest, res: NextApiResponse)
}, },
{ {
$set: { $set: {
'content.$.quote.$[quoteElem].isEdit': true 'content.$.quote.$[quoteElem].source': '手动修改'
} }
}, },
{ {

View File

@@ -58,11 +58,7 @@ export async function saveChat({
obj: item.obj, obj: item.obj,
value: item.value, value: item.value,
systemPrompt: item.systemPrompt, systemPrompt: item.systemPrompt,
quote: quote: item.quote || []
item.quote?.map((item) => ({
...item,
isEdit: false
})) || []
})); }));
const [id] = await Promise.all([ const [id] = await Promise.all([

View File

@@ -12,7 +12,7 @@ import { ChatRoleEnum } from '@/constants/chat';
import { openaiEmbedding } from '../plugin/openaiEmbedding'; import { openaiEmbedding } from '../plugin/openaiEmbedding';
import { modelToolMap } from '@/utils/plugin'; import { modelToolMap } from '@/utils/plugin';
export type QuoteItemType = { id: string; q: string; a: string; isEdit: boolean }; export type QuoteItemType = { id: string; q: string; a: string; source?: string };
type Props = { type Props = {
prompts: ChatItemSimpleType[]; prompts: ChatItemSimpleType[];
similarity: number; similarity: number;
@@ -92,7 +92,7 @@ export async function appKbSearch({
// search kb // search kb
const { rows: searchRes } = await PgClient.select<QuoteItemType>('modelData', { const { rows: searchRes } = await PgClient.select<QuoteItemType>('modelData', {
fields: ['id', 'q', 'a'], fields: ['id', 'q', 'a', 'source'],
where: [ where: [
`kb_id IN (${model.chat.relatedKbs.map((item) => `'${item}'`).join(',')})`, `kb_id IN (${model.chat.relatedKbs.map((item) => `'${item}'`).join(',')})`,
'AND', 'AND',

View File

@@ -126,7 +126,7 @@ const QuoteModal = ({
position={'relative'} position={'relative'}
_hover={{ '& .edit': { display: 'flex' } }} _hover={{ '& .edit': { display: 'flex' } }}
> >
{item.isEdit && <Box color={'myGray.600'}>()</Box>} {item.source && <Box color={'myGray.600'}>({item.source})</Box>}
<Box>{item.q}</Box> <Box>{item.q}</Box>
<Box>{item.a}</Box> <Box>{item.a}</Box>
<Box <Box

View File

@@ -60,7 +60,7 @@ const ChatSchema = new Schema({
id: String, id: String,
q: String, q: String,
a: String, a: String,
isEdit: Boolean source: String
} }
], ],
default: [] default: []