- 博客(62)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
原创 Chroma 向量数据库学习笔记
Chroma 是一个开源的嵌入式向量数据库。它主要用于存储和检索嵌入向量,这些向量通常由大型语言模型 (LLM) 或其他机器学习模型生成,用于表示文本、图像或其他类型数据的语义信息。Chroma 的设计目标是易于使用、轻量级、且专为 LLM 应用优化。
2025-06-12 14:03:42
409
原创 LlamaIndex 学习笔记
LlamaIndex学习笔记摘要 LlamaIndex(原GPT Index)是连接私有数据与大型语言模型(LLM)的框架,解决LLM无法直接访问最新/专有数据的问题。其核心流程分为四阶段: 预处理:解析PDF/Word等文档,分块处理并生成带元数据的节点; 索引构建:通过嵌入模型创建向量/关键词/图谱等混合索引; 查询处理:多策略检索(向量相似度+关键词匹配),筛选相关节点; 响应生成:结合LLM合成答案(紧凑模式/树状汇总等)。系统还支持持续优化索引与检索策略。适用于需增强LLM领域知识的应用场景。
2025-06-12 11:06:05
471
原创 RAG 处理流程
本文介绍了RAG(检索增强生成)系统的处理流程与关键问题。系统首先将用户问题编码为向量,通过检索器从知识库中获取相似文档,可选重排序后输入问答模型生成答案。主要挑战在于嵌入模型不一致问题:知识库编码和查询编码若使用不同模型会导致检索质量下降。解决方案包括统一嵌入模型或直接使用问答模型嵌入层。流程分为检索阶段(向量空间)和生成阶段(文本空间),其中向量仅用于检索,生成阶段输入为纯文本。典型组件包括嵌入模型(如text-embedding-ada-002)、检索器(如FAISS)、重排序模型(如cohere-r
2025-06-11 22:23:55
905
原创 RAG 和微调如何抉择
摘要: 选择RAG或微调需综合考虑数据特性、应用场景等因素。RAG适合动态知识、高透明度需求,能降低幻觉,适用于问答系统等场景;微调则适合领域特定、风格固定的任务,如代码生成等。两者结合可兼顾实时知识与领域风格,典型场景包括客户支持机器人、专业文档处理等。优先RAG:知识频繁更新、需溯源;优先微调:稳定领域、风格定制。结合方案适用于需同时满足准确性、个性化输出的复杂需求。(149字)
2025-06-11 11:12:05
435
原创 ubuntu22.04 安装docker 和docker-compose
Ubuntu系统Docker安装指南 本文详细介绍了在Ubuntu系统上安装Docker和Docker Compose的步骤。首先需要卸载旧版本Docker,然后更新系统并安装必要依赖。通过阿里云镜像源安装Docker CE社区版,提供解决常见启动错误的方案。对于Docker Compose,指导下载指定版本并设置执行权限,同时给出版本冲突问题的解决方法。文中包含完整的命令行操作和注意事项,帮助用户顺利完成安装和验证。
2025-06-09 17:44:10
474
原创 【记一次LLamafacoty量化环境】has inconsistent version: expected ‘0.7.1‘, but metadata has ‘0.7.1+cu124‘
本文总结了使用auto-gptq进行量化时遇到的版本兼容问题及解决方法。由于auto-gptq可能被弃用,建议使用指定版本组合:Python 3.11、torch 2.3.0、cuda 121、auto-gptq 0.7.1、transformers 4.51.1等。安装时需注意版本冲突,如降低Python版本、手动安装PyTorch等。当使用vllm作为推理引擎时,需特别注意rope_scaling参数的兼容性,文中推荐的版本组合可有效解决常见报错问题。
2025-06-05 18:07:30
323
原创 llamafactory 微调模型出现TypeError: argument of type ‘NoneType‘ is not iterable
文章摘要:作者在运行transformers模型时遇到一个TypeError错误,提示ALL_PARALLEL_STYLES变量为NoneType不可迭代。解决方法是在llamafactory的训练代码开头(如tuner.py文件)添加代码片段,检查并初始化modeling_utils模块中的ALL_PARALLEL_STYLES变量,将其设置为包含"tp"、"none"等四个并行风格的列表。该方案有效解决了NoneType不可迭代的问题。
2025-06-02 11:19:15
399
1
原创 mac-ubuntu虚拟机(扩容-共享-vmtools)
其中最主要的是设置文件夹后需要挂载命令,并且每次重启虚拟机都需要重新挂载。使用GParted工具对Linux磁盘空间进行扩展。该文章是win下,mac下直接按照下图添加即可。查看已经显示为重新安装VMware Tools。经过上面的方式后还不够,需要再进行下面的操作。执行之后就可以使用,也可以在标签栏中的。
2024-10-31 15:44:17
852
原创 一个坑firewall-cmd: error: unrecognized arguments
写一个比较坑的问题,添加端口号的过程中出现下面的问题[root@instance~]# firewall-cmd --zone=public –-add-port=80/tcp --permanentusage: see firewall-cmd man pagefirewall-cmd: error: unrecognized arguments: –-add-port=80/tcp下意识的检查一下防火墙的状态,仍然是开启状态,但是百般搜索都是让开启防火墙,自己测试了一下,防火墙是否开启执行添加
2022-04-06 08:47:47
16575
4
原创 Spring boot websocket - IllegalArgumentException in bean ‘subProtocolWebSocketHandler‘ No handlers
问题的根源在于问题的根源是你没有在registerStompEndpoints中配置任何端点。尝试使用STOMP但尚未配置任何STOMP端点的应用程序将无法正常工作。开始的代码是这样的:@Configurationpublic class CustomWebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer { @Bean(value = "serverEndpointExporter") public Serv
2021-03-26 18:53:21
1358
原创 函数式编程及常用接口详解
函数式编程介绍函数式编程就是一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要输入是确定的,输出就是确定的,这种纯函数我们称之为没有副作用。而允许使用变量的程序设计语言,由于函数内部的变量状态不确定,同样的输入,可能得到不同的输出,因此,这种函数是有副作用的。函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数!这个我借鉴与廖雪峰官方网站的说法,在我这边看来,我一直这样理解函数式编程我们不再像命令式编程一样,使用一个确定的
2020-12-12 17:05:33
548
原创 设计模式之原型模式
原型模式一、认识原型模式1、概念用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。我们拿电脑中复制粘贴的例子来演示一下原型模式.[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b9xYV92q-1607679850549)(C:\Users\张玉雷\AppData\Roaming\Typora\typora-user-images\1565795340407.png)]上面这张图已经很明显了,首先我们需要一个文件,这个文件一定要有可以被克隆的功能,那么我
2020-12-11 17:44:31
221
原创 设计模式之单例设计模式
单例设计模式概述单例设计模式注意要用三种:懒汉式单例、饿汉式单例、登记式单例。特点:单例类只能有一个实例单例类必须自己创建自己的唯一的实例单例类必须给所有其他对象提供这一实例代码实例一:懒汉式单例public class Singleton{ private Singleton(){} private static Singleton single = null; public static Singleton getInstance(){
2020-12-11 17:43:40
269
原创 设计模式之工厂方法模式
工厂方法模式1.概述1.1定义工厂方法模式又称工厂模式,多态工厂模式和虚拟构造器模式,通过定义工厂父类负责定义创建对象的公共接口,而子类负责生成具体的对象。1.2主要作用将类的实例化(具体产品的创建)延迟到工厂类的子类(具体工厂)中完成,即由子类来决定应该实例化哪一个类。1.3解决的问题工厂一旦需要生产新产品就需要修改工厂类的方法逻辑,违背了“开放-关闭”原则(即简单工厂模式的缺点)之所可以解决简单工厂的问题,是因为工厂方法模式把具体产品的创建推迟到工厂类的子类(具体工厂中),此时工
2020-12-11 17:42:55
234
原创 String、StringBuffer、StringBuilder
一、认识StringString类型是不可变类型,为了保持文章的独立性,还是拿出来这个老掉牙的例子,public class Test2 { public static void main(String[] args) { String a="张三"; System.out.println(a); a="李四"; System.out.println(a);
2020-12-11 17:42:16
238
原创 Java内存模型(JMM)
Java内存模型(JMM)– 借鉴爱编码简介Java内存模型规范了Java虚拟机与计算机内存是如何协同工作的。Java虚拟机是一个完整的计算机的一个模型,因此这个模型自然也包含一个内存模型——又称为Java内存模型。为什么要有内存模型现代的计算机有多级缓存在CPU访问存储设备时,无论是存取数据抑或存取指令,都趋于聚集在一片连续的区域中,这就被称为局部性原理。时间局部性(Temporal Locality):如果一个信息项正在被访问,那么在近期它很可能还会被再次访问。比如循环、递归、方法的
2020-12-11 17:41:07
353
原创 Java 的 CAS原理
Java 的 CAS原理– 借鉴爱编码,来这里分享一下简介在计算机科学中,比较和交换(Conmpare And Swap)是用于实现多线程同步的原子指令。它将内存位置的内容与给定值进行比较,只有在相同的情况下,将该内存位置的内容修改为新的给定值。这是作为单个原子操作完成的。原子性保证新值基于最新信息计算; 如果该值在同一时间被另一个线程更新,则写入将失败。操作结果必须说明是否进行替换; 这可以通过一个简单的布尔响应(这个变体通常称为比较和设置),或通过返回从内存位置读取的值来完成。核心思想
2020-12-11 17:40:22
299
原创 设计模式之综述
设计模式之综述1.设计模式的三个分类创建型模式:对象实例化的模式,创建型模式用于解耦对象的实例化过程。结构型模式:把类或对象结合在一起形成一个更大的结构。行为型模式:类和对象如何交互,及划分责任和算法。如下图所示:2.各模式中的关键点单例模式:某个类只能有一个实例,提供一个全局的访问点。简单工厂:一个工厂类根据传入的参量决定创建出那一种产品类的实例。工厂方法:定义一个创建对象的接口,让子类决定实例化那个类。抽象工厂:创建相关或依赖对象的家族,而无需明确指定具体类。建造者模式:封装一
2020-12-11 17:39:12
402
原创 Java的四种引用类型
Java的四种引用类型1.概述Java中四种级别的引用:强引用,软引用,弱引用,虚引用这四种中,只有强引用FinalReference类是包内可见,其他三种都是public,可以在应用程序中直接使用2.强引用特点:1.可以直接访问目标对象2.所指向的对象在任何时候都不会被系统回收。jvm即使抛出OOM异常,也不会回收强引用所指向的对象,只有在目标堆中没有任何变量指向时,才会被回收。3.强引用可能导致内存泄漏3.软引用除强引用外,最强的引用类型,可以通过java.lang.ref.Soft
2020-12-11 17:38:07
834
原创 springboot多环境配置-使用Yml及其碰到的问题
多环境配置这里为了方便只有两个环境dev开发环境 prod生产环境配置一pom.xml<!-- 解析@插件--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId>
2020-11-20 22:44:59
614
原创 springboot接入沙箱支付包支付流程
1.首先你需要有你的沙箱账号点击这里进入2.接入支付宝支付流程添加一个配置类,内容如下public class AlipayConfig { //进入沙箱应用后你可以看到一个app id,就是那个 public static String app_id = ""; //商家私有key,这个可以下载一个支付宝开放平台开发助手,让他生成一个秘钥 public static String merchant_private_key = ""; //这个就是上面生成之后伴随
2020-11-11 20:57:33
816
4
原创 Your branch and ‘origin/develop‘ have diverged,
原因是存在两种独立的提交(每种可能有多个提交): 一种是来自你本地分支副本的提交,另外的提交来自远程分支副本。(通常是由于另外一个人在上游相同的分支做了提交)解决办法强制让你的分支push到你的上游分支git push origin develop -f这个时候就解决了问题...
2020-10-30 16:57:07
5563
2
原创 Branches ‘develop‘ and ‘origin/develop‘ have diverged. Fatal: And branch ‘develop‘ may be fast-forwa
Branches 'develop' and 'origin/develop' have diverged. Fatal: And branch 'develop' may be fast-forwarded这个错误就是说这里发生的是远程接收到更新,并且git-flow要求在合并功能之前将develop和origin/develop 设置为相同的提交。这是为了防止发布分支时出现不良冲突。要解决这个问题,您需要:1.将您的本地develop与origin同步: develop,从 origin/de
2020-10-24 16:00:13
3284
3
原创 Caused by: javax.websocket.DeploymentException: Cannot deploy POJO class
发生这个错误我们可以尝试去追踪一下源码这是调用的第一个的注册enpoint的一个方法错误是从serverContatiner.addEndpoint这个地方出来的,我们进去的话会发现这里获取注解时候出现为null,所以我们再去看下错误显然我们忽略了AOP,在网上找了很多,但是都是各种AOP切过这个类的各种样子解决办法排除此类不被切,对于如何排除我大概说一点,你可以尝试去改你写的execution表达式特殊一点,如果你的这个类配置注解写的是:@Configuration这个要替换为@Compon
2020-10-21 10:25:27
3563
原创 spring security中遇到的问题
1.An Authentication object was not found in the Security Context在security上下文中没有找到一个认证对象,我这边的问题在于controller中方法添加了认证注解,但是配置类中源自于一片我为了解决拦截静态文件的博客,上面说这个忽视目录会以classpath中的static文件夹,实际上这样写有着很大问题,这边会让所有的文件不拦截,虽然你的http认证添加了拦截,但是web这个会影响到效果,所以一边允许所有文件不拦截,一边control
2020-10-04 19:42:39
6985
原创 Java之装饰者模式实现
引言装饰模式是一种结构型设计模式, 允许你通过将对象放入包含行为的特殊封装对象中来为原对象绑定新的行为。这个模式我们应当最清楚不过了,不管是在写IO流时候还是在java.awt.Container#add(Component) (几乎广泛存在于 Swing 组件中)javax.faces.component.UIComponent#getChildren() (几乎广泛存在于 JSF UI 组件中)那么我们自己写一个简单的例子来认识它案例 读写文件需求说明我需要一个功能,不仅仅只是原模原样
2020-09-21 16:20:31
234
原创 java之抽象工厂模式实现
引言抽象工厂模式是一种创建型设计模式, 它能创建一系列相关的对象, 而无需指定其具体类。我们这时候要清楚一件事情那就是所有我们得产品多将有着对应的接口以便产出不同的产品这个模式在Java中非常常见javax.xml.parsers.DocumentBuilderFactory#newInstance()javax.xml.transform.TransformerFactory#newInstance()javax.xml.xpath.XPathFactory#newInstance()
2020-09-21 15:55:59
234
原创 Java之观察者模式实现
引言观察者模式是一种行为设计模式, 允许你定义一种订阅机制, 可在对象事件发生时通知多个 “观察” 该对象的其他对象听起来很抽象,不着急,我们来通过一个例子去理解它案例,发送消息需求说明我现在需要实现一个简单的功能,就是每当用户点击我的头像后,被点击人就会收到一个通知角色注册编辑者(Editor)、事件管理者(EventManager)、观察者(InformationListener)、调用者(Client)代码我先理清一下下面代码的思路,以方便你阅读代码Editor:注册
2020-09-21 14:16:01
364
1
原创 关于idea经常自动降低jdk版本问题
Language level 和 Java Compiler 版本自动变化问题平时使用Idea时候总是会出现JDK自动降级,开始不在意,只是手动提高版本,这次打算彻底解决他原因经排查,原来是这个问题的根源在于 maven 的 pom.xml 文件中未配置 jdk 版本导致。当未配置 jdk 版本时,一旦 pom 文件发生变化,Java Compiler 和 Language level 会自动变回到原来的默认 1.5 版本。解决办法在 pom 文件中添加 maven-compiler-plugin
2020-09-15 15:58:20
1073
原创 pycharm出现的安装的包问题
首先我们得明确一点,使用这个IDE时候我们可以去选定对应的python解释器,同时也表示着你选择的这个解释器是否已经存在你所需要的package因为网速问题,我们还是使用国内镜像,以免总是出现各种因为网速出现的问题方法是在“Manage Repositories”中,修改数据来源,默认的是“https://pypi.python.org/simple”,我们可将其替换为如下的几个数据来源,这些都是国内的pip镜像:清华:https://pypi.tuna.tsinghua.edu.cn/simple
2020-09-10 17:59:03
728
原创 关于springboot的@RequestParam与@RequestBody注解详解使用
@RequestParam与@RequestBody这两个注解是我们在写SpringBoot项目使用频率非常高的两个参数注解,这俩最主要的用法差距就是一个是URL,一个是请求体@RequestParam,这个注解使用时候最好添加参数(value),当然发送请求的地方也要按照这个value来起名@RequestBody,这个注解看你个人需求是否需要添加默认值,也就是请求体没有时候,它会有一个默认值,然后这个请求体默认是一个json串,然后进行处理就okeg: public String getCa
2020-08-16 14:29:19
760
原创 关于tomcat启动之后出现Error: Could not create the Java Virtual Machine.
网上搜了一大堆,都是去改什么文件,有的文件还不一定有在我版本中,但是改了都没起效果,这里我也给出一种办法:版本问题我本机使用tomcat是8,jdk开始用的是13,所以就一直出现这个问题,只要把版本改低一些就好,我改为了8可以运行提示,除了更改还需要更改tomcat配置...
2020-06-14 23:09:35
2177
原创 idea配置tomcat后访问项目问题
对于idea配置tomcat可自行搜索,有很多这里不再重复,当我们配置tomcat时候可能存在一个Artifacts没有的问题,这个时候就需要新建一个这个然后创建一个这个web:这个时候你会发现文件夹有蓝色点的就是你项目的路径,当然可以更改:有其他问题可以再留言区留言...
2020-05-19 20:29:36
214
原创 mysql中实现修改某个时间字段的年份
mysql没有自带stuff这样的函数,所以我们可以尝试手写一下代码:-- 实现函数-- 自定义更改时间DELIMITER $$CREATE FUNCTION stuff( f_old VARCHAR(1000),f_start INT,f_length INT,f_replace VARCHAR(1000))RETURNS VARCHAR(2000)BEGIN RETURN...
2020-04-20 14:16:38
3068
1
原创 $.ajax发送数据使用springboot接收
数据传送有很多方式,这里说一种常用并且简单的方式html代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script type="text/javascript" sr...
2020-04-16 11:14:20
487
原创 欢迎使用CSDN-markdownthylemeaf出现 Property or field 'redirectUrl' cannot be found on object of type编辑器
thylemeaf出现 Property or field ‘redirectUrl’ cannot be found on object of type这个问题困扰了好几天,一直不清楚为什么会时不时的出现,明明开始没错,过会就有错然后重新删除类粘贴就没事了过会就不行了问题解决:实体类添加get,set方法,原本我使用了lombok中的@Data我们知道这个注解包含了get和set,在一些场...
2020-04-14 13:31:13
284
原创 解决冲突! [rejected] master -> master (non-fast-forward) error: failed to push some refs to
出现这个情况,我们可以看出来你的项目提交出现了冲突一是:你在不同机子上进行提交项目然后没有解决问题就会如此二是:新建分支后,不同的分支进行提交,这种情况下,Git无法执行“快速合并”,只能试图把各自的修改合并起来,但这种合并就可能会有冲突对于一解决办法:输入git status查看当前git管理的项目资源状态,需要手动git add以下中的文件:然后这个时候再去push项目就会可以了...
2020-03-24 13:05:19
12106
原创 运行代码生成器时出错,“获取类型”,请尝试重新生成项目
我们在创建Models后,去创建Controllers总是出现这个问题,不是因为代码编写而是vs本身的一个问题:vs的bug吧,生成执行文件的时候出错了,叫你重新生成解决方案试试右键解决方案,然后重新生成就可以了,亏我找了很多人还有很多插件...
2020-02-27 10:39:27
1887
7
原创 System.InvalidOperationExceptino:如果应用程序没有控制台或者控制台输入已通过文件进行重定向,则无法读取键,请尝试使用Console.Read
System.InvalidOperationExceptino:如果应用程序没有控制台或者控制台输入已通过文件进行重定向,则无法读取键,请尝试使用Console.Read这个问题其实很简单,主要是因为你的项目中设置了Windows应用程序但是使用了控制台中才可以使用的方法:Console.如果继续使用控制台程序,则可以改设置:现在就没问题了...
2020-02-09 11:12:40
2113
java多线程拥有同一把锁就代表拥有同一种资源吗
2019-05-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人