评估
evaluate()
使用不同的指标对数据集进行评估
参数
| 名称 | 类型 | 描述 | 默认值 |
|---|---|---|---|
dataset
|
(Dataset, EvaluationDataset)
|
指标用于评估 RAG 管道的数据集。 |
必需 |
metrics
|
list[Metric]
|
用于评估的指标列表。如果未提供,ragas 将运行一组最佳指标进行评估,以提供全面的视图。 |
None
|
llm
|
BaseRagasLLM
|
用于生成分数以计算指标的语言模型(LLM)。如果未提供,ragas 将为需要 LLM 的指标使用默认的语言模型。这可以被指标级别中通过 |
None
|
embeddings
|
BaseRagasEmbeddings
|
用于指标的嵌入模型。如果未提供,ragas 将为需要嵌入的指标使用默认的嵌入模型。这可以被指标级别中通过 |
None
|
experiment_name
|
str
|
要跟踪的实验名称。这用于在跟踪工具中跟踪评估。 |
None
|
callbacks
|
Callbacks
|
在评估期间运行的生命周期 Langchain 回调。更多信息请查看 Langchain 文档。 |
None
|
run_config
|
RunConfig
|
用于运行时设置(如超时和重试)的配置。如果未提供,则使用默认值。 |
None
|
token_usage_parser
|
TokenUsageParser
|
用于从 LLM 结果中获取令牌(token)使用情况的解析器。如果未提供,则不会计算成本和总令牌数。默认为 None。 |
None
|
raise_exceptions
|
False
|
是否抛出异常。如果设置为 True,当任何指标失败时,评估将抛出异常。如果设置为 False,评估将为失败的行返回 |
False
|
column_map
|
dict[str, str]
|
用于评估的数据集的列名。如果数据集的列名与默认的不同,可以在此处以字典形式提供映射。例如:如果数据集的列名为 |
None
|
show_progress
|
bool
|
是否在评估期间显示进度条。如果设置为 False,进度条将被禁用。默认为 True。 |
True
|
batch_size
|
int
|
批次应该有多大。如果设置为 None(默认值),则不进行批处理。 |
None
|
return_executor
|
bool
|
如果为 True,则返回 Executor 实例而不是运行评估。返回的执行器可用于通过调用 executor.cancel() 来取消执行。要获取结果,请调用 executor.results()。默认为 False。 |
False
|
allow_nest_asyncio
|
bool
|
是否允许为 Jupyter 兼容性而打 nest_asyncio 补丁。在生产环境的异步应用程序中设置为 False,以避免事件循环冲突。默认为 True。 |
True
|
返回
| 类型 | 描述 |
|---|---|
EvaluationResult 或 Executor
|
如果 return_executor 为 False,则返回包含每个指标分数的 EvaluationResult 对象。如果 return_executor 为 True,则返回 Executor 实例以进行可取消的执行。 |
抛出
| 类型 | 描述 |
|---|---|
ValueError
|
如果因为指标所需的列缺失或列格式错误而导致验证失败。 |
示例
基本用法如下
from ragas import evaluate
>>> dataset
Dataset({
features: ['question', 'ground_truth', 'answer', 'contexts'],
num_rows: 30
})
>>> result = evaluate(dataset)
>>> print(result)
{'context_precision': 0.817,
'faithfulness': 0.892,
'answer_relevancy': 0.874}
源代码位于 src/ragas/evaluation.py
341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 | |