- 博客(46)
- 资源 (12)
- 问答 (1)
- 收藏
- 关注
原创 大模型微调、蒸馏记录
每一种数据集评测方法不一样,比如文本生成,指标用BLEU,看回答跟数据集的相似度和流畅度有多少,如果是题目,只需要回答A,B,C,D这种,那就要提示大模型,仅需要回答A,B,C,D,然后用回答跟数据集的文本做比较;lora微调的话,输出的文件是适配器文件,也就是仅包含微调参数的文件,测试时,可以分别加载原始模型和适配器文件,也可以合并原始模型和适配器文件之后,再加载合并后的模型来进行推理;用教师模型生成QA对,然后通过微调过程来对学生模型进行微调(让学生模型尽可能作出与教师模型一样的回答)
2025-02-13 18:12:26
1059
原创 ubuntu使用matplotlib绘图中文乱码
2,安装到ubuntu:拷贝到/usr/share/fonts/truetype/simhei文件夹,如果simhei文件夹不存在,则先新建该文件夹。4,验证安装:sudo fc-list | grep "SimHei"1,下载中文字体文件,比如SimHei.ttf。3,刷新字体缓存:fc-cache -fv。
2024-12-23 15:23:27
321
原创 poetry 配置多个cuda环境心得
有的基于gpu的库不通过python来使用cuda,这时候就要给操作系统安装对应的cuda版本才行。最近学习了用poetry配置python虚拟环境,当为不同的项目配置cuda时,会遇到不同的项目使用的cuda版本不一致的情况。像torch 这样的库,它们会对cuda-toolkit有依赖,通过python来使用cuda,它们会依赖像。这样的依赖就行了,poetry会自动下载依赖的cuda-toolkit的python库。这样的python库,这种情况下,在pyproject.toml里写上。
2024-11-06 12:35:41
751
原创 mac编译opencv 通用架构库的记录(CMake)
第一次Configure后,搜索EXTRA,设置OPENCV_EXTRA_MODULES_PATH为 /Users/xxx/opencv_contrib-3.4.16/modules。在cmake gui界面生成时,选择生成器为Unix Makefiles.3,如果只是编译c++的库的话,可以搜索下面的配置项,把它们取消勾选。上面这两个我设置成SSE_3,其他选项未尝试,比如不设置。跟example相关的配置项。跟python相关的配置项。跟java相关的配置项。跟test相关的配置项。
2024-08-14 13:58:17
620
原创 mac os开发记录2
一般来说,安装程序,要安装的数据都在安装程序的bundle里面,因此不会出现上面的情况,如果一定要有上面的情况,可以先用QFile::Copy拷贝到bundle里,然后再拷贝到系统文件夹。用QFile::Copy拷贝时,会询问是否允许访问桌面文件夹。这里要拷贝一个桌面的文件到/Application文件夹,而桌面文件是不能访问的,用osascript命令拷贝,它也不会询问是否允许访问桌面文件夹,所以上面的命令执行不成功。首先遇到的问题就是,目标文件夹是不可访问的,用QFile::Copy是不生效的。
2024-08-06 10:16:55
302
原创 nginx反向代理(多系统)
假设外网访问nginx的域名是fake-domain,对系统1的访问是:http://fake-domain/sys1/方法名,对系统2的访问是:http://fake-domain/sys2/方法名;当客户端请求 http://fake-domain/sys1/methodName1时,nginx先转发给自己,然后再转发给目标服务机,服务机编写服务时,只需要路由methodName1即可。1. 版本:nginx-1.24.0 ,windows 10 64bit,22H2 19045.4529。
2024-07-08 16:27:28
480
原创 vue3创建项目
执行npm run build,打包项目,在项目文件夹会生成dist文件夹,里面包含一个index.html以及相关的js和css。P.S :也可以用vite创建:npm init vite@latest,或者vue3官方推荐方式:npm init vue@latest。3. 创建vue项目:1)使用ui:cmd里执行命令:vue ui,这样会打开一个页面,在页面里可以管理项目,创建项目,配置项目等;2)使用vue 脚手架cli创建:vue create ,创建项目过程中需要手动配置项目。
2024-07-08 09:47:54
276
原创 匈牙利算法的实现
问题出在:在进行“指派”的时候,方案有很多种,一般来说,先指派0最少的行,输入矩阵的每一行可以理解成一个工人做不同任务的时间,每一列则是每一项任务,不同工人来做需要的时间。遵循选择多的“礼让”选择少的的原则,先指派0最少的行,再指派0多的行,我们将此指派策略为策略A;我想的办法是,当按照“优先指派0少的行”进行指派,得不到完美匹配的时候,穷举所有的指派(当然,可以提前结束穷举,当指派的行数跟策略A有增加的时候可提前结束穷举指派的情况),然后再往下走。
2024-04-02 16:27:50
385
原创 Adobe illustrator CEP插件调试
先将模式切换到Debugging,调试目标选择illustrator,打开要调试的jsx,然后就可以运行、调试了。点index.html即可进入调试。代码里敲入debugger,即可命中断点。然后运行illustrator,打开插件。打断点:要在鼠标光标所在的行打断点:F9。下载一个80以下的版本。
2024-02-27 13:48:00
1315
原创 CUDA流并行的思考
不少博客在介绍流任务并行时,都会说“为了高效利用多个流,将操作放入流的队列时应采用宽度优先方式而非深度优先”。其实不然。当H2D和D2H是同一个引擎执行时,确实流宽度优先能获得更高的效率。但是,当H2D和D2H是不同引擎执行时,流深度优先反而是效率更高的。假设H2D和D2H的执行时间都是Tc,kenel执行的时间是2*Tc,当H2D和D2H是不同引擎执行时,深度优先的总执行时间是7Tc,宽度优先的执行时间是8Tc。...
2022-03-09 11:24:14
772
原创 C++子线程中调用python代码
项目需要C++调用python的算法,由于python算法比较耗时,因此采用在C++里启动working thread来调用python脚本,python代码里含有cv2.imread()等opencv的调用,在子线程里调用会卡死。解决办法://1,主线程初始化python时,需要使能多线程:Py_Initialize();PyEval_InitThreads(); //2,主线程中,创建子线程之前:Py_BEGIN_ALLOW_THREADS// 创建子线程并执行子线程Py_END
2021-12-03 12:48:42
3751
原创 CUDA线程调度
1,一个GPU会有多个SM(Streaming MultiProcessor),SM之间是并行的;2,一个SM可以同时处理多个Block的多个wrap,也就是说,同一时刻,一个SM内,不止只有一个wrap在执行;3,SM处理完一个Block后,才会处理下一个Block,也就是说例如SM可以同时处理3个Block,那么这3个Block的其中一个处理完后,才会处理第四个Block。4,一个wrap的线程会分配到32个(假设一个wrap的线程数量是32)CUDA core,也叫stream proce
2021-09-11 22:32:31
1525
原创 使用QTextDocument绘制富文本
void QtTest::paintEvent(QPaintEvent * event){ QPainter painter(this); painter.translate(0, 10); QString strHTML = ui.textEdit->toHtml(); // 从QTextEdit控件中提取富文本,绘制在界面上。 QTextDocument doc; doc.setHtml(strHTML); doc.setTextWidth(27.
2021-03-26 10:13:48
1551
原创 关于Qt中的Q_D,Q_Q
扒了下QComboBox的源码,里面使用了大量的Q_D,Q_Q宏,记录一下:#define Q_D(Class) Class##Private * const d = d_func()#define Q_Q(Class) Class * const q = q_func()看看d_func和q_func:template <typename T> static inline T *qGetPtrHelper(T *ptr) { return ptr; }template &l
2021-03-16 14:47:00
4010
原创 自定义QComboBox显示的文本
最近在做个控件,大概是要实现QComboBox下拉视图是树状的,选中叶子节点后,需要将该叶子节点到跟节点经过的节点文本串起来,例如:选中了subsubItem1后,comboBox需要显示 item1-subItem1-subsubItem1。下拉视图通过QTreeWidget *tree = new QTreeWidget;ui.comboBox->setModel(tree->model());ui.comboBox->setView(tree);实现。问题是
2021-03-16 14:21:27
2131
1
原创 在.cpp中编译thrust出现的错误解决
新建CUDA工程,新建thrustTest.cpp,键入如下代码:#include <thrust/device_ptr.h>#include <thrust/device_vector.h>#include <thrust/copy.h>#include <thrust/fill.h>#include <thrust/replace.h>#include <thrust/functional.h>#include.
2020-12-04 16:51:01
1447
原创 CUDA kernel的执行顺序
一般来说,cuda的kernel是顺序执行的,不管是在哪个流上执行kernel,kernel执行引擎会顺序执行kernel。不过对于支持并发kernel的gpu来说,kernel是可以并发执行的。参见CUDA的sample :6_Advanced\concurrentKernels...
2020-04-11 22:05:56
1898
原创 Qt 5.9使用qmake -tp vc xxx.pro转成vs工程文件遇到的问题
有时候想在VS中调试QT的工程,要么使用VS的QT tool直接打开pro文件,要么转成VS的项目文件,例如我使用的是Visual studio 2017 64bit,打开Qt的命令行Qt 5.9 64-bit for Desktop(MSVC 2017):打开命令行后,进入到.pro文件所在目录:然后再命令行里敲入:qmake -tp vc xxx.pro回车后出现:msvc...
2019-11-13 15:52:27
2259
2
原创 vs2017 加入GL/gl.h的错误
在VS工程中加入#include <GL/gl.h>后编译,得到如下一堆错误:解决办法:在#include <GL/gl.h>前,#include <windows.h>并且,需要链接上opengl32.lib...
2019-11-13 14:21:42
2100
转载 SOA AOS 面向对象与面向数据
转载自https://blog.youkuaiyun.com/debugconsole/article/details/17788979SOA 数组的结构与AOS结构的数组,是面向数据和面向对象设计的区别之一。在需要高频率(如渲染循环中)访问数据的时候,一般情况下SOA的效率高于AOS,因为将需要频繁访问的数据连续存放会大大提高访问速度。虽然AOS的结构可能更适合面向对象设计,但是在高度依赖效率的地...
2019-08-22 15:52:54
1369
原创 winsparkle简单使用说明
需要一个web服务(支持HTTPS)来存放更新包以及对应的更新信息。(个人实验,配置Tomcat支持HTTPS,后来发现http也可以)winsparkle库的功能是,通过HTTPS检测更新(通过web端的.xml文件的内容,判断web上的版本与当前程序版本的新旧),下载更新包到临时文件夹,打开更新包。一 获取库从 https://github.com/vslavik/winspark...
2019-01-09 18:47:38
3859
原创 QT 使用CDB调试,调试窗口消失问题
本来已经配置好了CBD的路径的:1)安装windbg ,我安装的是64位版本,然后在qt creator的 “工具”、“选项”里可以自动检测到cdb:当然也可以手动配置cdb.exe的路径。2)设置调试器:选择调试器,然后就可以在qt工程里调试了。后来遇到个问题,就是开始调试后,什么堆栈窗口啊、局部表达式窗口啊都不见了,直接就只有断点所在的代码:后来才发现,这些...
2018-09-05 09:56:37
4955
原创 Qt关于mouseMoveEvent的捕捉以及setMouseTracking
一、对于单个Widget而言,要想在鼠标不按下的情况下捕捉mouseMoveEvent,则对该widget执行:setMouseTracking(true);二、对于父子窗口而言,父窗口若想捕捉到鼠标在子窗口上方的mouseMoveEvent,则父子窗口都需要执行:setMouseTracking(true);并且子窗口并未对该事件进行处理,即没有accept或ignore该事...
2018-08-24 17:19:55
8072
3
原创 QWidgetAction实现鼠标滑过菜单项图标高亮显示
需求是鼠标滑过菜单项时,菜单项的文字、icon以及子菜单的小箭头都要高亮显示,qss中只能设置item背景色、文字颜色以及子菜单小箭头的样式,icon的图片不能切换,另外曾经想过用indicator(对action setCheckable(true)后,此子控件在qss中会生效)代替icon,因为indicator可以在qss中定制,但是这样一来所有的action的图标都是一致的了,这明显不符合...
2018-08-24 13:16:13
8795
3
原创 AdaBoost的一点记录
AdaBoost通过每次训练一个弱分类器并计算其错误率来更新样本的权值,使得分类错误的样本的权值更大,从而在下一次训练时得到更多关注,对分类器的分类结果影响更大。AdaBoost的算法流程:在计算第 t 次迭代的错误率 时,要把样本的权值考虑进去,更具体的,其中 是第 i 个样本在第 t 次迭代时的权值 ,即,当前弱分类器的错误率是预测错误的样本的权值之和。根据公式,被分类...
2018-08-15 15:42:32
461
原创 Qt WA_TranslucentBackground 导致视频渲染不了的问题
使用QT5.7 + VS2015做的试验,视频渲染使用D3D9。发现的规律是:顶层窗口(指父窗口为NULL的窗口)如果设置了 this->setWindowFlags( Qt::FramelessWindowHint); this->setAttribute(Qt::WA_TranslucentBackground,true);那么不管是用该顶层窗口本身的窗口句柄,还是...
2018-08-07 19:20:21
5760
6
转载 QtQuick---场景渲染(Scene Graph)
转载自:QtQuick基础教程(四)---场景渲染(Scene Graph)在Qt5之前,GUI开发使用的是现在的QtWidgets,已经被大家所熟悉,ui描述界面布局组合C++细节实现,实现效果很好,界面开发的速度还算中肯。在不具备开发自定义UI又需跨平台(C++源码)的组织和个人面前,几乎是不二选择。但在移动开发面前不灵了,因为QtWidgets本质是使用平台绘图工具来绘绘制界面,而每个界...
2018-07-30 09:13:27
6221
2
转载 公钥、密钥和数字证书
转自 我理解的数字证书-1-公钥,私钥和数字证书英文原文地址:http://www.youdzone.com/signature.html若下文有任何错误,请告知我,谢谢。79996286@qq.com主角介绍:Bob and Alice提起RSA加密算法,公钥和私钥,多数文章都要使用Bob和Alice这两位人物。他们的创造者名叫Rivest,是RSA之父。他为了在避免在描述中...
2018-07-25 15:58:26
19649
6
原创 VC++编程中的字符集问题
使用visual studio 进行windows编程时,不可避免会遇到字符集(character set)的问题,VS提供两种字符集,一种是多字节字符集,另一种是unicode字符集。1,多字节字符集,英文字符占1个字节,一个中文字占2个字节,使用_tcslen计算一个中文的字符长度为2;2,Unicode字符集,英文字符占2个字节,一个中文占2个字节,使用_tcslen计算一个中文的字符长度为...
2018-06-25 14:38:01
1339
原创 OCX控件在web页面不能加载的问题
1,问题描述:写了个OCX,在本地静态html文件里加载,双击用IE打开,能够正常加载OCX控件,调用其方法也正常,把测试的html文件放入apache目录,通过IE 敲入localhost访问也正常,但是部署到服务器上,通过客户端PC访问服务器IP的方式,却不能加载OCX,其方法也调用不了。2,问题解决,上网查了下,以及根据以往的对接经验,做如下设置:1)在IE里把web服务的IP加入受...
2018-06-19 14:09:16
27198
4
原创 Visual Studio 2008 设置UAC控制为requireAdministrator无效的问题
最近突然发现嵌入了cef 3.3325浏览器插件的MFC程序默认不是管理员权限打开的,检查了下工程配置:UAC执行级别已经配置成requireAdministrator,生成的exe图标上仍旧没有出现小盾牌。个人感觉是哪里的配置与此处的冲突了,想起了嵌入cef时在“生成后事件”里添加了命令行来嵌入清单文件:于是打开xxx.exe.manifest,果然这里设置了权限仍为asInvoker:把“as...
2018-06-01 09:16:52
4079
原创 使用cef3.3282.1734版本嵌入到vc工程debug版无法显示页面问题解决
由于项目需要,近日在http://opensource.spotify.com/cefbuilds/index.html下载了cef3.3282.1734作为客户端的浏览器库,使用该库自带的demo(cefclient、cefsimple)测试均没什么问题,debug\release版本也可以正常加载显示页面,但是我把它集成到自己的mfc工程后却发现debug版的库无法加载页面,在任务管理器里查看...
2018-06-01 09:06:51
1349
转载 RTP报文头中的SSRC和CSRC
以下内容转载自http://www.360doc.com/content/11/1009/15/496343_154624612.shtml和https://www.cnblogs.com/yoyotl/p/5650101.html同步信源(SSRC)标识符:占32位,用于标识同步信源。该标识符是随机选择的,参加同一视频会议的两个同步信源不能有相同的SSRC。·特约信源(CSRC)标识符:每个CS...
2018-04-03 16:01:43
30313
3
原创 用Process Explorer分析进程各个线程CPU占用率
使用Process Explorer可以很方便查看某个进程各个线程的CPU占用率,可以为排查问题提供帮助。我使用的Process Explorer版本是v16.21 64bit。使用VS 2008创建一个MFC对话框程序,在代码中创建两个线程,如下: m_thread = (HANDLE)_beginthreadex(NULL,1024,m_thread_func,(void*)this,NULL...
2018-03-17 10:14:42
8308
1
Qt鼠标滑过菜单图标高亮
2018-08-24
Cpptooltip气泡提示VC++类,支持菜单、工具条、淡入淡出、超链接、动画、表格等
2016-08-07
求助大神!win7 + cuda8.0 +vs2010 编译错误
2017-03-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人