Files
my-v0-server/app/prompt/action_rules.py
T

27 lines
1.5 KiB
Python

"""按动作维护生成说明,字段类型和必填约束放在 schemas/actions"""
# 新增动作时在这里补充模型需要理解的执行语义
ACTION_RULES: dict[str, str] = {
"move": """## move:移动已有组件
位移单位为 px;需求给出绝对位置时,减去组件当前坐标得到 delta_x / delta_y
例如当前 x=100,目标 x=150,生成 delta_x=50
""",
"resize": """## resize:调整已有组件尺寸
设置绝对宽高;需求给出相对变化时,依据当前尺寸换算
不需要改变的尺寸省略,不改变组件位置
""",
"update": """## update:更新已有组件属性
依据快照选择 props / style 下的字段路径,不猜测不存在的嵌套结构
path 中字符串是对象键,整数是数组下标;中间路径必须存在,数组下标不能越界
只替换指定字段,不做深度合并;null 表示赋值,不表示删除
style 为 null 时可用单层路径添加属性,保留未要求修改的配置
""",
"add": """## add:按物料新增组件
每个 add 规划对应一个新增动作,用 plan_id 关联规划,component_key 选择 component_materials 中的物料
node.id 使用不与已有节点冲突的新 ID,node.type 必须与物料和规划一致
component_materials 提供物料默认 schema,依据它和设计要求生成 node
后端会用物料默认配置补全 node:对象逐层覆盖,数组整体替换,null 明确覆盖
物料示例数据仅作占位展示,sample_data 由后端依据物料设置,不代表已获取真实数据
""",
}