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

如何在非LangChain环境下将AzureOpenAI实例接入RAGAS

解决RAGAS ResponseRelevancy调用AzureOpenAI客户端的AttributeError问题

问题根源在于RAGAS的指标评估模块要求传入的LLM实例必须提供generate方法,但原生openai.AzureOpenAI客户端并没有实现这个方法,所以需要用RAGAS官方提供的AzureOpenAI适配类来包装。

解决步骤:

  1. 安装包含Azure适配的RAGAS包
    确保你安装了带Azure OpenAI支持的RAGAS版本,执行以下命令:

    pip install ragas[azure-openai]
    
  2. 使用RAGAS的AzureOpenAI类创建实例
    不要直接用openai.AzureOpenAI,而是导入并使用ragas.llms.AzureOpenAI来创建适配后的LLM实例,参数和原生客户端一致:

    from ragas.llms import AzureOpenAI
    
    # 用access_token初始化
    llm = AzureOpenAI(
        azure_endpoint="你的Azure OpenAI端点URL",
        api_key="你的access_token",
        api_version="你的API版本(比如2024-05-01-preview)",
        model_name="gpt-4o"
    )
    
  3. 传入适配后的实例进行评估
    将上面创建的llm实例传入ResponseRelevancy指标,即可正常运行:

    from ragas.metrics import ResponseRelevancy
    from ragas import evaluate
    from datasets import Dataset
    
    # 构造测试数据集(根据你的实际数据调整)
    test_data = {
        "question": ["用户的问题是什么?"],
        "answer": ["对应的回答内容"],
        "contexts": [["回答依据的上下文文本"]]
    }
    dataset = Dataset.from_dict(test_data)
    
    # 初始化指标并执行评估
    response_relevancy = ResponseRelevancy(llm=llm)
    eval_result = evaluate(dataset, metrics=[response_relevancy])
    

这个适配类已经封装了RAGAS所需的generate方法,能和Azure OpenAI服务正常交互,完全替代原生客户端即可解决报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 22:02:08