移除识别绑定旧计算命名

清理请求错误、结果校验和日志中的旧计算及联合文案
This commit is contained in:
2026-09-05 15:37:18 +08:00
parent aba688de90
commit c7fc9a1b57
@@ -350,13 +350,13 @@ fn validate_component_references(
.as_ref()
.is_some_and(|id| !known_sprite_ids.contains(id))
{
return Err("联合识别绑定引用了不存在的独立素材".to_string());
return Err("识别绑定引用了不存在的独立素材".to_string());
}
}
Component::Text(text) => {
if let FontSource::Bound(id) = &text.font {
if !known_font_ids.contains(id) {
return Err("联合识别绑定引用了不存在的字体素材".to_string());
return Err("识别绑定引用了不存在的字体素材".to_string());
}
}
}
@@ -674,7 +674,6 @@ pub(crate) async fn recognition_and_binding_impl_with_provider(
});
parts.push(LlmMessageContentPart::InputImage { image_url });
}
parts.push(LlmMessageContentPart::InputText { text: "请为每张输入图片各返回一棵 UI 树(trees 与输入图片一一对应);每个节点可包含 components,空数组表示无组件。不要输出 node_id。".to_string() });
let (llm, client) = if provider_identity.is_none() {
let llm = load_game_creator_app_config()?.llm;
let client = build_game_creator_llm_client_from_llm_config(&llm, "llm")
@@ -690,8 +689,8 @@ pub(crate) async fn recognition_and_binding_impl_with_provider(
)
.with_strict(true);
let request = LlmRunRequest::new(vec![
LlmMessage::system(RECOGNITION_AND_BINDING_SYSTEM_PROMPT),
LlmMessage::user_multimodal(parts),
LlmMessage::system(SYSTEM_PROMPT),
LlmMessage::user_multimodal(parts),
])
.with_function_tools(vec![tool])
.with_tool_choice(LlmToolChoice::Required);
@@ -715,7 +714,7 @@ pub(crate) async fn recognition_and_binding_impl_with_provider(
)
.await
}
.map_err(|error| format!("UI 编辑器单次计算失败:{error}"))?;
.map_err(|error| format!("UI 编辑器识别绑定失败:{error}"))?;
let call = response
.tool_calls
.iter()
@@ -724,7 +723,7 @@ pub(crate) async fn recognition_and_binding_impl_with_provider(
let arguments = parse_limited_llm_tool_arguments(&call.arguments)?;
validate_recognition_response_shape(&arguments)?;
let parsed = serde_json::from_value::<RecognitionResponse>(arguments)
.map_err(|error| format!("联合结果参数无效:{error}"))?;
.map_err(|error| format!("识别绑定结果参数无效:{error}"))?;
validate_tree_image_ids(&parsed.trees, &context_ids)?;
let known_sprite_ids = state.sprite_assets.keys().cloned().collect::<HashSet<_>>();
let known_font_ids = state.font_assets.keys().cloned().collect::<HashSet<_>>();
@@ -765,7 +764,7 @@ pub(crate) async fn recognition_and_binding_impl_with_provider(
});
}
app_log!(
"ui_editor.compute.completed requests=1 ui_images={} sprites={} trees={}",
"ui_editor.recognition_and_binding.completed requests=1 ui_images={} sprites={} trees={}",
state.ui_design_images.len(),
state.sprite_assets.len(),
ui_trees.len()