当前位置: 首页 > news >正文

增强检索知识库系统1

项目概述

这是一套基于 Ollama DeepSeek、OpenAI 大模型构建的增强 RAG&MCP 知识库检索项目。

RAG(Retrieval-Augmented Generation,检索增强生成)是一种结合了信息检索技术与语言生成模型的人工智能技术。该技术通过从外部知识库中检索相关信息,并将其作为提示(Prompt)输入给大型语言模型(LLMs),以增强模型处理知识密集型任务的能力,如问答、文本摘要、内容生成等。

可以参考这两个博客来了解 RAG:

  1. https://zhuanlan.zhihu.com/p/668082024
  2. 一文彻底搞懂大模型 - RAG(检索、增强、生成)-CSDN博客
  • 本项目除了普通的文本解析以外,还增加了 Git 代码块拉取和解析,并提供操作接口。同时也增效了需求分析研发设计辅助编码代码评审风险评估上线检测等工程环节。

MCP(Model Context Protocol,模型上下文协议)定义了应用程序和 AI 模型之间交换上下文信息的方式。这使得开发者能够以一致的方式将各种数据源、工具和功能连接到 AI 模型(一个中间协议层),就像 USB-C 让不同设备能够通过相同的接口连接一样。MCP 的目标是创建一个通用标准,使 AI 应用程序的开发和集成变得更加简单和统一。

可以参考这两个博客来了解 MCP:

  1. https://zhuanlan.zhihu.com/p/29001189476
  2. 深入浅出理解MCP:从技术原理到实战落地_mcp原理-CSDN博客

MCP 官方文档:MCP 简介 - MCP 中文文档
MCP 中文社区:最大的 MCP 中文社区
MCP 服务网站:海量 MCP Servers 导航网站,GitMCP,MCP Servers

  • 一条命令帮研发,调用应用系统日志、排查系统 CPU 负载、自主选择是否调度数据库信息。
  • 一条命令帮运营,搞定复杂的 SQL 执行、导出报表、分析数据、完成促活营销券的自动化配置上架。

!RAG+MCP=Ai Agent 智能 AI 工作

AI Agent 通常翻译做:人工智能代理,或者人工智能智能体。简单来说:如果说大语言模型(LLM)是强大的 “大脑”,那么 AI Agent 就是配备了 “四肢” 和 “感官”,是一个能够感知环境、自主规划、执行任务并持续学习的智能实体。

可以参考这两个博客来了解 AI Agent:

  1. https://zhuanlan.zhihu.com/p/1918744512756454322
  2. AI Agent:7个国内框架 & Agent应用_ai agent框架-CSDN博客

Agent 文档库:检索增强生成 (RAG) | Prompt Engineering Guide

第一节:AI RAG 知识库项目介绍

大家平常使用 AI 的时候肯定也碰到过 ' 文字过多,不可以发送 ' 的情况。但是我们在编写一个程序的时候,一小个 demo 都有几百行代码,如果这时候我们还想用 AI 来帮我们检查错误的话是不是难以实现?基于此我们就要学习 RAG,来帮我们更好的和 AI 进行对话。

RAG 检索增强生成技术,它将检索和生成相互结合,可以让 AI 从海量信息中快速提取到关键词,并结合上下文,给出更加精准、连贯的答案。企业也可以构建自己的 RAG 知识库,给用户提供更加个性化专业化的服务。

大家可以参考以下文档来更加深入的了解 RAG:检索增强生成 (RAG) | Prompt Engineering Guide

在我们平时开发的时候,都知道给 AI 的提示词越多就可以得到更加准确的信息,基于这个原因,提示词工程还在 AI 早期爆火过一段时间。但是我们在使用 AI 的时候是不是会遇到这样的问题:
例:想要把 SQL 语句转化为 Java 对象,那我们在发送 SQL 语句的时候都要加一句:请你给我把这段 SQL 语句转变为 Java 对象,并且使用 Lombok 形式。
这样是不是过于繁琐了?基于此我们可以建立一个知识库,让文本匹配知识库,我们每次使用 SQL 语句转化为 JAVA 语句的时候,就使用这个知识库,减少了复制粘贴的场景,减少不必要的工作。

  • 首先我们先上传一段代码,可以是 SQL 语句、Git 提交,以及网络上的一些信息。
  • 之后,我们对这里面的文本进行切割,分为一块一块的片段,存到向量模型里面,再将文件进行打包,放到对应的知识库当中。
  • 最后我们进行提问的时候,将问题与知识库一起交给大模型,给我们生成更加准确的回答。

    http://www.dtcms.com/a/270636.html

    相关文章:

  • 模型内部进行特征提取时,除了“减法”之外,还有哪些技术
  • 线程池与并发工具:优化多线程执行!
  • [特殊字符]【跨数据库支持】SQL 秒转 ArkTS 实体!HarmonyOS 开发者的数据库适配神器 gotool.top
  • Node.Js是什么?
  • AI+智慧园区 | 事件处置自动化——大模型重构园区治理逻辑
  • 【图像处理基石】如何检测到画面中的ppt并对其进行增强?
  • 洛谷 P1104 生日---排序
  • Android Studio 2024,小白入门喂饭级教程
  • 滑动窗口的初步了解
  • 记录一下:成功部署k8s集群(部分)
  • 【音视频】TS协议介绍
  • 搭建商城系统
  • 【Java】【力扣】3.无重复字符的最长字串
  • Flutter基础(前端教程⑧-数据模型)
  • Elasticsearch RESTful API入门:基础搜索与查询DSL
  • C#项目 在Vue/React前端项目中 使用使用wkeWebBrowser引用并且内部使用iframe网页外链 页面部分白屏
  • 数据管理新范式:基于Docker的私有云存储系统构建指南
  • 十一、K8s细粒度权限管理RBAC
  • 异步进阶:C#的Task.WhenAll——如何开启多个异步任务
  • ReactNative【实战系列教程】我的小红书 6 -- 购物(含商品搜索、商品分类、商品列表)
  • 编写产品需求文档:黄历日历小程序
  • [Leetcode] 预处理 | 多叉树bfs | 格雷编码 | static_cast | 矩阵对角线
  • React面试高频考点解析
  • LeetCode Hot 100 搜索二维矩阵 II
  • langchain从入门到精通(四十一)——基于ReACT架构的Agent智能体设计与实现
  • [附源码+数据库+毕业论]基于Spring Boot+mysql+vue结合内容推荐算法的学生咨询系统
  • RedisCommandExecutionException: ERR unknown command ‘LPOS‘
  • 树莓派5-系统 Debian 12 开启VNC远程访问踩坑记录
  • vue3面试题(个人笔记)
  • uniapp AndroidiOS 定位权限检查