优化: AI Chat全栈多批审查修复与架构清理(risk_level清理/路由解耦/工具渲染/测试补测/死代码)
This commit is contained in:
@@ -158,8 +158,6 @@ impl AdversarialEngine {
|
||||
let eval_req = df_ai::router::TaskRequirements {
|
||||
modalities: vec![df_ai_core::model::Modality::Text],
|
||||
needs_tool_use: false,
|
||||
min_intelligence: df_ai_core::model::IntelligenceTier::Standard,
|
||||
max_cost: None,
|
||||
estimated_context: 0,
|
||||
};
|
||||
let model = df_ai::router::select_model_id(&eval_req, &self.model_pool).unwrap_or_default();
|
||||
@@ -577,7 +575,10 @@ fn extract_json(text: &str) -> String {
|
||||
if let Some(body_inner) = body.strip_suffix("```") {
|
||||
return body_inner.trim().to_string();
|
||||
}
|
||||
return body.trim().to_string();
|
||||
// 围栏闭合缺失(如 JSON 与 ``` 同行 / 闭合后仍有文字 / 多行 JSON 末尾混噪声):
|
||||
// 快路径无法干净剥离 → 落到正则兜底提取首个 JSON 对象,提升命中率。
|
||||
// (原实现在此处 return body.trim() 会把语言标记/尾随文字一起喂 serde,
|
||||
// 必然失败降级启发式,即便正则本可救回。)
|
||||
}
|
||||
// 兜底:围栏不在开头或混杂前后文字 → 正则提取首个 JSON 对象(CR-40-2)。
|
||||
// (?s) 让 . 匹配换行,贪婪 {*} 取首 { 到末 },覆盖嵌套对象。
|
||||
@@ -775,6 +776,9 @@ mod tests {
|
||||
model: "mock-model".to_string(),
|
||||
usage: df_ai_core::provider::TokenUsage::default(),
|
||||
tool_calls: None,
|
||||
// 对抗评估路径不消费推理内容,留 None 即可(CompletionResponse 新增字段,
|
||||
// 老构造点漏填 → 测试编译失败,回归补齐)。
|
||||
reasoning_content: None,
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user