记录一下那天晚上的排查过程。跑检索增强评测时报找不到 OpenAI key,可评测用的明明是本地部署的模型,也没打算调用云端接口。
刚开始盯着「环境变量没有配置,初始化即失败」,折腾了半个多小时,排掉了。
排查方向其实有限,先把可能性排一排。评测框架默认用云端模型做裁判。少数情况下是评估指标里包含需要模型判断的项。
不容易想到的是,自定义封装没实现所需的接口。
显式传入本地模型作为裁判
from ragas.llms import LangchainLLMWrapper; ragas_llm = LangchainLLMWrapper(local_llm)
再往下关闭依赖云端的关键指标
metrics = [faithfulness, answer_relevancy]
接着用本地嵌入替换默认嵌入
from ragas.embeddings import LangchainEmbeddingsWrapper; emb = LangchainEmbeddingsWrapper(local_emb)
剩下的就是在小样本上跑通再全量
python eval_rag.py --sample 20 --metrics faithfulness
改完先别撤,确认这几项。评测能完整跑完并输出各项指标,不依赖外部接口,重复运行结果稳定。
提醒一点。用本地小模型当裁判会带来评分偏差,关键结论最好再用人工抽检校准一次,别把分数当绝对真值。报错文案容易误导,真正的原因往往在相邻那一层的日志里。