refactor: 脚本提示词体系重构 — 子类从目录改为单个文件
- 删除 system/bk/ 下所有旧提示词,平铺替换为 23 个新文件 - 文件名格式统一为: 文案——描述.txt - 后端: _meta.json 扁平化,loader.py 新增 list_prompt_files() + load_prompt_file() - 后端: API 从 subcategory 改为 filename,按指定文件读取 - 后端: categories 接口返回文件列表(label/desc/filename)供前端展示 - 前端: ScriptCreation 分类选择改为卡片网格,展示文案+描述 - 前端: 清理 subcategoryCode,统一改为 filename - 前端: 字幕字号调整为 64/96/80px
This commit is contained in:
@@ -11,8 +11,11 @@ Prompt 模板系统
|
||||
# 获取分类列表
|
||||
categories = list_categories()
|
||||
|
||||
# 加载 System Prompt(大类+小类,随机取一个)
|
||||
system = load_system_prompt("bk", "ht")
|
||||
# 扫描某分类下的所有提示词文件
|
||||
files = list_prompt_files("bk")
|
||||
|
||||
# 加载指定文件的 System Prompt
|
||||
system = load_prompt_file("bk", "水电改造避坑——水电改造的4个坑.txt")
|
||||
|
||||
# 加载并渲染 User Prompt
|
||||
user = load_script_user_prompt(
|
||||
@@ -24,7 +27,9 @@ from .loader import (
|
||||
PolishPromptBuilder,
|
||||
ScriptPromptBuilder,
|
||||
list_categories,
|
||||
list_prompt_files,
|
||||
load_prompt,
|
||||
load_prompt_file,
|
||||
load_script_user_prompt,
|
||||
load_system_prompt,
|
||||
render_template,
|
||||
@@ -36,6 +41,8 @@ __all__ = [
|
||||
"load_system_prompt",
|
||||
"load_script_user_prompt",
|
||||
"list_categories",
|
||||
"list_prompt_files",
|
||||
"load_prompt_file",
|
||||
"ScriptPromptBuilder",
|
||||
"PolishPromptBuilder",
|
||||
]
|
||||
|
||||
@@ -40,7 +40,7 @@ interface GenerateTitleResponse {
|
||||
/**
|
||||
* 脚本相关 API
|
||||
*/
|
||||
const CATEGORIES_CACHE_KEY = 'script-categories-v1';
|
||||
const CATEGORIES_CACHE_KEY = 'script-categories-v2';
|
||||
|
||||
export const scriptApi = {
|
||||
/**
|
||||
|
||||
@@ -122,6 +122,11 @@ export function migrateMeta(raw: unknown): Partial<ProjectMeta> {
|
||||
return { ...obj, version: 1 } as Partial<ProjectMeta>;
|
||||
}
|
||||
|
||||
// 清理已废弃字段
|
||||
if ('subcategoryCode' in obj) {
|
||||
delete (obj as Record<string, unknown>).subcategoryCode;
|
||||
}
|
||||
|
||||
// 当前版本,无需迁移
|
||||
return obj as Partial<ProjectMeta>;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user