跳转到内容

快速入门:快速运行评估

在几分钟内开始使用 Ragas。只需几个命令即可创建一个完整的评估项目。

第 1 步:创建您的项目

选择以下方法之一

无需安装。uvx 会自动下载并运行 ragas

uvx ragas quickstart rag_eval
cd rag_eval

先安装 ragas,然后创建项目

pip install ragas
ragas quickstart rag_eval
cd rag_eval

第 2 步:安装依赖项

安装项目依赖项

uv sync

或者如果您更喜欢使用 pip

pip install -e .

第 3 步:设置您的 API 密钥

默认情况下,快速入门示例使用 OpenAI。设置您的 API 密钥即可开始。您也可以稍作修改以使用其他提供商

export OPENAI_API_KEY="your-openai-key"

快速入门项目已配置为使用 OpenAI。您已准备就绪!

设置您的 Anthropic API 密钥

export ANTHROPIC_API_KEY="your-anthropic-key"

然后在 evals.py 中更新 LLM 初始化

from anthropic import Anthropic
from ragas.llms import llm_factory

client = Anthropic(api_key=os.environ.get("ANTHROPIC_API_KEY"))
llm = llm_factory("claude-3-5-sonnet-20241022", provider="anthropic", client=client)

设置您的 Google 凭据

export GOOGLE_API_KEY="your-google-api-key"

然后在 evals.py 中更新 LLM 初始化

选项 1:使用 Google 的官方库 (推荐)

import google.generativeai as genai
from ragas.llms import llm_factory

genai.configure(api_key=os.environ.get("GOOGLE_API_KEY"))
client = genai.GenerativeModel("gemini-2.0-flash")
llm = llm_factory("gemini-2.0-flash", provider="google", client=client)
# Adapter is auto-detected as "litellm" for google provider

有关更多 Gemini 选项和详细设置,请参阅Google Gemini 集成指南

在本地安装并运行 Ollama,然后在 evals.py 中更新 LLM 初始化

from openai import OpenAI
from ragas.llms import llm_factory

# Create an OpenAI-compatible client for Ollama
client = OpenAI(
    api_key="ollama",  # Ollama doesn't require a real key
    base_url="https://:11434/v1"
)
llm = llm_factory("mistral", provider="openai", client=client)

适用于任何具有 OpenAI 兼容 API 的 LLM

from openai import OpenAI
from ragas.llms import llm_factory

client = OpenAI(
    api_key="your-api-key",
    base_url="https://your-api-endpoint"
)
llm = llm_factory("model-name", provider="openai", client=client)

有关更多详细信息,请了解LLM 集成

项目结构

您生成的项目包括

rag_eval/
├── README.md              # Project documentation
├── pyproject.toml         # Project configuration
├── rag.py                 # Your RAG application
├── evals.py               # Evaluation workflow
├── __init__.py            # Makes this a Python package
└── evals/
    ├── datasets/          # Test data files
    ├── experiments/       # Evaluation results
    └── logs/              # Execution logs

第 4 步:运行您的评估

运行评估脚本

uv run python evals.py

或者如果您是使用 pip 安装的

python evals.py

评估将: - 从 evals.py 中的 load_dataset() 函数加载测试数据 - 使用测试问题查询您的 RAG 应用程序 - 评估响应 - 在控制台中显示结果 - 将结果保存为 CSV 文件到 evals/experiments/ 目录

恭喜!您已拥有一个完整的评估设置并正在运行。 🎉


自定义您的评估

添加更多测试用例

编辑 evals.py 中的 load_dataset() 函数以添加更多测试问题

from ragas import Dataset

def load_dataset():
    """Load test dataset for evaluation."""
    dataset = Dataset(
        name="test_dataset",
        backend="local/csv",
        root_dir=".",
    )

    data_samples = [
        {
            "question": "What is Ragas?",
            "grading_notes": "Ragas is an evaluation framework for LLM applications",
        },
        {
            "question": "How do metrics work?",
            "grading_notes": "Metrics evaluate the quality and performance of LLM responses",
        },
        # Add more test cases here
    ]

    for sample in data_samples:
        dataset.append(sample)

    dataset.save()
    return dataset

自定义评估指标

该模板包含一个用于自定义评估逻辑的 DiscreteMetric。您可以通过以下方式自定义评估

  1. 修改指标提示 - 更改评估标准
  2. 调整允许值 - 更新有效的输出类别
  3. 添加更多指标 - 为不同方面创建额外的指标

修改指标的示例

from ragas.metrics import DiscreteMetric
from ragas.llms import llm_factory

my_metric = DiscreteMetric(
    name="custom_evaluation",
    prompt="Evaluate this response: {response} based on: {context}. Return 'excellent', 'good', or 'poor'.",
    allowed_values=["excellent", "good", "poor"],
)

接下来做什么?

获取帮助