限制联合请求独立素材总量

将单次识别绑定请求的独立素材数量限制为128个
This commit is contained in:
2026-09-05 13:24:58 +08:00
parent e34ae89db3
commit d014cb1d06
@@ -25,6 +25,7 @@ use std::path::Path;
use ts_rs::TS;
const MAX_REFERENCES: usize = 4;
const MAX_SPRITE_ASSETS: usize = 128;
const MAX_RECOGNITION_TREE_NODES: usize = 512;
const MAX_RECOGNITION_TREE_DEPTH: usize = 32;
const LEGACY_RECOGNITION_SYSTEM_PROMPT: &str = r#"
@@ -627,6 +628,12 @@ pub(crate) async fn recognition_and_binding_impl_with_provider(
if state.ui_design_images.len() > MAX_REFERENCES {
return Err("界面图最多 4 张".to_string());
}
if state.sprite_assets.len() > MAX_SPRITE_ASSETS {
return Err(format!(
"独立素材最多 {MAX_SPRITE_ASSETS} 个,当前为 {}",
state.sprite_assets.len()
));
}
let mut context_ids = state.ui_design_images.keys().cloned().collect::<Vec<_>>();
context_ids.sort_by(|left, right| {
let left_is_page = state