feat:删除多余代码
This commit is contained in:
@@ -150,62 +150,3 @@ class PlannerNode(BaseNode):
|
||||
# 如果实际修改或删除的目标不在允许范围内,则拒绝扩大修改范围
|
||||
if outside := changed_ids - set(scope.target_ids):
|
||||
raise ValueError(f"局部规划修改了范围外的组件: {sorted(outside)}")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import asyncio
|
||||
|
||||
from pydantic import BaseModel
|
||||
|
||||
from app.processor.nodes.component_resource_node import ComponentResourceNode
|
||||
from app.processor.nodes.input_node import InputNode
|
||||
from app.schemas.change_scope import ChangeScope
|
||||
from app.schemas.requirement import Requirement
|
||||
|
||||
async def main():
|
||||
# 1. 创建 state,直接提供需求和范围,单独测试规划
|
||||
state = InputNode().process(
|
||||
{
|
||||
"request": {
|
||||
"prompt": "创建销售大屏,上方展示销售总额,下方展示月度趋势",
|
||||
"screen": {"canvas": {"width": 1920, "height": 1080}, "nodes": []},
|
||||
}
|
||||
}
|
||||
)
|
||||
state["requirement"] = Requirement(
|
||||
intent="create_screen",
|
||||
goal="创建销售总览大屏",
|
||||
needs_clarification=False,
|
||||
changes=[
|
||||
{
|
||||
"target_scope": "screen",
|
||||
"operation": "add",
|
||||
"parameters": {"metrics": ["销售总额", "月度销售额"]},
|
||||
}
|
||||
],
|
||||
constraints=["总额在上,趋势在下"],
|
||||
)
|
||||
state["change_scope"] = ChangeScope(
|
||||
scope="screen",
|
||||
needs_planning=True,
|
||||
resource_needs=["销售总额和月度销售数据,用于指标与趋势展示"],
|
||||
reason="需要安排区域和组件组合",
|
||||
)
|
||||
# 2. 执行节点并打印完整 state,仅调用 LLM
|
||||
node = PlannerNode()
|
||||
state = ComponentResourceNode().process(state)
|
||||
final_state = await node.process(state)
|
||||
print(
|
||||
json.dumps(
|
||||
final_state,
|
||||
ensure_ascii=False,
|
||||
indent=2,
|
||||
default=lambda value: (
|
||||
value.model_dump(mode="json")
|
||||
if isinstance(value, BaseModel)
|
||||
else str(value)
|
||||
),
|
||||
)
|
||||
)
|
||||
|
||||
asyncio.run(main())
|
||||
|
||||
Reference in New Issue
Block a user