You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS SageMaker JupyterLab中Ragas代码模块导入错误求助

ragas版本兼容问题解决方案

问题原因分析

  1. 0.2.14版本的ModuleNotFoundError:ragas从0.2.x版本开始,已将原ragas.metrics.critique子模块下的所有指标(harmfulness、maliciousness等)迁移至ragas.metrics主模块,原子模块路径已被移除,因此直接导入会报错。
  2. 0.1.16版本的ImportError:旧版本的ragas内部代码结构与当前API逻辑不兼容,且0.1.x版本存在较多依赖兼容问题,降级会引发新的导入错误。

正确解决步骤

1. 安装正确的ragas版本

先卸载现有版本,再重新安装指定稳定版:

pip uninstall -y ragas
pip install ragas==0.2.14

2. 修改代码导入逻辑

移除原from ragas.metrics.critique import ...语句,将所有指标统一从ragas.metrics导入:

import warnings
warnings.filterwarnings('ignore')   # ignore warnings related to pydantic v1 to v2 migration

from ragas import evaluate
from ragas.metrics import (
    faithfulness,
    answer_relevancy,
    context_recall,
    context_precision,
    context_entity_recall,
    answer_similarity,
    answer_correctness,
    # 原critique模块下的指标直接从ragas.metrics导入
    harmfulness, 
    maliciousness, 
    coherence, 
    correctness, 
    conciseness
)

# 指定评估指标
metrics = [
        faithfulness,
        answer_relevancy,
        context_precision,
        context_recall,
        context_entity_recall,
        answer_similarity,
        answer_correctness,
        harmfulness, 
        maliciousness, 
        coherence, 
        correctness, 
        conciseness
    ]

result = evaluate(
    dataset = dataset, 
    metrics=metrics,
    llm=llm_for_evaluation,
    embeddings=bedrock_embeddings,
)

df = result.to_pandas()

额外注意

代码中metrics列表包含两个correctness(一个是原answer_correctness,一个是原critique下的correctness),若不需要重复评估,可根据需求移除其中一个。

内容的提问来源于stack exchange,提问作者ggcoder

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 21:07:38