- 博客(114)
- 资源 (30)
- 收藏
- 关注
原创 团队落地 RAGAS 的五阶段路线图(13/13)
本文总结了团队落地RAGAS评估体系的五阶段路线图,涵盖从基线评估、指标选型到CI/CD集成与持续监控的全流程。通过可勾选清单、阶段化推进策略及避坑指南,帮助团队实现自动化、可复现的RAG质量评估,避免“自嗨式”评测,真正将评估融入研发闭环。
2026-10-16 16:38:16
220
原创 怎么选?不同团队画像的选型决策矩阵(12/13)
本文基于团队画像与落地需求,提供RAG评估工具选型决策矩阵与10项Checklist。针对初创、企业合规、框架绑定等不同场景,推荐主选(如RAGAS、Giskard、LangSmith)及互补工具。强调“后端模型”与“评估平台”可分离决策,突出RAGAS在无标注指标、多框架兼容性上的通用优势。最终通过事实性问题自检,确保选型兼顾合规、成本与工程效率。
2026-10-16 16:33:28
247
原创 RAGAS 不是唯一:6 大评估工具横向对比(功能篇)(11/13)
本文对比RAGAS与六大主流评估工具(DeepEval、TruLens、Arize Phoenix、Giskard、Promptfoo等),指出RAGAS虽为指标评估事实标准,但非万能解。其优势在于灵活定制与离线批评估,短板在追踪、托管与安全测试。选型应先明确诉求:若需CI集成选DeepEval,生产追踪选Phoenix,合规审计选Giskard,红队测试则可关注被OpenAI收购的Promptfoo。最终建议将RAGAS作为指标引擎嵌入更大可观测栈,实现“量化+追踪+安全”三位一体评估体系。
2026-10-15 16:24:09
282
原创 内置不够用?手搓 RAGAS 自定义指标(含 SQL/MultiHop)(10/13)
当内置指标无法覆盖业务语义时,需扩展RAGAS评估能力。本文详解自定义指标实践:通过AspectCritic实现合规性、礼貌性等二元维度评估;用RubricsScore支持1–5分制评分;利用BleuScore/RougeScore等确定性指标评估摘要与抽取任务;针对SQL/多跳问题可构建自定义指标类。强调新代码优先使用ragas.metrics.collections类式API,但AspectCritic与RubricsScore仍属旧版(v0.4.3),需从ragas.metrics导入。建议结合测试集
2026-10-14 16:08:09
265
原创 从笔记本到 CI:把 RAGAS 做成生产级流水线(9/13)
Arize Phoenix(注5) 是开源的 LLM 可观测平台,基于 OpenTelemetry,可直接追踪每次评估的 span(含输入、输出、指标分数与 reason)。这一「分数 + 理由」的结构是 v0.4 相比旧版「只返回 float」最重要的改进之一(来源:RAGAS v0.4 迁移指南(注1))。本章目标:把 RAGAS 从「在笔记本里手动跑一次评估」工程化为「团队研发/运维流程中可重复、可门禁、可监控」的一环。读者已学完前 7 章,掌握了 RAGAS 的指标概念、单条样本评估与数据集评估。
2026-10-14 16:01:15
386
原创 让评估贯穿研发:实验追踪与 @experiment/Dataset 工作流(8/13)
本文介绍如何将评估嵌入RAG研发迭代流,通过@experiment装饰器与新一代Dataset实现实验追踪。相比一次性评估,该方法支持实验命名、参数记录、结果可回溯,便于对比版本变更效果。强调ragas.experimental为实验性功能,需实测验证可用性;同时明确区分v0.4新旧数据集API(Dataset vs EvaluationDataset),避免混淆。最终以最小示例展示两次实验对比流程,助力持续优化。
2026-10-13 17:02:10
254
原创 没标注数据?用 RAGAS 自动合成测试集(7/13)
本文介绍如何使用 RAGAS 的 TestsetGenerator 在无标注数据情况下自动合成高质量测试集。通过“知识图谱抽取+query生成”两阶段流程,基于用户文档自动生成涵盖单跳与多跳的多样化问题,并附带参考上下文,支持 reference-free 评估。结合 Langchain 文档加载与文本切分,可实现高效、可控、可复现的测试集生成,适用于系统迭代中的回归测试与长尾问题挖掘。核心在于以合成集打底,人工抽检补强,提升评估效率与覆盖广度。
2026-10-12 15:59:58
369
原创 把指标真正跑起来:执行、质控与回归闸门(6/13)
本文聚焦RAG评估指标的实战落地,基于ragas==0.4.3,详解两种执行路径:推荐使用collections类式API(支持同步/异步打分,返回含分数与判断依据的MetricResult),替代已触发警告的legacy evaluate()。通过完整示例演示单条与批量评估流程,实现测试集评分、结果存为CSV、均值统计及低分样本质控。重点补全质量控制(5.5)与回归评估(5.7)环节,最终构建一条从测试集生成到指标跑通的最小流水线,助力系统迭代中的可度量验证。
2026-10-10 11:46:59
164
原创 生成侧指标与指标选型:别再乱用 Faithfulness(5/13)
本文详解RAGAS生成侧核心指标:Faithfulness(忠实度)与Answer Relevancy(相关性)。Faithfulness衡量答案声明是否均源自检索上下文,抑制幻觉,分数越高越可信;Answer Relevancy评估回答是否切题,二者均无需参考文本,适合生产监控。文章附选型速查表,建议离线用含reference指标,线上仅用reference-free指标,确保高效、低成本的质量保障。
2026-10-09 14:46:16
329
原创 Faithfulness、Context Recall…RAGAS 核心指标怎么算(检索侧)(4/13)
本文基于前文构建的RAG评估闭环,系统拆解RAGAS核心指标。聚焦检索侧,详解6项指标:从Context Precision(精确率)到Noise Sensitivity(噪声敏感度),明确各指标测什么、如何计算、代码实现及分数解读。强调“是否需reference”为选型关键——参考文本可用时用带reference指标(如Context Recall),线上监控则优先选择reference-free指标(如Faithfulness、ContextUtilization)。所有示例基于ragas==0.4.3
2026-10-08 12:07:06
323
原创 数据构建——样本、数据集与模型接入(3/13)
本章聚焦RAGAS评估前的数据准备,明确评估样本需包含user_input、response、retrieved_contexts(必填,为字符串列表),reference可选但推荐。使用SingleTurnSample或MultiTurnSample(含Turn)定义单轮或多轮样本,通过EvaluationDataset批量组织样本,构建从真实RAG输出到评分的最小闭环,为后续评估打下数据基础。
2026-09-30 14:41:49
414
原创 一张图看懂 RAGAS:核心概念与 7 大指标(2/13)
RAGAS 是一个开源的 RAG/LLM 应用评估框架,核心优势在于 无参考(reference-free)评估,仅需 (question, contexts, answer) 三元组,通过 LLM-as-a-judge 实现可量化、可规模化、可回归的自动化评估。其数据流为:样本 → 指标(依赖 LLM/Embedding)→ 分数与理由。指标分为 检索侧(如 Context Recall、Faithfulness)与 生成侧(如 Answer Relevancy),支持多模态、Agent 等扩展。当前版本
2026-09-29 17:12:28
378
原创 你的 RAG 为什么总在「一本正经地胡说」(1/13)
本章阐明评估RAG的必要性:其两段式架构(检索+生成)导致幻觉、检索偏差、问题归因难与缺乏标准答案等挑战。提出需从生成侧(忠实度、相关性)与检索侧(精度、召回、相关性)双维度评估,并强调“分诊”优于单纯打分。教程提供完整学习地图,涵盖理论铺垫、基础实践、高级应用与生态落地,引导读者系统掌握RAGAS工具链,实现可复现、可优化的评估闭环。
2026-09-28 14:21:20
346
转载 【转】AWS CTO对过去十年的经验总结 – 十条军规
转一篇AWS设计运维的经验总结,原文地址:https://amazonaws-china.com/cn/blogs/china/10-lessons-from-10-years-of-aws/?spm=a1zb6.8232479.detailFloor.3.381812d7Qfyvul作者Werner Vogels发布于 2016年3月14日10 Lessons from 10 ...
2019-03-21 15:21:15
351
转载 机器学习概述
什么是机器学习?(What is Machine learning?)Machines can "learning" by ayalyzing large amouts of data. 机器学习和人工智能的关系 ML是一种重在寻找数据中的模式并使用这些模式来做出预测的研究和算法的门类。ML是AI的一部分,并且和知识发现与数据挖掘有所交集。 ML的工作方式1...
2018-08-24 00:30:22
378
原创 2018读书清单与情况
重新开博就从2018读书清单开始吧,虽然2018已经过半,但是还记录一下,最终来看看执行了多少,不定时更新状态和更新书籍清单 技术微服务(Done)Docker技术入门与实战(Done)企业IT架构转型之道(Done)领域驱动设计(Ing)聊聊架构(Ing)亿万流量的秘密UML和应用模式分布式缓存TensorflowDeep LearningPy...
2018-08-21 16:29:06
490
原创 Hadoop环境搭建之初体验
0、版本搭建Hadpp的版本为1.2.1 下载地址为:http://apache.fayea.com/apache-mirror/hadoop/common/hadoop-1.2.1/1、登录验证(1)、确定系统是否安装了ssh和ssh-keygey可以通过which命令来确认which sshwhich ssh-keygen如果出现/usr/bin
2013-12-23 17:46:41
852
原创 Java远程debug参数
java中的远程debug调试java -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=yaddress : 调试端口suspend=y : 服务端启动时会等待客户端链接,n:服务端启动不会等待客户端链接
2013-12-22 15:06:18
545
原创 一线架构师实践指南(二)
Conceptual Architecture阶段 有经验的架构师不会一上来就关注如何定义“接口”,他们在大型系统架构设计的早期比较注重识别重大需求、特色需求、高风险需求,据此来设计概念架构。概念架构是对系统设计最初构想,就是把最关键的设计要素和交互机制确定下来,然后考虑具体技术的运用,设计出实际架构。概念架构应该抓大局、不拘小节。虽然概念架构都跳不出“架构=组件+交互”的基本定义
2013-09-20 22:41:56
1681
原创 一线架构师实践指南(一)
绪论 从本质上,架构设计是需求驱动的,而不是模型驱动的。但当很清楚需求却依然设计不出架构时,就说明“需求驱动的架构设计”的总结还“缺点什么”。架构设计是一门艺术,不可能把“一桶需求”倒进某台神奇的机器,然后等着架构设计自己被“加工生成”完毕,因此“需求驱动的架构设计”的总结给架构师的启发不够。那缺点儿什么呢?答案是“人的因素”、“架构师的因素”。 质疑意识,是架构师
2013-09-08 22:19:09
2077
1
原创 注重实效的程序员——途径篇
提示11:DRY - Don't Repeat Yourself不要重复你自己不管原因是什么,维护都不是时有时无的活动,而是整个开发过程中的例行事务。当我们进行维护时,我们必须找到并改变事物的表示——那些嵌在应用中的知识胶囊。问题是,在我们开发的规范、过程和程序中很容易重复表述知识,而当我们这样做时,我们时在向维护的噩梦发出邀请——在应用发布之前就会开始的噩梦。可靠的软件开发、并让
2013-08-22 13:13:45
1095
原创 注重实效的程序员——哲学篇
注重实效的程序员的特征:早期的采纳者/快速的改编者好奇批判的思考者有现实感多才多艺注重实现的程序员的特征是他们在处理问题、寻求解决方案时的态度、风格、哲学。他们成功 另一关键是他们对他们所做的每件事情负责。大多数人都很难接受变化,有时是出于好的理由,有时只是因为固有的惰性。理解你的工作的语境的好处之一是,了解你的软件必须有多好变得更容易了。有时接近完美是唯一的选择,但常常会涉及各种
2013-08-14 22:05:15
694
原创 MySQL更新时Error Code:1093和Error Code:1175的解决办法
Error Code: 1093. You can't specify target table 'ws_product' for update in FROM clause这个是我们在使用update或者delete语句时,在where条件里面加入的子查询导致的。例如如下的update语句:update table set type = 'static' where id in (s
2013-08-14 21:54:07
3334
原创 Java多线程模式(四)【完】
FutureTwo-Phase TerminationThread-Specific StorageActive Object
2013-08-11 00:06:52
1921
原创 Java多线程模式(三)
Read-Wirte Lock PatternThread-Per-Message PatternWorker Thread Pattern
2013-08-08 23:38:07
1292
原创 Java多线程模式(二)
Guarded Suspension Pattern 该模式描述的是当一个线程在执行某个操作时,但由于其他资源还没有准备好,需要等待,那么就等待资源准备好才开始自己的操作。我们直接看代码例子:public class Request { private String name; public Request(String name) {
2013-08-08 00:28:38
1227
原创 Java多线程模式(一)
Java多线程基础Thread类的run方法和start方法 Java语言写成的程序一定是先从主线程开始操作,所以必须在程序的某个位置启动新的线程,才能算是真正的多线程程序。start()方法是Thread类的方法,调用start()方法,就会启动新的线程。请注意,被调用来启动线程的是start()方法,而非run()方法。调用start()方法之后,Java执行处理系统会在背
2013-08-04 00:14:19
1872
1
转载 转一篇不错的一致性Hash的文章
原文地址:http://zha-zi.iteye.com/blog/1260377consistent hashing 算法早在 1997 年就在论文 Consistent hashing and random trees 中被提出,目前在cache 系统中应用越来越广泛;1 基本场景比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个
2013-08-02 15:23:31
463
原创 Maven assembly插件输出文件乱码问题
使用Maven的artifactId>maven-assembly-pluginartifactId>插件导致输出的XML配置文件源文件的中文注释变成乱码,排查了多个地方并尝试解决,都没有发现和解决问题,包括在POM文件中指定编译编码和文件编码为UTF-8都无效:plugin>artifactId>maven-compiler-pluginartifactId>version>2.
2013-07-30 14:02:51
1502
原创 两个关于XML解析报错问题小记
Caused by: org.xml.sax.SAXParseException: The string "--" is not permitted within comments. XML文件的注释()中包含了字符串"--",例如 draft表数据不进入VSearch>ref bean="draftProductAssemble"> -- draft表-->整个
2013-07-30 12:48:35
1317
原创 《软件架构设计》学习笔记&摘录(七)——程序员成长篇【完】
在进行面向对象设计的时候不要受到过多OOP编程语言级细节的干扰,就是要有在设计之时将OOP细节忘却的能力。在不同层面思考,需要考虑不同的问题。OOD应更多地将精力放在职责的划分、变化点的隔离、交互机制的确定等问题上。不能忘却OOP级的编程细节,就无法真正在OOD层面上思考。 封装、继承、多态是OO的三大特性(笔者的理解是:封装是思想,继承是手段,多态是效果)。但是,不少人对继承的理
2013-07-27 14:58:38
754
原创 《软件架构设计》学习笔记&摘录(六)
细化架构设计 多视图方法不仅仅是架构归档技术,更是指导我们进行架构设计的思维方法。将不同涉众关心的技术堆砌到一起,每个涉众都有可能看不懂了。另外,软件架构设计必须围绕“如何构建软件”制定多方面的设计决策,可能涉及的概念有很多:逻辑层(Layer)、物理层(Tier)、子系统、模块、接口、进程、线程、消息、协议,等等。基于之前介绍的5视图的架构设计方法,是解决上述两个问题的卓有成效
2013-07-17 20:11:52
1432
1
原创 《软件架构设计》学习笔记&摘录(五)
领域建模 分析的另一种重要产品是领域模型,其目标是使负责该系统基本行为的所有核心类可视。 软件的核心是它为用户解决领域相关问题的能力。 模型的选择会影响最终产生的系统的灵活性和可重用性。 由内而外早就软件。忽视了领域模型这个“内”,而仅重视编写程序这个“外”,多半是要出问题的。在对象开发过程中一个很重要的原则就是:要设计软件,使得软件
2013-07-13 00:26:27
1818
原创 《软件架构设计》学习笔记&摘录(四)
需求分析 那些没有经验的问题解决者们,几乎无一例外,都是去匆忙地寻找解决办法,而不是先给要解决的问题下定义。 什么是软件需求?什么是需求捕获、需求分析和系统分析?需求描述了系统必须满足的情况或提供的能力,它就可以是直接来自客户需要,也可以来自合同、标准、规范或其他有正规约束力的文档。需求的捕获是获取知识的过程,知识从无到有、从少到多。需求分析是挖掘和整理知识的
2013-07-06 00:12:34
13456
原创 《软件架构设计》学习笔记&摘录(三)
成功的架构设计好的架构应当具有如下品质:良好的模块化。每个模块职责明晰,模块之间松耦合,模块内部高聚合并合理地实现了信息隐藏。适应功能需求的变化,适应技术的变化。应该保持应用相关模块和领域通用模块的分离,技术平台相关模块和独立于具体技术的模块相分离,从而达到“隔离变化”的效果。对系统的动态运行有良好的规划。对数据的良好规划。明确、灵活的部署规则。 软件架构师的工作成功要
2013-07-06 00:11:29
2909
原创 《软件架构设计》学习笔记&摘录(二)
软件架构视图 方法指导过程,过程包含步骤。 所谓软件架构就是关于如何构建软件的一些最重要的设计的决策,这些决策往往是围绕将系统分为哪些部分、各部分之间如何交互展开的。不同的涉众看待软件架构的视角是不同的。软件架构是抽象的概念,所以在软件架构概念与实践之间,似乎存在某种“鸿沟”——即缺失某种概念,而这种概念可以“链接”软件架构的概念和实际的开发实际的需要,为不同涉众理
2013-05-18 23:39:25
2388
Groovy入门教程
2012-08-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅