Prompt 工程模板化
Prompt Engineering Templates
将 LLM prompt 结构化为可组合、可覆盖的模板块,支持按类型和场景定制
子问题
1.Prompt 块排序与组合
2.默认 prompt 与用户覆盖合并
3.按记忆类型定制提取 prompt
4.检索意图判断 prompt 设计
5.负 ordinal 禁用块实现条件性 prompt 组装
6.多业务场景共享块结构但差异化内容的模板复用
7.Pydantic 验证阶段自动补全与类型安全保障
各项目的解法1 solutions
Signals
横向对比
| 维度 | memU |
|---|---|
| 模板结构 | 七块语义分区(objective/workflow/rules/category/output/examples/input),每块独立常量 |
| 排序机制 | ordinal 数值排序,间隔 10,负值排除禁用块 |
| 覆盖策略 | complete_prompt_blocks 自动补全缺失块,用户只需覆盖关心的块 |
| 类型定制 | 6 种记忆类型各有独立七块模板,共享结构但内容差异化 |
| 验证集成 | Pydantic AfterValidator 在配置加载时自动触发补全 |
| 向后兼容 | 支持 str | CustomPrompt 联合类型,纯字符串直接透传 |
最佳实践
1.PromptBlock 按 ordinal 排序保证组合顺序
2.complete_prompt_blocks 自动补全缺失的默认块
3.prompt 与业务逻辑分离存放在独立 prompts 包中
4.ordinal 间隔设为 10 留出用户插入空间(如 input=90 留出 70/80)
5.AfterValidator 在配置反序列化时自动补全,用户无感知
6.str | CustomPrompt 联合类型实现向后兼容的渐进式迁移