- 博客(289)
- 资源 (9)
- 收藏
- 关注
原创 langchain的简单应用案例---(1)使用langchain构建本地知识库
自定义LLM需要继承 from langchain.llms.base import LLM。(我windows系统,本地chromadb无法执行下去,连报错都没有就结束了)直接调用豆包的API, 本地部署大模型太费电。文档向量化后 存入数据库。整个demo工两个文件。
2025-08-19 15:01:30
218
原创 使用LLaMA-Factory对大模型进行微调-详解
参考: https://docs.coreshub.cn/console/compute_platform/help/llama_factory/损失曲线: 分为 Underfit(欠拟合) ,Overfit(过拟合),Good fit (完美拟合)可以看到,各个指标得分都比较低,说明本次微调效果比较差,重新调参训练吧。浏览器访问 http://127.0.0.1:7860/点击开始,他就运行了,等最后就出现训练完成;点击预览命令,可以看到,和上篇中的指令类似。(第一次使用有几个依赖 需要安装一下)
2025-08-18 09:50:23
139
原创 LangChain简介
LangChain 是一个用于构建基于大语言模型(LLM)的应用程序的开源框架,它提供了一套工具、组件和接口, 可以将 LLM 模型、向量数据库、交互层 Prompt、外部知识、外部工具整合到一起,进而可以自由构建 LLM 应用。Indexes(索引)是处理和组织外部数据(如文档、文本)的核心模块,其主要作用是将原始数据转换为可高效检索的格式,为后续的检索增强生成(RAG)等功能提供支持。模型(Models):封装各类 LLM(如 GPT、Claude)和嵌入模型(用于数据向量化);
2025-08-15 17:34:13
290
原创 使用chroma和LlamaIndex做RAG增强
RAG 原理:通过 “检索(从知识库获取相关信息)→ 增强(将信息作为上下文输入模型)→ 生成(模型基于上下文回答)” 三步,解决大模型知识时效性、领域局限性问题。代码参考: https://blog.csdn.net/lucassu/article/details/146897774。其实不需要那么麻烦,只需要写一个类能调用api接口就行,这个为了使用llama_index中的LLM搞得很麻烦。参考: https://zhuanlan.zhihu.com/p/1895505027537298602。
2025-08-13 17:26:45
226
原创 安装向量数据库chromadb
demo验证: 参考: https://blog.csdn.net/ShuaiQIXiaoLuo/article/details/145134626 (可以看看)使用浏览器访问http://ip地址:8000/api/v2/version 显示版本号 即启动成功。创建虚拟环境: python -m venv llama-env python 3.10 以上。激活: source llama-env/bin/activate。启动 Chroma 服务(服务器模式)像数据库一样远程连接使用。
2025-08-08 15:18:01
361
原创 LlamaIndex简介
LlamaIndex 是一个专为构建基于大语言模型(LLM)的检索增强生成(RAG)应用而设计的开源框架,它的核心作用是帮助开发者连接外部数据与 LLM,让模型能够基于特定领域或私有数据生成更准确的回答。参考: https://blog.csdn.net/lucassu/article/details/146897774。
2025-08-06 16:21:08
131
原创 mybatis-plus由mysql改成达梦数据库
一个是针对所有sql ,添加引号 ,一个是对mybatisplus分页sql 改写的。尤其要注意的是 库名 里面不能有横杠 类似这样"RY-VUE5",这就容易出问题;前置条件: 达梦数据库设置了大小写敏感,我比较菜,改不动!因为设置了大小写敏感,所以所有的sql语句都要加 引号;剩下的就在mybatis-plus配置类中添加两个拦截器。所以只需要将表名和字段名都加上引号就行了。指定库要用 schema=RY_VUE5。
2025-07-29 18:48:53
266
2
原创 大模型使用私有知识库的流程
当用户输入查询时,系统需要从知识库中快速定位最相关的文本块,核心是 “查询向量化→相似性搜索→结果优化”。将检索到的相关文本块作为 “上下文”,结合用户查询输入生成式模型,让模型基于上下文生成准确回答。适应动态知识:无需重新训练大模型,只需更新向量数据库即可纳入新信息(如最新论文、政策文件)。降低成本:小模型 + RAG 的效果可能接近大模型,减少对高参数模型的依赖。减少幻觉:回答基于明确的外部知识,而非模型模糊的 “记忆”。知识动态更新(如电商商品信息、政策法规、新闻资讯);一种是微调,来更新模型。
2025-07-25 11:18:52
277
原创 使用LLaMA-Factory对大模型进行微调
安装 VS Code 插件:Remote-SSH 参考: https://blog.csdn.net/xy3233/article/details/149528434。参考: https://www.lixueduan.com/posts/ai/05-finetune-llamafactory/使用的 LoRA 微调,会生成单独的 LoRA 权重,当微调完成后需要将原始模型和 LoRA 权重进行合并,得到一个新的模型。全量微调, 成本太高, 个人搞不了,一般企业也搞不了, 所以现在开始学习。
2025-07-23 12:28:26
1106
原创 在vscode 使用 remote-ssh远程开发python
如果填写了密钥 还是需要密码.通常是权限问题,打开连接详情看一下, 换一下密钥地址,或者修改权限;如果使用的密钥,则修改.ssh\config文件中中密钥地址。vscode安装插件Remote-SSH,直接安装即可。之后输入用户名和主机地址 非默认端口使用 -p 端口号。如果使用的是密码,直接连接,然后输入密码即可。安装完毕之后 在左下角有这个图标。或者把错误信息丢给大模型即可。点击之后选择连接到主机。
2025-07-22 10:21:22
273
原创 Prompt Engineering(提示词工程)基础了解
当给定一个 Prompt 时,模型会根据 Prompt 的内容,在其生成的概率空间中寻找最有可能的单词序列来继续文本。以 Transformer 架构的语言模型为例,在生成过程中,模型会根据输入的 Prompt 计算下一个单词的概率分布,这个概率分布是基于模型对词汇表中所有单词在给定当前 Prompt 上下文下出现的可能性估计。而且,随着生成过程的推进,新生成的单词也会作为新的上下文信息反馈给模型,进一步影响后续单词的概率分布,从而使生成的文本能够在整体上与 Prompt 保持主题和风格的一致性。
2025-07-21 15:36:55
831
原创 LLM(Large Language Model)大规模语言模型浅析
常见模型: DingoDB多模向量数据库(九章云极DataCanvas)、DALL-E(OpenAI)、悟空画画(华为)、midjourney。大模型本质上是一个使用海量数据训练而成的深度神经网络模型,其巨大的数据和参数规模,实现了智能的涌现,展现出类似人类的智能。多模态大模型: 这类模型结合了NLP和CV的能力,是指能够处理多种不同类型数据的大模型,例如文本、图像、音频等多模态数据。视觉大模型(CV):常用于图像处理和分析,如图像分类、目标检测、图像分割、姿态估计、人脸识别等;用什么数据和方法实现?
2025-07-18 18:04:54
676
1
原创 Transformer 架构
在编码器与解码器层都有Add & Norm层,Add指的是残差链接(Residual Connection),指的是层的输出与输入相加,有助于保留信息和防止梯度消失;Norm指的是层归一化,是常用的模型训练技巧,由于输入的数据都有不同的分布,归一化通过调整维度的均值和方差,可以消除这种影响,更加关注层内特征之间相互关系,改善梯度消失和梯度爆炸问题,有效提高模型的性能和训练时间。由多个编码器层堆叠构成,包含多头注意力机制与前馈神经网络构成的(残差模块+层归一化)两个子层结构。
2025-07-16 18:02:21
256
原创 在windows上使用vLLM部署Qwen2.5-VL-3B-Instruct-AWQ
参考: https://blog.csdn.net/weixin_44301630/article/details/122390018。中间多有坎坷,各种缺包,各种报错, 报错丢到大模型(豆包/deepseek),通常都能出结果,注意版本兼容。windows下安装 vllm 的是要借用 WLS2,使用root账户安装。vLLM是针对linux优化的,且依赖 CUDA 工具链,需要安装CUDA。安装成功后查看CUDA 版本,不同的环境查看CUDA版本不同,看一下CUDA是否支持CUDA。环境Windows,
2025-07-15 15:13:36
1010
原创 使用nginx代理mqtt服务
stream模块如果配置了http模块的一些东西, 数据解析就会出问题;其中TCP通过nginx透传要用nginx的stream模块, 而webSocket用到的是http模块;注意stream 模块不支持 server_name , 监听的只有端口,域名可以瞎配;先说概念避免踩坑: mqtt协议分 TCP 和webSocket。然后再 conf.d/mqtt.stream 中添加。首先看nginx有木有stream模块;有输出则标是有stream模块。nginx.conf中。
2025-06-04 09:43:35
613
原创 使用MQTTBroker接入jetlinks平台
https://github.com/jetlinks/jetlinks-official-protocol 官方协议。上线 topic: /1898990420985888768/1898992718722088960/online。例如: /1898990420985888768/1898992718722088960/online。内容格式: {“properties”:“online”} (格式不正确 ,接收不到消息)topic格式为: /产品ID/设备ID/xxx。
2025-03-10 15:41:55
531
原创 Cocos Creator 开发微信小游戏分包
项目设置中引擎管理器中 功能裁剪里面有很多个引擎,我们剔除掉没用的引擎,就可以减少小程序报的大小;我做的是一个简单的2D小游戏,只选择了下面的几种引擎。第二步, 创建一个开始场景, 分包不会自动加载,所以我们要手动加载。作为以后端选手,吭哧吭哧的好不容易用cocos开发了一款小游戏,我做的小游戏,资源包里面塞了很多图片,有些用不到的剔除掉;第三步, 添加一个按钮,绑定事件,跳转到真整的游戏场景。WASM这玩意儿干啥的,我不也不清楚,只是说了这句话。这是我写的小游戏 ,用来练手的, 跟屎一样。
2024-12-11 11:29:22
1112
原创 前端学习---(6)js基础--4
promise 在写法上的大致区别是:定义异步函数的时候,将 callback 改为 resolve 和 reject,待状态改变之后,然后在原来执行回调函数的地方,改为执行对应的改变 promise 状态的函数;promise.finaly():异步任务无论成功与否,都会执行的回调函数。promise.catch():异步任务失败的回调函数。promise.then():异步任务成功的回调函数。Promise 是异步编程的一种新的解决方案和规范。先将 promise 实例化;Promise的基本使用。
2024-10-25 14:32:04
323
原创 前端学习---(5)js基础--3
解决方案: JSONP(JSON with Padding):带补丁的 json,本质是利用了 标签具有可跨域的特性,由服务端返回一个预先定义好的JS函数的调用,并且将服务器数据以该函数参数的形式传递过来。异步任务:不进入主线程、而是进入任务队列(Event Queue)的任务,该任务无论有没有得到结果,都不会阻塞后续任务的执行。ES 的全称是 ECMAScript,它是由 ECMA 国际标准化组织 制定的一套脚本语言的标准化规范。同源策略是浏览器的一种安全策略,所谓同源是指,域名,协议,端口完全相同.
2024-10-24 18:40:56
461
原创 前端学习---(4)js基础-2
捕获阶段,事件依次传递的顺序是:window --> document --> html–> body --> 父元素、子元素、目标元素。(1)链式编程:比如.show()和.html()可以连写成.show().html();DOM:文档对象模型(Document object Model),操作网页上的元素的API。隐式迭代的意思是:在方法的内部会为匹配到的所有元素进行循环遍历,执行相应的方法;当一个元素上的事件被触发的时候(比如说鼠标点击了一个按钮),同样的事件将会在那个元素的所有祖先元素中被触发。
2024-10-24 15:36:16
996
原创 前端学习---(3)js基础-1
纯数字转为数字,非数字转为NaN,true转为1,false转为0,null转为0,undefined转为NaN;字符串,空串转为false,其他为true(" "空格也是true);数字常量不允许使用toString()(1.toString()中的.会被认为是小数点)全局变量: 使用const 修饰 (变量未经声明,直接使用,则这个变量是全局变量)Boolean():将基本数据类型的布尔值,转换为 Boolean 对象。Number():将基本数据类型的数字,转换为 Number 对象。
2024-10-23 16:09:57
519
原创 前端学习---(2)CSS基础
关于文字样式的属性,都具有继承性。这些属性包括:color、 text-开头的、line-开头的、font-开头的。CSS 是用来指定文档如何展示给用户的一门语言——如网页的样式、布局、等等。css语法: 选择器{ 属性名: 属性值;选择器排序的优先级为:ID选择器 > 类选择器 > 标签选择器。font-size: 属性 冒号之前是属性,冒号之后是值。知道什么是什么,知道知识点属于那一块,用的时候再查,color: 属性 冒号之前是属性,冒号之后是值。关于盒子、定位、布局的属性,都不能继承。
2024-10-18 18:01:20
342
原创 前端学习---(1)HTML
span标签:和div的作用一致,但不换行。span只是文本级的标签 span里面只能放置文字、图片、表单元素。span里面不能放p、h、ul、dl、ol、div。不仅如此,它还可以从一个文件跳转到另一个文件,与世界各地主机的文件进行连接。超文本: 图片、音频、视频、动画、多媒体等内容,成为超文本,因为它们超出了文本的限制。编程语言是有编译过程的,而标记语言没有编译过程,HTML标签是直接由浏览器解析执行。div标签:可以把标签中的内容分割为独立的区块。HTML 不是一种编程语言,是一种描述性的标记语言。
2024-10-18 12:07:55
395
原创 Cocos Creator2D游戏开发(15)---预制体和按钮的绑定以及冷却效果的实现
ClickEvents改为1, 第二个框选择CardTemplate,第三个框选择onButtonClick。知识点来源: https://www.bilibili.com/video/BV1AQe9eqEfw/场景: 植物大战僵尸中,种植植物前,要判断状态,只有在阳光充足时才能点击。点击运行,尝试点击豌豆射手,就可以看到控制台打印的日志了;其中card_mask图片中的透明度改为150;在card_light下,添加button组件。调整下面三行的值,再次点击测试;节点对应绑定,拖过去一一对应。
2024-08-25 01:21:10
720
原创 Cocos Creator2D游戏开发(14)---CocosCreator常用组件详解
相机组件其他参数: https://docs.cocos.com/creator/3.8/manual/zh/editor/components/camera-component.html。Type(类型): 用于设置图像资源的类型,包括 raw、texture(默认)、normal map、sprite-frame、texture cube。节点(Node) 是承载组件的实体,我们通过将具有各种功能的 组件(Component) 挂载到节点上,来让节点具有各式各样的表现和功能。
2024-08-20 23:00:44
1986
原创 Idea删除空行和删除包含指定字符串的行
我要删除 // @Excel 正则表达式是 \s// @Excel.*删除包含指定字符串的行 \s指定字符串.*删除空行 ^\s*\n。
2024-08-07 14:33:49
1101
原创 Cocos Creator2D游戏开发(12)-飞机大战(10)---调用微信小游戏API
微信服务端文档: https://developers.weixin.qq.com/minigame/dev/api-backend/open-api/login/auth.code2Session.html。微信前端文档: https://developers.weixin.qq.com/minigame/dev/api/open-api/login/wx.login.html。3. 在需要调用微信小游戏api的地方 引入 import “minigame-api-typings”
2024-08-05 23:28:33
576
原创 Cocos Creator2D游戏开发(11)-飞机大战(9)-cocos发布微信小游戏
第一步: cocosCreator 打包编译,设置发布平台,默认场景,设备方向,AppId 最后点击构建。① cocosCreator ②微信小游戏开发者工具。就是cocos Creator 中构建发布里面的发布路径。剩下的就是微信开发者工具中操作了,不再赘述。后面是小游戏登陆和对接后端接口。第二步: 导入微信开发者工具。官网的应该更清楚一些吧。
2024-08-04 21:27:40
452
原创 Cocos Creator2D游戏开发(10)-飞机大战(8)-计分和结束
现在游戏基本能完了, 飞机能发射子弹,打了敌机,敌机也能炸;这一章写的有点糙, 先这样吧, 这些天有点累了。还有俩脚本retry_button.ts。后面的章节是小游戏部署到微信小游戏平台;retry_button.ts脚本文件。创建一个gameOver_scene。一个GameOver_node。一个retry_button。root.ts脚本中需要添加。和登陆获取信息和跟后台交互。root.ts完整代码。
2024-08-01 22:42:28
510
原创 Cocos Creator2D游戏开发(9)-飞机大战(7)-爆炸效果
第二个这个API文档我没看懂 https://docs.cocos.com/creator/3.8/api/zh/result?Enemy.ts文件中添加动画的引用(需要手动把Animation,放在import 里面)这个爆炸效果我卡在这里好长时间,视频反复的看, 然后把代码反复的测试,修改,终于给弄出来。视频中这段,作者也是修改了好几次, 跟着做也走了不少弯路;留下了几个坑没有填, 这些节点的颜色不会改,没找到,隔行如隔山。③ 代码中引用Animation不会有提示,要手动添加。
2024-07-31 23:05:29
673
1
原创 Cocos Creator2D游戏开发(8)-飞机大战(6)-炸机
碰撞肯定是组件跟组件的碰撞,如果把脚本Enemy.ts和enemy_node绑定,碰撞的时候需要操控enemy_node子节点,所以不如把Enemy.ts和enemy_prefab预制体绑定在一块;然后是碰撞函数: 参考: https://docs.cocos.com/creator/3.8/manual/zh/physics-2d/physics-2d-contact-callback.html。现在已经可以打飞机了,而且玩家的飞机是无敌的,玩家飞机的碰撞, 不往上贴了。上面是设置刚体和碰撞体的思路;
2024-07-30 22:52:52
626
原创 docker中使用nginx配置https访问
1.申请ssl证书: https://www.joyssl.com/certificate/select/free.html。/nginx/ssl 下方的是刚才解压后的证书文档中nginx文件夹中的东西。免费的ssl证书(一般有效期是90天)到期后,则需要重新申请。添加解析记录(这是ssl相关的,后面还要添加自己的通配域名)nginx.conf 不用动, 参照上一篇文档。conf.d中的.conf文件如下。然后再添加自己的通配域名解析记录。docker-compose文件。然后到自己的域名控制台。
2024-07-30 12:32:50
428
原创 docker中使用nginx访问宿主机网络
关于nginx加不加斜杠参考: https://blog.csdn.net/weishuai90/article/details/131133621。nginx优化参考: https://www.jianshu.com/p/0fa77899913a。使用 curl http://localhost:8088/demo 就出现问题了。使用 curl http://localhost:8088/demo/ 访问正常。301 Moved Permanently,这个问题现在没有解决掉。
2024-07-30 10:16:46
783
原创 Cocos Creator2D游戏开发(7)-飞机大战(5)-让子弹飞
③ 发射子弹 player加入代码 @property(Prefab) playerBullet_prefab: Prefab;新建一个动画体,命名为playerBullet_animation.amim 保存在assets/animation/文件夹中。创建脚本PlayerBullet.ts脚本里写的是子弹运动的逻辑。现在已经可以发射子弹了,但是子弹是是静止的,不会动,向下面这样。创建动画帧 每5帧插入一张新动画 (这里重复用了第一张)Player.ts加入创建子弹的代码。
2024-07-29 22:48:32
792
原创 Cocos Creator2D游戏开发(6)-飞机大战(4)-敌机产生
6. 选中root_node节点 绑定节点和预制体, 保存。②Enemy.ts和enemy_node节点绑定。运行,飞机出来了,就是不会动。③ 编写enemy.ts代码。7. root.ts代码。敌机产生&玩家发射子弹。把敌机图片拖入预制体内。①创建Enemy.ts。然后运行 飞机就能飞了。
2024-07-29 00:08:21
432
原创 Cocos Creator2D游戏开发(5)-飞机大战(3)-手指操作玩家飞机移动
【代码】Cocos Creator2D游戏开发(5)-飞机大战(3)-手指操作玩家飞机移动。
2024-07-28 22:34:41
410
原创 Cocos Creator2D游戏开发(4)-飞机大战(2)-编辑器界面
cc.Sprite(精灵组件): 参考: https://docs.cocos.com/creator/3.8/manual/zh/ui-system/components/editor/sprite.html。Custom 表示会使用自定义尺寸。按钮作用依次是: 平移, 旋转,缩放,矩形变换,增量吸附工具,最后三个,前俩是变换工具,最后一个是布局组件。Node: Position(位置), Rotation(旋转),Scale(缩放),2D对象: 文本,精灵,单色,地图等, 干啥用的没用过,不知道。
2024-07-28 16:36:45
610
java与蓝牙模块实现通信.rar
2019-05-16
java调用C++dll
2018-11-16
springCloud学习代码(真正用的时候方便找)
2019-04-28
springboot学习源码
2019-03-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人