feat(site-import): 两段生成器与数字校验器
Task 5:app/platform/site_import/generator.py——AI 两段(行业分析/ 内容填槽,GEN1/GEN2 系统提示含数据边界声明与 JSON 严格指令)+ 数字校验器(全半角/单位/千分位/波浪号归一比对,违例剔除+孤立单位 清理)+ spec §4 草稿组装(占位符填槽/出厂默认兜底/规格公开分支/ 模板残留剔除/墙尾巴三语 es 降级 null)。create_provider 加可选 max_tokens 透传(默认 None 既有调用零影响);MAX_TOKENS_TARGET=8192 (Task 1 探针结论)。AI 调用 wait_for 120s 包裹,超时不吃重试预算。 测试 38 条(provider 全 fake),全量 774 passed + 2 skipped。 Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
@@ -131,14 +131,20 @@ DEFAULT_PROVIDER = PromptProvider.from_dir(
|
||||
Path(__file__).resolve().parents[3] / "seed_profiles" / "jiancai" / "prompts")
|
||||
|
||||
|
||||
def create_provider(config_data: dict | None = None) -> AIProvider:
|
||||
"""provider 工厂(Task 9: 按租户配置实例化 glm;None 走 env 平台默认)。"""
|
||||
def create_provider(config_data: dict | None = None,
|
||||
max_tokens: int | None = None) -> AIProvider:
|
||||
"""provider 工厂(Task 9: 按租户配置实例化 glm;None 走 env 平台默认)。
|
||||
|
||||
max_tokens(site-import Task 5): 可选透传 GLMProvider(默认 None 不限,
|
||||
既有调用零影响)——生成器长输出场景用,对话路径不传。
|
||||
"""
|
||||
cfg = resolve_ai_settings(config_data)
|
||||
if cfg["provider"] == "glm":
|
||||
return GLMProvider(
|
||||
api_key=cfg["api_key"],
|
||||
model=cfg["model"],
|
||||
base_url=cfg["base_url"],
|
||||
max_tokens=max_tokens,
|
||||
)
|
||||
raise ValueError(f"Unknown AI provider: {cfg['provider']}")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user