diff --git a/src/modules/ai/prompts/prompt-template.service.ts b/src/modules/ai/prompts/prompt-template.service.ts index 66290c3..7e84dde 100644 --- a/src/modules/ai/prompts/prompt-template.service.ts +++ b/src/modules/ai/prompts/prompt-template.service.ts @@ -9,6 +9,8 @@ import { REVIEW_CARD_GENERATION_SYSTEM_PROMPT } from './review-card-generation.p import { REVIEW_CARD_OUTPUT_SCHEMA_DESC } from './schemas/review-card-generation.schema'; import { LEARNING_TREND_SYSTEM_PROMPT } from './learning-trend.prompt'; import { LEARNING_TREND_OUTPUT_SCHEMA_DESC } from './schemas/learning-trend.schema'; +import { RAG_CHAT_SYSTEM_PROMPT } from './rag-chat.prompt'; +import { RAG_CHAT_OUTPUT_SCHEMA_DESC } from './schemas/rag-chat.schema'; export interface PromptTemplate { key: string; @@ -52,6 +54,12 @@ export class PromptTemplateService { systemPrompt: LEARNING_TREND_SYSTEM_PROMPT, outputSchemaDesc: LEARNING_TREND_OUTPUT_SCHEMA_DESC, }); + this.register({ + key: 'rag-chat', + version: 'v1', + systemPrompt: RAG_CHAT_SYSTEM_PROMPT, + outputSchemaDesc: RAG_CHAT_OUTPUT_SCHEMA_DESC, + }); } get(key: string, version?: string): PromptTemplate { diff --git a/src/modules/ai/prompts/rag-chat.prompt.ts b/src/modules/ai/prompts/rag-chat.prompt.ts new file mode 100644 index 0000000..e9ad0af --- /dev/null +++ b/src/modules/ai/prompts/rag-chat.prompt.ts @@ -0,0 +1,7 @@ +export const RAG_CHAT_SYSTEM_PROMPT = `你是知习 AI 学习助手。基于提供的知识库内容回答用户问题。 + +## 回答要求 +- 基于提供的知识库内容回答,不要编造信息 +- 如果知识库内容不足以回答问题,请诚实告知 +- 回答时可以用「根据知识库中的《xxx》...」引用来源 +- 回答应准确、简洁、有依据`; diff --git a/src/modules/ai/prompts/schemas/rag-chat.schema.ts b/src/modules/ai/prompts/schemas/rag-chat.schema.ts new file mode 100644 index 0000000..3756b6e --- /dev/null +++ b/src/modules/ai/prompts/schemas/rag-chat.schema.ts @@ -0,0 +1,6 @@ +export const RAG_CHAT_OUTPUT_SCHEMA_DESC = `{ + "answer": "你的回答内容", + "citations": [ + { "title": "引用的知识点标题", "snippet": "引用的原文片段" } + ] +}`;