调整评估指标以适应目标语言
在使用ragas评估LLM应用工作流时,您可能需要评估非英语语言的应用。在这种情况下,最好将您由LLM驱动的评估指标调整为目标语言。一个显而易见的方法是手动更改指令和示例,但这可能非常耗时。Ragas提供了自动语言适应功能,您可以使用LLM本身自动将任何评估指标调整为目标语言。本Notebook通过一个简单的示例对此进行演示。
为了演示此示例,我们选择一个评估指标并检查其默认提示。
from ragas.metrics import SimpleCriteriaScoreWithReference
scorer = SimpleCriteriaScoreWithReference(
name="course_grained_score", definition="Score 0 to 5 by similarity"
)
{'multi_turn_prompt': <ragas.metrics._simple_criteria.MultiTurnSimpleCriteriaWithReferencePrompt at 0x7fcf409c3880>,
'single_turn_prompt': <ragas.metrics._simple_criteria.SingleTurnSimpleCriteriaWithReferencePrompt at 0x7fcf409c3a00>}
如您所见,指令和示例都是英语的。设置用于此转换的LLM。
现在,让我们使用adapt
方法将其调整为目标语言“印地语”(hindi)。Ragas中的语言适应通过将提示中给出的少量示例翻译成目标语言来实现。指令仍然是英语。
检查调整后的提示并在需要时进行修正
{'multi_turn_prompt': <ragas.metrics._simple_criteria.MultiTurnSimpleCriteriaWithReferencePrompt at 0x7fcf42bc40a0>,
'single_turn_prompt': <ragas.metrics._simple_criteria.SingleTurnSimpleCriteriaWithReferencePrompt at 0x7fcf722de890>}
使用set_prompts
方法将提示设置为新的调整后提示
使用调整后的评估指标进行评估
from ragas.dataset_schema import SingleTurnSample
sample = SingleTurnSample(
user_input="एफिल टॉवर कहाँ स्थित है?",
response="एफिल टॉवर पेरिस में स्थित है।",
reference="एफिल टॉवर मिस्र में स्थित है",
)
scorer.llm = llm
await scorer.single_turn_ascore(sample)
0
推理痕迹和得分
{ "reason": "प्रतिक्रिया और संदर्भ के उत्तर में स्थान के संदर्भ में महत्वपूर्ण भिन्नता है।", "score": 0 }