随笔 - 20  文章 - 0  评论 - 0  阅读 - 630

langchain(5):评估

评估结果的好坏

(llm+)链评估其他llm、其他链和其他应用

评估链

  • 用什么数据集评估,通过查看数据创建评估问题

    # 方法1,通过观察不同数据集创建对应的QA
    examples = [
        {
            "query": "Do the Cozy Comfort Pullover Set\
            have side pockets?",
            "answer": "Yes"
        },
        {
            "query": "What collection is the Ultra-Lofty \
            850 Stretch Down Hooded Jacket from?",
            "answer": "The DownTek collection"
        }
    ]
    
    # 方法2,借助llm自动化这个过程,自动生成
    example_gen_chain = QAGenerateChain.from_llm(ChatOpenAI(model=llm_model))
    # 创建多组问题的答案示例
    new_examples = example_gen_chain.apply_and_parse(
        [{"doc": t} for t in data[:5]]
    )
    examples += new_examples
    # 将某个示例传入链并运行,看最终结果,无法观察中间结果
    qa.run(examples[0]["query"])
    
    # langchain的debug方法
    import langchain
    langchain.debug = True
    qa.run(examples[0]["query"])
    
    # 评估多个输入的结果及过程
    # 为多个评估Q进行测试答案Atest
    predictions = qa.apply(examples)
    # 进行评估
    llm = ChatOpenAI(temperature=0, model=llm_model)
    eval_chain = QAEvalChain.from_llm(llm)
    # 评估,Atest同A之间差异
    # 比较的并非精确匹配,而是语言的相似,表达含义的相似
    graded_outputs = eval_chain.evaluate(examples, predictions)
    
posted on   CharXL  阅读(3)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示