- 博客(34)
- 收藏
- 关注
原创 NF4量化算法的PyTorch实现
为了方便理解NF4算法的实现,这里用PyTorch实现了一版可以和CUDA NF4精度对齐的量化和反量化函数,并使用llama-3.1-8b模型进行测试,可以做到和CUDA实现的算子精度基本对齐(仅反量化存在少许误差),并对模型输出进行测试,64个tokens和CUDA实现完全一致。不过PyTorch的实现存在一定的性能损失,8B模型的量化过程从CUDA实现的3s增加到PyTorch实现的10s;类型的NF4表的中间值进行比较,从而得到表中距离。因此在实现时也需要注意。
2024-11-06 10:38:32 504
原创 【向量数据库】向量数据库的构建和检索
使用sentence-transformers库,将文本编码为向量,构建向量数据库并使用faiss进行向量检索
2024-08-11 18:22:14 487
原创 【向量数据库】Ubuntu编译安装FAISS
参考官方的安装指导:https://github.com/facebookresearch/faiss/blob/main/INSTALL.md,不需要安装的可以跳过。
2024-08-09 00:25:58 471
原创 在Ubuntu上配置CUDA基础环境
可以选择安装 Anaconda 或 Miniconda,安装方式比较相似,我这里安装的是 Anaconda。,为了方便这台服务器的所有用户都可以使用到这个conda,可以把它安装到。这样就可以使用 conda 命令了,在重新打开 shell 时会自动激活。设置是否需要每次进入shell时自动激活。或者选择一个驱动版本安装,例如。应该把它安装到什么位置呢?如果安装完成后无法直接使用。重启服务器,就可以使用。
2024-04-24 22:13:08 452
原创 【测试】8bit和4bit量化对模型在MMLU数据集上准确率的影响
下面是改变其中某个参数后在 MMLU 数据集上的准确率,可以看出即使是 4bit 对准确率影响都没有很大,首 Token 性能还可以接近原精度,还节省了大量的空间。ms,最后的测试结果还算比较接近官方的结果,以此作为 baseline 和量化后的模型权重对比推理下游任务准确率的损失情况。),4bit 量化包含两种 4bit 的数据类型 FP4 和 NF4,以及。Mistral-7B 是一个很强的 7B 开源模型,在 Mistral。)并直接在原精度(BF16)上进行推理,尝试复现出官方的准确率。
2024-03-24 22:32:06 2428
原创 WSL2 内存只有 Windows 的一半?可以设置 .wslconfig 解决
参考链接:https://learn.microsoft.com/en-us/windows/wsl/wsl-config#configuration-setting-for-wslconfig。偶然 htop 发现 WSL 里面的内存只有 16GB,而我的 Windows 是 32GB 的,才了解到默认的设置就是 50% 的 RAM 占用,可以通过设置。,如果发现没有这个文件可以在这个Windows 用户目录下新建一个,然后在。然后重启 WSL 即可,或者重启 Windows 再进入 WSL。
2023-09-16 17:44:00 9970 3
原创 【PyTorch】使用 Mac GPUs (Apple silicon GPUs) 训练模型
使用 Mac GPUs (Apple silicon GPUs) 训练模型
2023-04-06 16:16:58 4779
原创 51单片机入门 - 简短的位运算实现扫描矩阵键盘
使用位运算缩短扫描矩阵键盘部分的代码量(相较于使用switch-case),并将输入驱动到数码管显示。
2023-02-25 22:20:40 1299
原创 51单片机入门 - 测试:SDCC / Keil C51 会让没有调用的函数参与编译吗?
【编译测试】在进行51单片机代码开发过程中,导入了较大的库,但是有很多没有用到的函数,会影响最后生成的HEX文件大小吗?在main.c中定义但没有调用的函数,SDCC和Keil分别会怎么处理呢?
2023-02-24 21:14:17 1521
原创 在 Ubuntu18.04 上编译安装 GMP
最近为了安装 IBM 的开源项目 HElib C++,需要在服务器上先安装GMP和NTL,NTL需要依赖GMP,所以先来安装一下GMP,记录一下在服务器上安装成功的过程
2023-02-22 21:20:56 2887
原创 51单片机开发环境搭建 - VS Code 从编写到烧录
使用 VS Code、Embedded IDE、stcgal 搭建51单片机开发环境
2023-02-20 21:30:08 5638 4
原创 NJUPT《信安数基》复习题
NJUPT《信安数基》复习题第 1 章1. 设 a=1859,b=1573,a=1859, \quad b=1573,a=1859,b=1573, 计算 s,t,s, t,s,t, 使得 as+bt=(a,b)a s+b t=(a, b)as+bt=(a,b) 。运用广义欧几里得除法:1859=1⋅1573+2861573=5⋅286+143286=2⋅143+0\begin{array}{rr}1859&=&1 \cdot 1573&+&286 \\1573&
2021-01-10 00:50:32 4862 5
原创 C++ 面向对象编程_实验报告2
继承与派生实验因为要按照教材多次更改代码,就把每次的版本都贴上来了。#include <iostream>using namespace std;class Vehicle //定义基类{protected: int MaxSpeed; //最大速度 int Weight; //重量public: Vehicle(int m, int w) /...
2020-05-01 15:56:04 1131 1
原创 NPUCTF 2020 Crypto writeup
认清形势,建立信心题目中给了 2e mod n2^e \ mod \ n2e mod n, 4e mod p4^e \ mod \ p4e mod p 和 8e mod p8^e \ mod \ p8e mod p。令它们分别为 ...
2020-04-24 15:18:42 3692 2
原创 HGAME 2020 week1
week1WebCosmos 的博客1.看提示去 GitHub 上找这个网站的源代码,搜索 Cosmos Hgame 就可以找到,点开 3 commits,点开 new file 就可以看到:base64 解码: aGdhbWV7ZzF0X2xlQGtfMXNfZGFuZ2VyMHVzXyEhISF92.base64 解码得到 flag。hgame{g1t_le@k_1s_dange...
2020-04-23 01:14:58 2426
原创 虎符 CTF 2020 Crypto GM writeup
GM writeup审代码发现生成的 N 和 phi 很特殊,有了 N 和 phi 显然可以算出来 p , q。(甚至可以算出来x,不过并没有什么用:)看主要加密部分是把明文转化成二进制流,对 bi 逐个加密:r = random.randint(1, N)if gcd(r, N) == 1: br = bin(r)[2:] c = (pow(x, int(br + bi,...
2020-04-19 20:13:12 1767
原创 BUUCTF Crypto RSA & what writeup
RSA & whatRSA共模攻击 + Base64隐写在 buu 刷到的一题,看到 N 用了两次,但 RSA 共模攻击解完发现还没结束…from Crypto.Util.number import*import base64def egcd(a, b): if a == 0: return (b, 0, 1) else: g, ...
2020-04-18 02:32:35 3557
原创 RoarCTF 2019 babyRSA writeup
做这题看到阶乘一下想到了 gxzy2020 的一题,也是考到了威尔逊定理(Wilson’s theorem):当且仅当p为素数时:( p -1 )! ≡ -1 ( mod p )。阶乘只乘到 B ,所以把(B+1)乘到(A-1)这一段也补上就得到了威尔逊公式,反之我们可以由用 -1 乘这一段的模反数,就得到了题目中的 (B!)%A 。exp:from Crypto.Util.number i...
2020-04-17 23:57:02 1145
原创 中国剩余定理(m不互素情况Python实现)
m 两两互素时在模 M 意义下有唯一解 x ,但是在 m1,m2,... 之间不满足两两互素时,在模 M 的意义下可能会有多个解。
2020-03-17 20:09:39 1233 1
原创 C++ 面向对象编程作业(一)
C++ 面向对象编程作业(一)C++作业好不容易整完了,发出来方便一下大家,欢迎参考借鉴~顺便给我的小博客打个广告…第二章2-5-3动态空间管理#include<iostream>#include<cstdio>#include<cstring>using namespace std;int main(){ int *a=new int[20...
2020-03-17 19:19:23 1748 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人