ChatGLM微调记录
介绍以ChatGLM-6B ptuning提供的微调代码来进行测试,整体代码在此。 训练和推理训练就直接使用官方代码啦,推理也是滴,整体流程跑通都很顺畅,整体是采用quantization_bit=4,所以单卡(5~6G显存)就能跑的起来。 记录几个有意思的点。 1. p-tuning这个是众多Parameter Efficient fine-tune实现方式之一,其发展历程简单理解有两个阶段,一是人工构造template,二是机器自己学习一个template。 比如一开始做分类,例如“这个沙发怎么样”,那就在这句话前面(当然也可以放到后面)加上一个template,比如情感分析,这个沙发怎么样,你觉得这句话是正向还是负向:这个沙发怎么样,那训练时只对这个template进行微调,因为微调seq_len很..
更多SES使用Ozone调试FreeRTOS
Foreword Debug遇到一个诡异情况,之前没注意过 单步失效 简单说系统里有很多地方在read,但是debug的那个read,在进入read内部以后,会出现整个堆栈指针都跳变成另外一个线程中read流程 ssize_t read(struct file *filep, void *buf, size_t nbytes) { struct inode *inode; int ret = -EBADF; configASSERT(filep); inode = filep->f_inode; /* Was this file opened for read access? */ if ((filep->f_oflags & O_RDOK) == ..
更多GnePro:文章类通用爬虫接口
GnePro是开源项目GNE的付费版,能够实现如下功能:输入任意文章页面的URL,返回标题/作者/正文/发布时间/图片/面包屑等一系列信息支持异步加载文章页提取支持上传自定义的HTML代码提取正文支持自动检测网页编码支持自动提取网页全部URL在8个国家13万个新闻类网站进行测试,准确率高达90%提取文章正文12345678910111213141516171819import requestsimport jsonurl = "https://crawler.kingname.info/gne/crawl"body = { "url": "https://www.kingname.info/2023/10/17/rubbish/", "js": False, "charset": "auto"}he..
更多一日一技:分布式系统的低成本权限校验机制
经常关注未闻Code的同学都知道,我做了一个叫做GNE的开源项目,它能够自动提取新闻类网页的正文。效果远远好于市面上其他的开源新闻提取工具。大家可能不知道,GNE还有一个高级版,叫做GnePro。它可以让你输入URL就自动提取新闻的正文,提取的字段比GNE多得多。并且已经在8个国家13万个网站上做过测试,识别准确率100%。GnePro是使用K8S搭建的爬虫集群。背后有几十台服务器,通过一个网关做负载均衡。在设计GnePro权限机制的时候,我希望它能够尽量简单,尽量不依赖第三方的组件。常规的权限校验机制一般是这样的,用户登录以后,在Cookies里面会有一个SessionId.当用户要查询数据时,往后端发起请求。后端从请求中拿到这个SessionId,到Redis或者其他数据库中,查询到这个用户的Sess..
更多lora原理与实现
介绍Lora,是微软出的一种在低资源场景下进行微调大模型的实现方式,在transformers里有peft这个包进行调用,它通过固定预训练模型权重并只训练新增lora层来实现微调,目前其在比如Baichuan2、ChatGLM上都有相关资料,更多介绍可自行搜索了解。 简单理解其简单理解实现方式为,比如qkv的linear为768*768(更大模型可能会更大),那lora通过新增两个linear(lora_A和lora_B),引入一个超参r来降低训练参数量,其伪代码如下: 1234567891011in_feature, out_feature = 768, 768# oldself.q = nn.Linear(in_feature, out_feature)# Loraself.lora_A = nn.L..
更多query git notes with Github GraphQL
git notes is an interesting feature, you can use it like git notes add -m "hello test git notes" git push origin 'refs/notes/*' Github supported them back in 2010 then gave up LMAO. If you need to retrive them with Github API, try GraphQL like this { repository(owner: "est", name: "snippets") { refs(refPrefix:"refs/notes/",first:1) { ..
更多HomeLab | 4 GPU 硬解新境界:LXC 环境下玩转 JellyFin 核显硬解转码
请注意!!! 本系列的文章是断断续续写的,本文大部分内容最早写于2023年1月,可能有些信息已经过时! 别问,问就是写了一半然后放草稿箱里长草了。 0x00 引言 HomeLab 系列回顾: HomeLab | 1 Proxmox Virtual Environment(PVE) 安装及配置 HomeLab | 2 OpenMediaVault 安装 & 硬盘直通 & 相关配置 HomeLab | 3 下载观影一条龙:NASTool/JellyFin/qBittorrent 半自动化家庭影院搭建指北 上一篇博客中,我们介绍了 JellyFin,这是一个免费开源的媒体中心软件,可以用来管理和播放您的个人媒体库,实现方便快捷灵活的观影体验。 其中,JellyFin 串流播放如果编码不适..
更多document-QA-layoutLMv2
介绍书接上文,layoutLM微调FUNSD数据集介绍了layoutlm和layoutxlm如何做named entity recognition,以及多模态-CLIP和多模态-字幕生成介绍多模态是如何融合的,本文继续基于layoutLM系列,基于huggingface document_question_answering来进行debug是如何实现的。 更新:针对layoutxlm在docvqa_zh上的训练代码已经放到document-qa啦。 原始数据在这之前,都是在介绍如何处理数据,也即如下代码: 123456789101112131415161718#from datasets import load_datasetdataset = load_dataset("nielsr/docvqa_12..
更多无人机基础知识
Foreword 无人机的一些基础知识,特指四轴相关 结构 翼型 按照结构或者工作原理来区分 固定翼 多旋翼 四轴 六轴 八轴 直升机 伞翼、扑翼、飞艇 非常小众的机型 复合翼 四轴垂起固定翼 飞米的Manta,三轴和固定翼的混合机型,三轴垂起,机翼电机可倾转 构型 X型 控制复杂,但速度更快 +型 控制简单,但是速度慢,基本被淘汰了 H型 类似X,结构上中部吃力比较多 轴距 无人机轴距是指在无人机飞行中,机身前后两个旋翼电机轴之间的距离 不包含桨叶的长度 450 350/330 250 动力系统 螺旋桨 正桨,反桨,主要是为了抵消扭矩,克服自旋。正反是对旋转方向的描述,吹风都..
更多VPS推荐:Hosteon
继续上次 Racknerd 之后发现这家还行。写了个爬虫扒了一下各色配置,独立服除外,有需要的自取 pid spec Disk Bandwidth Annual $ 1 1C512M 5GB 100Mbps $27.00 7 6C8G 100GB 100Mbps $270.00 77 1C1G 10GB 1Tbps $21.00 78 2C1.5G 20GB 2Tbps $36.00 79 2C2G 25GB 3Tbps $45.00 80 2C2.5G 30GB 4Tbps $54.00 81 3C3G 40GB 5Tbps $63.00 83 3C5G 50GB 8Tbps $90.00 84 6C10G 120GB 12Tbps $180.00 85..
更多