RAG优化:python从零实现[吃一堑长一智]循环反馈Feedback

devtools/2025/3/30 0:55:42/

本文将介绍一种有反馈循环机制的RAG系统,让当AI学会"吃一堑长一智",给传统RAG装了个"后悔"系统,让AI能记住哪些回答被用户点赞/拍砖,从此告别金鱼记忆:

  • 每次回答都像在玩roguelike:失败结局会强化下次冒险
  • 悄悄把优质问答变成新知识卡牌,实现"以战养战"
  • 相关性评分系统堪比淘宝卖家秀:4.9分和4.8分的文档要宫斗抢C位
    在这里插入图片描述

你会看到

  • 用datetime.now().isoformat()精准记录每次打脸时刻
  • 余弦相似度计算写得比小学数学题还直白
  • 评估系统时自带左右互搏:让AI自己当裁判比较新旧版本

效果体验

  • 首轮回答像直男相亲:照本宣科尬聊
  • 二轮回答像海王撩妹:精准踩中用户high点
  • 响应长度肉眼可见变长(像极了写论文凑字数)

我们一起把RAG改造成了会进化的数码宝贝,每次用户反馈都是它升级的徽章。从此甲方说"这个AI不够智能"时,可以把锅甩给"它还在新手村练级呢!"

文章目录

  • why循环反馈?
  • 动手实现
    • 环境设置
    • 从PDF文件中提取文本
    • 将提取的文本分块
    • 设置OpenAI API客户端
    • 简单向量存储实现
    • 创建嵌入
    • 反馈系统功能
    • 带有反馈意识的文档处理
    • 基于反馈的相关性调整
    • 使用反馈微调我们的索引
    • 带有反馈循环的完整RAG管道
    • 完整工作流程:从初始设置到反馈收集
    • 评估我们的反馈循环
    • 评估的辅助函数

http://www.ppmy.cn/devtools/171457.html

相关文章

Linux(Ubuntu)系统安装Docker与Docker Compose完整指南

本文是为需要在Ubuntu系统部署容器服务的开发者准备的详细教程。我们将分两个主要部分讲解:Docker引擎的标准安装流程和Docker Compose的配置方法。所有操作均在终端执行,建议使用Ubuntu 18.04及以上版本。 一、Docker引擎安装全流程 (总耗时…

缓存相关问题

目录 缓存常见问题 缓存穿透 问题概述 解决方案 对请求增加校验机制 缓存空值或特殊值 使用布隆过滤器 缓存击穿 问题概述 解决方案 使用锁 热点数据永不过期 缓存预热 热点数据查询降级处理 缓存雪崩 问题概述 解决方案 对同一类型的key设置不同过期时间 缓…

如何使用AIOps明确Devps的问题归责

引言 拿出一个确凿的证据往往是解决背锅问题的重要办法。只有这样,才能够在没有互相指责、逃避责任或为自己及团队开脱等不良闹剧的情况下达成共识。DevOps 团队可以借助 AIOps 数据支持的可信度,让问题更清晰、背景更明确,从而一致做出更好…

rabbitmq承接MES客户端服务器

文章目录 背景整体架构概述方案详细步骤1. 数据库选型与搭建2. 设备端数据上传至数据库3. 搭建 RabbitMQ 服务器4. 数据同步模块(数据库到 RabbitMQ)5. MES 服务器从 RabbitMQ 接收数据6. 指令接收模块(RabbitMQ 到设备端) 7. MES…

CSS3:深度解析与实战应用

CSS3:深度解析与实战应用详解 1. 选择器增强2. 盒模型扩展3. 渐变和背景4. 转换和动画总结 CSS3 是 CSS(层叠样式表)的最新版本,它引入了许多新的特性和功能,使得网页的样式设计更加灵活、丰富和具有动态效果。在本文中…

tkinter日历程序的设计

1. 程序概述 这是一个使用 Python tkinter 库开发的图形界面日历程序。它能够显示当前月份的日历,并允许用户通过按钮切换查看不同的月份。 2. 主要组件说明 Calendar 类 这是程序的主类,继承自 tkinter.Tk,作为整个应用的主窗口。 2.1 …

【RK3588嵌入式图形编程】-SDL2-渲染文本

渲染文本 文章目录 渲染文本1、概述2、初始化与退出SDL_ttf3、错误检查4、加载字体文件5、渲染文本6、Surface Blitting7、缩放文本8、完整代码9、总结在本文中,将介绍如何在SDL2应用程序中使用官方的SDL_ttf扩展来渲染和操作文本。 1、概述 在这一课中,我们将看到如何在程序…

如何在阿里云linux主机上部署Node.Js

在阿里云的Linux服务器上搭建Node.js编程环境可以通过以下步骤完成。这里以常见的 Ubuntu/CentOS 系统为例,提供两种安装方式(包管理器、NVM多版本管理): 一、通过包管理器安装(适合快速安装指定版本) 1. …