茄子的个人空间

茄子的个人空间

因为热爱,所以记录!

loading
vscode开发技巧记录
日常编写代码中,vscode是用的最多的编辑器,经常会遇见一些问题,定期总结一下,方便以后查阅。 在不能连接外网的远程服务器上用copilot 打开settings.json文件在里面添加如下内容: 1234"remote.extensionKind": { "GitHub.copilot": ["ui"], "GitHub.copilot-chat": ["ui"], }, 启用latex的pdf预览 按下 Ctrl+Alt+V 快捷键,即可。 切换居中模式,令显示内容更多1Toggle Centered Layout 使用插件快速生成cyphe...
博客维护日志
2025年03月09日 新增相册功能,使用 地址 2025年03月08日 更新 hexo 至 7.3.0。 新增搜索功能,使用 algolia, 上次失败原因为没有同时安装 hexo-algolia 和 hexo-algoliasearch插件 , 前者是主题插件,后者实现全文搜索。 参考教程1 2025年03月07日 尝试 增加搜索功能 失败, 使用 algolia , 插件为 Hexo-Algoliasearch , 参考教程1 教程2 2025年02月10日 新增 “NEWS” 模块, 记录成长历程 2025年02月04日 支持评论功能, 添加utterance评论...
2024年底总结
最近一年以来,很少在技术博客上面更新文章了,一方面是很长一段时间以来,因为感情的事情,一直处在低谷期,另一方面是因为博客文章的更新是一个比较耗费时间和精力的事情,并且没有比较好的读者反馈,而我开通了微信公众号,并且在上面更新一些关于户外爬山的文章,所以在技术博客上面的更新就比较少了。 博客文章的域名到期了,我也没有续费维护,一段时间里面都处于无法访问的状态。直到最近,我申请云服务器的时候,顺带购买了域名,才把博客恢复了。 当我回看以前写在技术博客上的文章的时候,发现我现在掌握的比较扎实的技术,都是在博客上面整理记录的内容,这让我意识到了整理记录博客的重要性,所以在接下来的时间里面,我会继...
搭建Webdav服务器实现Obsidian和Zotero多端同步
前 言很长一段时间以来,都比较苦恼自己的obsidian和zotero在多端同步的时候经常碰到问题,有时候想在手机上面查看某篇paper的时候,正好发现pdf附件没被同步,导致不能查看。加之,最近给女朋友推荐了obsidian,她觉得非常好用,但由于设备原因不能实现多端同步。她采用幕布记录笔记,再导入obsidian的方法,以实现多端同步和笔记本地保存,我认为该种方式较为繁琐,不符合技术人的气质。 思考再三,我决定好好解决多端配置的问题,网络上搜索了一圈资料下来,发现很多手机端软件均支持以Webdav协议进行文件共享,遂决定搭建Webdav协议服务器实现多端共享。 虽有坚果云等支持Web...
sentence-transformers sampler bug 之 set 不一定是无序的
前言问 题: 最近准备训练一个基于对比学习的模型, 用 huggface 的 trainer 训练器,在官方给的源代码中,有一个现成的 sampler 用于数据采样,我需要改写这个 sampler 以保证能够用于自己的数据上。 实验改完之后,发现采样出来的 indices 竟然是有序的,实际在一个批次中需要打乱样本的顺序,仔细阅读了官方给的源码,发现问题出在如下图所示的 第187行。这里先用 torch.randperm生成了一个乱序的下标,然后转换为set。按理说set是无序的,转换之后也是无序的,看起来很正确。 当我做了小测试后,发现并不是: 从上面的结果,可以看到:torch....
ubuntu上安装NIVIDIA驱动和CUDA_Tookit
每一次安装NIVIDIA驱动或CUDA Tookit时,都要经过一番折腾,才能够安装成功,这里把过程记录一下,以便以后可以参考。 本次安装遇到的最大问题是:pytorch所能支持的最高cuda版本为11.8,而安装后的cuda为最新12.2版本,pytorch没法识别cuda。导致这一问题的主要原因在于两点: 安装的NIVIDIA驱动版本过高,导致CUDA Tookit版本也过高,无法降级 使用网络方式安装CUDA Tookit,安装之后得到的是最新版的CUDA Tookit,不是我想要的11.8版本 接下来是安装过程: 删除已安装的NIVIDIA驱动或CUDA Tookit 12...
在mac上使用pybind11实现c++与python互通的demo
在mac上使用pybind11实现c++与python互通的demo0. 问题描述下面的python代码定义了一个类,类中有一个名为analyze_data的函数,其采用递归的方法解析json格式的data数据,由于处理速度达不到要求,我们希望用c++改写该类,并封装成可供python代码调用的库,以达到加速的效果。 1234567891011121314151617181920 # 待解析的数据deom data_demo = {"resbody": {"data": {"name": "John", "age": 30, "address": {"city": "...
Mac系统制作win10启动U盘
Mac系统下制作win10安装盘准备 一台mac电脑 一个大于8G的U盘 win10镜像文件 Boot Camp ISO Converter软件(这个软件可以解决FAT32格式的u盘单个文件大小不能超过4GB的问题),下载链接 制作步骤 打开Boot Camp ISO Converter软件对下载好的iso镜像文件进行处理,目的是将镜像文件insta.win分配为大小小于4GB的文件 在插入U盘的状态下,打开终端,输入: 1diskutil list 找到U盘对应的盘符,本例中U盘对应的盘符为:disk2 将U盘(disk2)格式化为FAT32格式 1disk...
电磁比赛总结
电磁比赛总结 代码总结 要会静态分析资源占有率,特别是当服务器内存资源不足的时候,提前做好静态分析,设置合理的运行参数,才能提升效率。比如本次实验过程中,做数据增强预处理数据时需要占用大量内存资源,参数设置过大,会导致运行一半后因为内存不足,进程被killed掉,参数设置过小效率又变得很低。 当数据很多,需要占用大量内存时,不要将数据转换为pandas的DataFrame对象,因为它会吃掉更多的内存,此外使用apply方法对数据进行逐行处理的时候,即使使用了加速方法,也没有将数据存储为list然后使用多进程方法处理高效。在本次实验中,后者的速度至少是前者的5倍。 尽量使用class对代...
远程访问服务器Jupyter-Notebook
方法: ssh远程使用jupyter notebook在远程服务器上,启动jupyter notebooks服务: 1jupyter notebook --no-browser --port=8889 在本地终端中启动SSH: 1ssh -N -f -L localhost:8888:localhost:8889 username@serverIP 其中: -N 告诉SSH没有命令要被远程执行; -f 告诉SSH在后台执行; -L 是指定port forwarding的配置,远端端口是8889,本地的端口号的8888。 注意:username@serverIP替换成服务器的对应账号。...
C++多线程编程
常用线程函数 join() : 阻塞主线程,让主线程等待子线程执行完,当子线程执行完毕,这个join()就执行完毕,主线程继续执行 detach() : 从主线程中将子线程分离,主线程不必等待子线程执行完,一旦detach()之后子线程将失去与主线程的关联,此时这个子线程就会驻留在后台运行,被c++运行时接管,当这个子线程执行完成后,由运行时库负责清理线程相关的资源。 线程创建方法 通过函数创建线程 1234567891011121314#include <iostream>#include <thread>using namespace std...
将微信聊天中的语音转换为mp3
找到语音文件将其导出 找到MAC微信图片,鼠标放在图片上面按下右键调出如下图所示的提示框,然后点击“在Finder中显示”,打开音频、图片等文件在本地保存的位置。 ​ 这个地方需要注意的是,微信保存到本地的记录是按照聊天会话存储的,不同会话的内容保存的位置不一样。我们应该先定位到要获取音频的会话,在该会话中调出“在Finder”中显示才行。 如下图所示Audio目录就是存储会话语音 将silk格式文件转换为mp3格式文件 安装silk-v3 silk-v3依赖gcc和FFmpeg来运行,如果没有这两个依赖项,通过如下命令安装依赖: 12bre...
avatar
茄子
我是茄子,一个热爱生活的小伙子!