- 博客(46)
- 收藏
- 关注
原创 基于unsloth微调一个越狱大模型
网上其实并没有找到现成的开源越狱数据集,所以数据集获取是个麻烦事。想了想easydataset,可能还是不行,easydataset是基于大模型回答的,大模型一般都做了对齐训练,那本地文档生成数据这条路也不可靠。该仓库里分享了大量越狱实验的问答记录,针对不同模型,不同越狱攻击方式,不同越狱问题类型都有记录,而且有标记那些记录是越狱成功那些越狱失败(通过jailbroken字段)英语的越狱似乎还不错,但是中文就拒绝回答了。现成的越狱数据集没有,但是有很多开源的越狱实验!训练前测试了几次,是不会直接回答的。
2025-04-21 21:30:24
467
原创 基于GRPO将QWEN训练为和deepseek一样的推理模型!
群体相对策略优化(GRPO)算法最初由deepseek团队提出,是近端策略优化(PPO)的一个变体。GRPO 是一种在线学习算法,它通过使用训练过程中已训练模型自身生成的数据进行迭代改进。GRPO 目标背后的逻辑是在确保模型与参考策略保持接近的同时,最大化生成的completion的优势。DeepSeek团队在使用纯强化学习 训练 R1-Zero 时观察到了一个“aha moment”。该模型学会了通过重新评估其初始方法来延长其思考时间,而无需任何人工指导或预定义指令。该模型将生成多个响应。
2025-04-19 17:52:36
950
1
原创 防止反编译,java打包后加密,防源码泄露
客户想私有化部署我的产品,但是预算不足,所以只给jar包不给源码;但是jar依然有反编译的风险,比如springboot项目打包为jar包后,可以通过反编译出部分源码,有源码泄露风险。所以需要对jar加密之后再交付给客户。
2025-04-15 17:13:25
460
原创 基于unsloth微调大模型并上传到huggingface
本文基于B站up主的代码编写,,并说明有关潜在的坑。如果无法打开也可以在文章后面找到源码。该代码使用微调DeepSeek-R1-Distill-Llama-8B,数据集使用, 旨在将模型微调为一个算命大师。数据集格式:{ Question, Response, Complex_CoT } ,因为微调的是一个推理模型,所以包含思维链。微调的大致流程如下。
2025-04-14 19:26:42
1152
原创 大模型微调数据集怎么搞?基于easydataset实现文档转换问答对json数据集!
然后将md文件上传到easydataset,easydataset会将其拆分成若干个片段,并针对每个片段生成若干个问题,最后再对每个问题进行回答,问答对就完成了。原理是通过将文档片段发送给ollama本地模型,然后本地模型生成有关问题,并基于文档片段回答问题。进入easydataset的运行界面,新建项目,会被要求添加模型。ollama安装就不赘述了,easy-dataset是一个前端项目,只需要有nodejs就能运行起来了。微调的难点之一在与数据集。上图左侧是我的原文档,右侧是我基于文档生成的数据集。
2025-04-13 17:02:39
739
原创 问卷星脚本
在支持自定义脚本的插件中(tampermonkey或者scriptcat),新建脚本,删除新建脚本里自带的所有的字符,再把上述代码粘贴进去,保存,就算安装成功了。脚本如何使用,参考代码注释。
2025-03-26 22:42:22
2313
1
原创 给你的服务器配置子域名
我有一个example.top的主域名,绑定了某个ip地址IPA,对应一台阿里云服务器。做开发的时候想实现一个线上测试环境,看看代码在线上有没有问题。以前我都是在主域名下对应的文件夹下再创一个test文件夹,然后把html放进test目录下当作线上测试环境,这样我就可以通过访问example.top/test来访问我新上线的代码,而且用户也不知道这个路径,自然就做到了一定程度环境隔离。
2025-03-21 15:02:42
991
原创 防止用户调试网页的若干方法
打开调试面板时会停留在debugger行,从而导致if成立。即便禁用鼠标右键、F12、快捷键,浏览器仍然能打开调试面板。打开之后还能通过下面这个按钮禁用断点,所有的努力白费~~~所以前端的代码运行在魔鬼计算机上,后端安全才是王道~~~performance.now()返回高精度时间戳。最后在main.js中引入,就完成了。
2025-03-18 16:53:13
417
原创 没有人比我更懂跨域!!!
跨域是由于浏览器的同源策略所导致的一种安全机制。同源策略要求网页在发送网络请求时,api的协议、域名、端口必须与网页完全相同,否则浏览器就会阻止这些请求,这就是跨域限制。跨域是浏览器特有的一种特性,在服务端并不存在跨域的概念。服务器之间进行通信时,只要网络可达、权限允许,就可以自由地交互数据。
2025-01-12 15:43:16
537
原创 SpringBoot与Vue实现WebSocket心跳机制
前端每隔一段时间向后端发送一次字符串ping-${uid},后端收到后返回pong响应。
2025-01-02 11:18:41
641
原创 springboot+vue实现SSE服务器发送事件
一个基于订阅发布机制的SSE事件。客户端可以请求订阅api(携带客户端id),与服务器建立SSE链接;后续服务器需要推送消息到客户端时,再根据客户端id从已建立链接的会话中找到目标客户端,将消息推送出去。后端执行某耗时任务时,需要实时推送进度到客户端,每完成一个阶段,就向客户端推送一个单位进度,做到客户端实时显示进度的效果。这个控制器类允许客户端订阅、接收消息和断开连接。
2025-01-01 23:49:06
498
原创 纯前端实现更新检测
update.js的主要功能是定期检查网页中的脚本标签是否有更新,并在检测到新版本时提示用户刷新页面以确保平台正常使用。通过判断打包后的html文件中的js入口是否发生变化,进而实现前端的代码更新。通过篡改localstorage中的curHash,可引导更新,效果如下。为了使打包后的文件带有hash值,需要对vite打包。最后在main.js入口文件引入即可。30s更新一次算频繁吗?
2024-12-19 13:52:12
312
原创 JS循环打印问题
i < 10;原因1.块级作用域:let声明的变量具有块级作用域。在 for 循环中,每次迭代都会创建一个新的块级作用域。这意味着每次循环都会创建一个新的i变量。2.闭包: 每个 setTimeout 的回调函数都形成了一个闭包,它可以访问到创建它时的作用域中的变量。3.循环迭代中的行为: 使用let时,JavaScript 引擎会在每次循环迭代中创建一个新的i变量。每个 setTimeout 的回调函数都会捕获到当时迭代中的i值。
2024-07-11 10:57:30
1153
原创 py项目交付时防止源码泄露
其中wjxPostUse.py依赖wjxPostType.py中的函数,如下图现在需要将这个项目交付给甲方,但是不想泄露源码。运行前需要对wjxPostUse.py做自定义修改,所以不能直接生成exe。wjxPostUse.py无需加密,wjxPostType.py需要加密,但是不能影响wjxPostUse的正常导入。
2024-07-09 11:30:17
488
原创 vue3中使用xlsx库读取Excel数据
FileReader是一个web api(浏览器提供),用于异步读取文件内容,可以将文件内容读取为不同的格式,包括文本(readAsText)二进制字符串(readAsBinaryString)
2024-06-28 15:44:44
1489
原创 Centos上执行Selenium自动化测试任务
任务背景:想在服务器上执行该脚本,说干就干!该脚本基于python、chromedriver和selenium执行某web自动化任务,本地电脑安装好python及所需第三方库、下载好chrome以及对应版本的chromedriver后即可运行;类似的,服务器上也是一样。
2024-03-23 23:47:16
752
1
原创 JWT signature does not match locally computed signature:token解析失败原因记录
token解析失败
2023-09-26 19:44:55
1007
原创 python+selenium,刷问卷星,支持ip+比例,无需改代码,设置ip+比例即可运行
【代码】python+selenium,刷问卷星,支持ip+比例,无需改代码,设置ip+比例即可运行。
2023-05-10 10:48:02
3995
2
原创 前后端跨语言RSA加解密和签名验证实现(js+python)
前后端跨语言RSA加解密和签名验证实现(js+python),vue+tornado框架实现
2022-11-26 22:28:23
5121
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人