avatar
文章
19
标签
0
分类
0

深度学习机器
搜索

深度学习机器

开源Text2SQL框架汇总
发表于2024-07-22
Chat2DB 项目地址:https://github.com/chat2db/Chat2DB 简介:Chat2DB是一个通用的SQL客户端和数据分析工具,能够辅助生成SQL,同时支持对话式的数据分析功能,提供了网页、客户端2种使用方式,它支持几乎所有流行的数据库,并且chat2DB还开源了7B的SQL模型。 特性:SQL生成、智能报告、数据探索。 架构: SQL Chat 项目地址:https://github.com/sqlchat/sqlchat 简介:SQL Chat 是一个基于聊天的 SQL 客户端,使用自然语言与数据库以沟通的方式,实现对数据库的查询、修改、新增、删除等操作。 特性:除了自然语言交互外,还能对数据库进行增删改查。 架构: Vanna 项目地址: https://github.com/vanna-ai/vanna 简介: Vanna是麻省理工学院授权的开源Python RAG(检索增强生成)框架,用于SQL生成和相关功能。 特性:Vanna只需两个简单的步骤——在数据上训练RAG“模型”,然后提出问题,这些问题将返回SQL查询,这些查询 ...
DB-GPT:LLM应用的集大成者
发表于2024-07-22
整体架构 架构解读可以看到,DB-GPT把架构抽象为7层,自下而上分别为: 运行环境:支持本地/云端&单机/分布式等部署方式。顺便一提,RAY是蚂蚁深度参与的一个开源项目,所以对RAY功能的支持应该非常完善。 训练层:由子项目DB-GPT-Hub提供。以LLM为基,包含多种数据集和微调方法的微调框架。 协议层:AWEL(智能体编排语言),专为大模型应用开发设计的智能体工作流表达语言。 模块层:SMMF(多模型管理)、RAG(检索增强生成)、Agent(智能体)。 服务层:包含LLM、API、RAG在内的多个服务部署。 应用层:数据库对话、商业数据分析、知识库对话、表格对话等。 可视化层:输出样式,包含图表、工作流、文本的格式化输出等。 功能特性一、以RAG为核心的知识库问答 支持多文件格式、支持向量检索和稀疏检索,对海量结构化,非结构化数据做统一向量存储与检索。 二、以Chatdata为核心的数据问答 支持自然语言与Excel、数据库、数仓等多种数据源交互,分析报告,生成可视化图表。 三、统一的多模型管理服务 包括开源、API代理等几十种国内外大语言模型。 ...
基于Sentence Transformer微调向量模型
发表于2024-07-07
Sentence Transformer库升级到了V3,其中对模型训练部分做了优化,使得模型训练和微调更加简单了,跟着官方教程走了一遍,顺利完成向量模型的微调,以下是对官方教程的精炼和总结。 一 所需组件使用Sentence Transformer库进行向量模型的微调需要如下的组件: 数据数据: 用于训练和评估的数据。 损失函数 : 一个量化模型性能并指导优化过程的函数。 训练参数 (可选): 影响训练性能和跟踪/调试的参数。 评估器 (可选): 一个在训练前、中或后评估模型的工具。 训练器 : 将模型、数据集、损失函数和其他组件整合在一起进行训练。 二 数据集大部分微调用到的数据都是本地的数据集,因此这里只提供本地数据的处理方法。如用其他在线数据可参考相对应的API。 1 数据类型常见的数据类型为json、csv、parquet,可以使用load_dataset进行加载: 12345from datasets import load_datasetcsv_dataset = load_dataset("csv", data_files="m ...
开源RAG框架汇总
发表于2024-05-15
前言本文搜集了一些开源的基于LLM的RAG(Retrieval-Augmented Generation)框架,旨在吸纳业界最新的RAG应用方法与思路。如有错误或者意见可以提出,同时也欢迎大家把自己常用而这里未列出的框架贡献出来,感谢~ RAG应用框架 RAGFlow 项目地址:https://github.com/infiniflow/ragflow 简介:RAGFlow 是一款基于深度文档理解构建的开源 RAG(Retrieval-Augmented Generation)引擎。RAGFlow 可以为各种规模的企业及个人提供一套精简的 RAG 工作流程,结合大语言模型(LLM)针对用户各类不同的复杂格式数据提供可靠的问答以及有理有据的引用。 特性:OCR、内置多种文档切分模板、文档切分可视化并且可修改、兼容多种文档数据类型 架构: 硬件要求:CPU >= 4 核、RAM >= 16 GB、Disk >= 50 GB、Docker >= 24.0.0 & Docker Compose >&#x ...
记使用pdf.js过程遇到的坑
发表于2024-05-15
最近项目中需要用到js库来渲染pdf文件,调研后发现无论是reach-pdf.js或者是svelte-pdf.js都是在pdf.js基础上做了些许精简,反而功能还不如原始的pdf.js来得全面。但是原始的库几乎没有像样的代码示例,而能搜索到的大多数代码不少都是十几年前的了,在这个过程中踩了不少坑,做个记录,希望对看到的人有所帮助。 使用npm安装pdfjs-dist库(也可以直接下载源码并引入) 1npm install pdfjs-dist 导入库 12345// 网上很多代码都是import xxx from 'pdfjs-dist';// 而xxx一般都是过期或者不存在的,直接把所有导出为pdfjslib即可import * as pdfjslib from 'pdfjs-dist';// 注意需要设置这个参数pdfjslib.GlobalWorkerOptions.workerSrc = 'node_modules/pdfjs-dist/build/pdf.worker.js'; 单页渲染,多页渲染在下面代码基础 ...
【高级RAG技巧】使用二阶段检索器平衡检索的效率和精度
发表于2024-04-27
一 传统方法之前的文章已经介绍过向量数据库在RAG(Retrieval Augmented Generative)中的应用,本文将会讨论另一个重要的工具-Embedding模型。一般来说,构建生产环境下的RAG系统是直接使用Embedding模型对用户输入的Query进行向量化表示,并且从已经构建好的向量数据库中检索出相关的段落用户大模型生成。但是这种方法很明显会受到Embedding模型性能的影响,比如是否支持多语言、跨语言检索、训练数据的质量等。因此,以改进Embedding模型为目标提升RAG系统性能一般会有两种做法: 方法1,在使用向量模型获取密集向量后,再使用Cross-encoder作为精排模型,对第一次召回的结果进行重排,以提高最终结果的质量。方法2,使用稀疏向量搭配密集向量进行召回。密集向量即对整个文本进行向量化表示产生的向量,稀疏向量则是对原始文本的编码表示,如TF-IDF,BM25等。其中,稀疏向量可以帮助识别和捕捉特定的语义信息,比如文本中的关键词,而密集向量则可以提供更丰富的语义表达,是通过大量长文本学习而来的。通过同时将这两种向量进行召回,可以获得更丰富、更全 ...
【高级RAG技巧】在大模型知识库问答中增强文档分割与表格提取
发表于2024-04-18
前言文档分割是一项具有挑战性的任务,它是任何知识库问答系统的基础。高质量的文档分割结果对于显著提升问答效果至关重要,但是目前大多数开源库的处理能力有限。这些开源的库或者方法缺点大致可以罗列如下: 只能处理文本,无法提取表格中的内容 缺乏有效的分割策略,要么是一整个文档全部提取,要么是词粒度的获取 对于第一点,一般是把表格中的内容识别成文本,这样喂给大模型的时候就会出现一连串数字或者字母,这无疑会增大模型的理解难度;对于第二点,则是需要按照指定的长度对文档进行切分,或者把词按照一定的规则拼接到一块,这同样会损失到文本自身的上下文信息。 而本文接下来介绍的Open-parse这个库可以直接从文本中提取出多个节点,每个节点就是一个chunk,已经分好了,因此无需再按照长度进行split,这样同时也比单独提取一个词再进行合并又简化了不少操作;同时还支持同时提取表格和文字,无需分开提取。 快速开始安装1pip install openparse 使用pip进行安装,同时这个库依赖Pymupdf、pdfminer等其他库,也会同时安装。 识别文字123456pdf = "c:\\人口 ...
向量数据库Lancedb学习记录
发表于2024-04-15
简介Lancedb是一个用于人工智能的开源矢量数据库,旨在存储、管理、查询和检索大规模多模式数据的嵌入。Lancedb的核心是用Rust编写的,并构建在Lance之上,专为高性能 ML 工作负载和快速随机访问而设计。 快速开始安装1pip install lancedb 目前0.6.8需要pyarrow-12.0.0及以上,亲测15.0会报错。 创建客户端12345678import lancedbimport pandas as pdimport pyarrow as pauri = "data/sample-lancedb"db = lancedb.connect(uri) # 异步客户端#async_db = await lancedb.connect_async(uri) 与Chroma不同,lancedb没有服务端-客户端模式。支持同步和异步客户端,看起来异步客户端更新较快,从官方文档来看没发现使用上的区别。 创建一张表123456data = [ {"vector": [3.1, 4.1], "i ...
向量数据库Chroma学习记录
发表于2024-04-13
一 简介Chroma是一款AI开源向量数据库,用于快速构建基于LLM的应用,支持Python和Javascript语言。具备轻量化、快速安装等特点,可与Langchain、LlamaIndex等知名LLM框架组合使用。 二 基本用法1 安装安装方式非常简单,只需要一行命令 1pip instakk chromadb 2 创建一个客户端12import chromadbchroma_client = chromadb.Client() 3 创建一个集合这里面的集合用于存放向量以及元数据的信息,可以理解为传统数据库的一张表 1collection = chroma_client.create_collection(name="my_collection") 4 添加数据集合中可以添加文本,元信息,以及序号等数据。添加文本之后会调用默认的嵌入模型对文本进行向量化表示。documents和ids为必需项,其他为可选项。(metadatas、embeddings、urls、data) 12345collection.add( documents=["Thi ...
12
avatar
William
深度学习技术科普
文章
19
标签
0
分类
0
Github
公告
欢迎来到我的主页
最新文章
热门开源AI搜索引擎对比分析2025-03-30
AGE:PostgreSQL实现图数据存储与检索的关键2025-03-30
GitHub Copilot免费上线!快速上手指南与功能解析2025-03-30
LangGraph:基于图结构的大模型智能体开发框架2024-12-25
轻量高效的知识图谱RAG系统:LightRAG2024-12-25
归档
  • 三月 20253
  • 十二月 20242
  • 十一月 20242
  • 九月 20241
  • 八月 20242
  • 七月 20243
  • 五月 20242
  • 四月 20244
网站资讯
文章数目 :
19
本站访客数 :
本站总访问量 :
最后更新时间 :
©2020 - 2025 By William
框架 Hexo|主题 Butterfly
搜索
数据库加载中