Files
TARE-Learn/slidev/pages/day1/m5-ai-reliability.md
T
2026-06-12 01:27:11 +08:00

108 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 模块 5:常见 AI 幻觉
<div class="mt-6 p-4 rounded-xl bg-red-500/10 border border-red-500/30 text-sm">
**常见不可信结论:**
- 若依权限系统很完善
- 所有接口都有后端校验
- 按钮权限已经保证安全
- 操作日志一定完整
- 代码生成结果可以直接上线
</div>
<!--
在若依这种项目里,AI 很容易给出看起来正确但不严谨的结论。
比如“若依权限系统很完善”“所有接口都有后端校验”“按钮权限已经保证安全”“操作日志一定完整”“代码生成结果可以直接上线”。
这些话都不能直接信。
要追问:依据文件在哪里?哪个 Controller?哪个注解?哪个权限字符?哪个 AOP?哪个 Service?
没有依据,就不能写成确定结论。
-->
---
# 可信输出四件套
<div class="grid grid-cols-4 gap-4 mt-8">
<div class="text-center p-4 rounded-xl bg-white/5 border border-white/10">
<div class="text-2xl mb-2">📁</div>
<div class="font-bold text-sm">文件路径</div>
</div>
<div class="text-center p-4 rounded-xl bg-white/5 border border-white/10">
<div class="text-2xl mb-2">⚙️</div>
<div class="font-bold text-sm">函数/类/注解</div>
</div>
<div class="text-center p-4 rounded-xl bg-white/5 border border-white/10">
<div class="text-2xl mb-2">🔗</div>
<div class="font-bold text-sm">调用关系</div>
</div>
<div class="text-center p-4 rounded-xl bg-white/5 border border-white/10">
<div class="text-2xl mb-2">❓</div>
<div class="font-bold text-sm">不确定点</div>
</div>
</div>
<!--
若依案例里,一条可信结论必须包含四件套。
文件路径:前端哪个 api 文件、后端哪个 Controller。
函数、类或注解:getInfo、getRouters、权限指令、Controller 方法、权限注解。
调用关系:登录后先拿 token,再 getInfo,再 getRouters,再生成动态路由。
不确定点:比如无法确认某个接口是否有数据权限校验。
四件套不全的回答,不能轻易采纳。
-->
---
# 不可信回答示例
<div class="mt-6 p-4 rounded-xl bg-red-500/10 border border-red-500/30 text-sm italic">
「若依已经实现了完整权限控制,用户登录后会自动加载菜单和按钮权限,后端接口也都有权限校验,整体风险较低。」
</div>
<div class="mt-4 text-sm text-gray-400">问题:没有文件路径 · 没有函数名 · 没有调用关系 · 没有不确定点</div>
<!--
这段话看起来很顺,但不合格。
为什么?没有文件路径。没有函数名。没有说明菜单从哪个接口加载。没有说明按钮权限由哪个指令判断。没有说明后端接口权限在哪里校验。没有列出不确定点。
这种回答不能进入报告。
-->
---
# 可信回答示例
<div class="mt-6 p-4 rounded-xl bg-emerald-500/10 border border-emerald-500/30 text-sm italic">
「前端登录成功后调用 getInfo 获取用户信息和权限字符。随后调用 getRouters 获取动态路由菜单。前端根据返回路由生成侧边栏菜单。可以确认前端存在菜单和按钮权限控制。但仍需检查后端 Controller 权限注解,才能确认接口级权限。」
</div>
<!--
这个回答更可信。
它说明了前端登录后的两个关键动作:getInfo 和 getRouters。
它说明了前端根据返回路由生成菜单。
同时它没有夸大结论:可以确认前端存在菜单和按钮权限控制,但仍需检查后端 Controller 权限注解,才能确认接口级权限。
这就是专业表达。
-->
---
# 产出:TRAE 输出校验清单
<div class="mt-6 text-sm">
| 检查项 | 要求 |
|--------|------|
| 文件路径 | 必须有 |
| 函数/类/注解 | 必须有 |
| 调用关系 | 必须说明 |
| 前后端区分 | 必须区分 |
| 不确定点 | 必须列出 |
| 验证方式 | 必须给出 |
</div>
<!--
这一部分的产出是 TRAE 输出校验清单。
以后 AI 给出若依权限分析时,就按这些问题检查:
是否有文件路径?是否有函数、类或注解?是否说明调用关系?是否区分前端权限和后端权限?是否列出不确定点?是否给出验证方式?
没有通过这些检查的内容,不写进报告。
-->