|
|
3 months ago | |
|---|---|---|
| .. | ||
| README.md | 3 months ago | |
| index.tsx | 3 months ago | |
| promptTemplates.ts | 3 months ago | |
| store.ts | 3 months ago | |
| style.less | 3 months ago | |
| types.ts | 3 months ago | |
这个配置系统用于管理问答应用中的提示词模板,避免在代码中硬编码长文本,提高代码的可维护性和可扩展性。
src/pages/deepseek/questionAnswer/info/
├── promptTemplates.ts # 提示词模板配置文件
├── index.tsx # 主组件文件
└── README.md # 说明文档
import { DEFAULT_PROMPT_TEMPLATE, getPromptTemplate } from './promptTemplates';
// 使用默认模板
const defaultPrompt = DEFAULT_PROMPT_TEMPLATE;
// 使用特定模板
const chatPrompt = getPromptTemplate('CHAT_ASSISTANT');
import { DEFAULT_PROMPT_TEMPLATE } from './promptTemplates';
// 在FormItem中使用
<FormItem
name='prompt'
initialValue={DEFAULT_PROMPT_TEMPLATE}
rules={[{ required: true, message: '提示词不能为空' }]}
>
<TextArea placeholder="提示词" rows={50} />
</FormItem>
在 promptTemplates.ts 中添加新的模板:
export const PROMPT_TEMPLATES = {
// 现有模板...
// 新增模板
CUSTOM_ASSISTANT: `你是一个自定义助手,请根据以下要求提供服务:
用户需求: {{用户}}
参考文档: {{知识}}
请按照要求完成任务。`
};
import {
validatePromptTemplate,
formatPromptTemplate
} from './promptTemplates';
// 验证模板是否包含必要占位符
const isValid = validatePromptTemplate(template);
// 格式化模板(替换占位符)
const formattedPrompt = formatPromptTemplate(
template,
'知识库内容',
'用户输入'
);
| 类型 | 描述 | 用途 |
|---|---|---|
KNOWLEDGE_RETRIEVAL_ASSISTANT |
知识检索助手 | 基于知识库内容回答问题 |
CHAT_ASSISTANT |
聊天助手 | 提供友好的对话服务 |
DOCUMENT_SUMMARY |
文档总结 | 提取文档关键信息 |
CODE_ASSISTANT |
代码助手 | 提供代码解决方案 |
TRANSLATION_ASSISTANT |
翻译助手 | 多语言翻译服务 |
{{知识}}: 知识库内容占位符{{用户}}: 用户输入占位符{{知识}} 和 {{用户}} 占位符validatePromptTemplate 验证模板格式可以添加一个下拉选择器让用户选择不同的提示词模板:
import {
getAvailableTemplateTypes,
PROMPT_TEMPLATE_DESCRIPTIONS
} from './promptTemplates';
const templateTypes = getAvailableTemplateTypes();
<Select
placeholder="选择提示词模板"
onChange={(value) => setSelectedTemplate(value)}
>
{templateTypes.map(type => (
<Option key={type} value={type}>
{PROMPT_TEMPLATE_DESCRIPTIONS[type]}
</Option>
))}
</Select>
可以添加模板预览功能,让用户在应用前查看模板内容。