← 返回目录
b2.1动手⏱ 约 10 分钟

评估与可观测:怎么知道它真的好用

开放题用「AI 当裁判」打分,再给智能体装上"黑匣子"

🔎 最后验证 2026-06📚 来源:🧰 Python、DeepSeek API
为什么学这个

a4.2 里,你用"答案有没有出现某个关键词"来判对错——对"1 公里=1000 米"这种有标准答案的题够用。

但现实里很多是开放题:"这段文案写得好不好?""这个回答全不全面?"——关键词根本判不了

这一节,我们升级评估:① 让另一个 AI 当裁判给开放题打分;② 给智能体装上"黑匣子"(可观测),出了问题能回放每一步。这是从"做得出"到"做得可靠"的关键一跳。

评估的闭环

📋测试集
典型 + 边界 + 刁钻题
🤖跑智能体
记录每一步轨迹
⚖️自动判分
规则命中 + AI 裁判打分
📊看指标改进
成功率/成本/延迟
循环:回到第一步,直到完成
评估闭环:跑测试集(记录轨迹)→ 自动判分(规则 + AI裁判)→ 看指标 → 改进 → 再跑

要量的还是那几样,但开放题多了"质量分":成功率 / 答案质量 / 成本(token)/ 延迟 / 稳定性

🔧 上手:让 AI 当裁判(LLM-as-judge)

开放题没法用关键词判,就再叫一个模型按评分标准打分。下面 复制即可运行

# pip install "openai>=1.0"
import json, re
from openai import OpenAI

client = OpenAI(api_key="你的KEY", base_url="https://api.deepseek.com")

def chat(prompt: str) -> str:
    return client.chat.completions.create(
        model="deepseek-chat", messages=[{"role": "user", "content": prompt}]
    ).choices[0].message.content

def judge(question: str, answer: str) -> dict:
    rubric = (
        "你是严格的评委。按 1-5 给下面的回答打分(5=准确且完整,3=基本对但有缺,1=错误或答非所问)。"
        "只输出一行 JSON:{\"score\": 整数, \"reason\": \"简短理由\"}"
    )
    out = chat(f"{rubric}\n\n问题:{question}\n回答:{answer}")
    m = re.search(r"\{.*\}", out, re.S)      # 模型常裹一层 ```json,把花括号抠出来更稳
    return json.loads(m.group()) if m else {"score": 0, "reason": "解析失败:" + out[:50]}

q = "用一句话解释什么是 RAG"
a = chat(q)
print("🤖 回答:", a)
print("⚖️ 评委:", judge(q, a))      # → {'score': 5, 'reason': '准确点出检索增强生成'}

跑一遍:第一个模型回答,第二个模型按标准打分 + 给理由。把它套进 a4.2 的测试循环,你就能给一整批开放题自动算平均分了——开放任务也能用数据迭代。

给智能体装"黑匣子"(可观测)

智能体多步、还调工具,一出错你得能回放:它第几步想错了?哪个工具返回了脏数据?花了多少 token?

  • 最朴素:在 ReAct 循环里 print 每一步的"想/做/看 + 耗时 + token"(你前面手写的代码已经在打印了)。
  • 专业工具:LangSmith / Langfuse 这类"可观测平台",自动记录每一步调用、耗时、成本,出问题点开就能看整条轨迹。

一句话:没有可观测,线上出问题你只能抓瞎;有了它,每一步都有据可查。

❓ 测验
评估一段「开放式回答」(比如一段文案)的质量,最合适的办法是?
⚠️ 避坑AI 裁判也会「看走眼」——别盲信分数

LLM 当裁判很方便,但它也有偏见:容易偏爱长答案、偏爱自己风格、对模糊标准打分飘。

几个保险:① 给清晰的评分标准(像上面的 rubric),别只说"打个分";② 关键场景多次/多模型当裁判取众数;③ 人工抽检一部分,校准裁判靠不靠谱。AI 裁判是省力工具,不是免检金牌。

🤖 给你的任务设计评分标准
我的智能体做这件事:『___』(我来描述)。请帮我设计一份给『AI 裁判』用的评分标准(rubric):1-5 分各代表什么、要看哪几个维度(如准确性/完整性/是否跑题),并给出可直接用在代码里的评委提示词。
✅ 小结

现在你能科学评估了:开放题用 AI 裁判打分、出问题靠可观测回放——这是把智能体做"可靠"的底气,也是很多人忽略、却最拉开差距的一环。

接下来我们往"连接"更深处走。你已经认识了 MCP(a3.1),下一节深入它的架构,再认识一个新角色——A2A(智能体之间怎么对话)。当智能体越来越多,它们之间怎么标准化地协作?这就是答案。

下一节 → 通信协议:MCP 深入 + A2A(进阶 B2)
智图软件的赞赏码
都看到这了,打个赏呗!
接下来 · b2.2
通信协议:MCP 深入 + A2A
继续读下一节 →