自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(110)
  • 收藏
  • 关注

原创 LLM中tokenizer,input_ids, attention_mask详解

transformers 库快速入门 - 知乎。

2025-02-07 22:00:37 235

原创 deepspeed多机多卡训练

注意,多机多卡训练的容器启动命令里必须有--network=host参数,如下。2.1每个机器上环境,代码,需一样,每个机器都得用以下脚本开启训练。2.2只有在主机的服务器终端显示训练进度条,loss,其余不显示。

2024-12-25 00:22:59 443

原创 VS code禁止自动更新版本

安装vscode,设置禁止自动更新版本,但是你在打开vscode设置的时候,已经给你自动更新了。1.查看vscode版本:左上角 Help -> About。解决方法:安装的时候断网。2.禁止自动更新设置。

2024-12-16 15:47:16 1384

原创 分布式训练打印模型信息,修改模型权重,打印config, Allreduce

【代码】分布式训练,打印模型信息。

2024-12-14 11:29:50 163

原创 sd1.5/sdxl的推理,训练

如下图第二步所示,右边为schedule(调度器),调度器根据unet的预测噪声noise,当前时刻t,latent,计算出前一时刻的latent。根据unet的降噪步数,即num_inference_steps生成一系列timesteps,每一个降噪步数,对应一个timestep。在CrossAttention中,Latent Feature充当Q,Prompt充当K,V,计算交叉注意力。如下图第二步所示,左边为unet中输入lantent,prompt,t,输出为当前时刻的预测噪声noise。

2024-11-12 17:46:51 577

原创 logger输出

在分布式训练的环境中,每个进程的标准输出(stdout)并不一定与启动命令的终端相连。这意味着 `print` 函数的输出很可能会丢失,你不会在终端中看到它。,因此我们选择了logger。

2024-10-14 17:28:48 300

原创 VSCode连接docker

为了防止每次打开容器都要输入此指令,我们直接在 ~/.bashrc文件最后一行添加sshd启动命令即可。查看— 命令面板—python解释器(Python: Select Interpreter)打开终端,会自动执行 ~/.bashrc,我们也可以在~/.bashrc文件中配置代理。有时候选择环境中的解释器的时候老是报错,检查一下,创建容器的时候,NPU是否挂载成功。此报错在vscode界面右下角出现,点进去,看报错日志,才会看到。我们对报错进行修改,做了一些操作之后,要重启ssh服务。

2024-09-08 15:17:59 1054

原创 vscode从本地安装插件

2. 点击左侧菜单中的“扩展”(或按Ctrl+Shift+X)。3. 点击“更多操作”(三个点)> “从VSIX安装”。4. 选择下载的.vsix文件。5. 点击“安装”即可安装插件。1. 打开VSCode。

2024-09-07 20:43:13 3978

原创 进制的转换

二进制的前缀0b,如0b101101,一般前缀可有可无。

2024-09-02 20:21:42 305

原创 pycharm安装本地插件

3. 点击小齿轮选择nstall plugin from disk(从硬盘下载),选择刚刚下载的zip文件就可以了。1.下载插件的zip文件到本地。4.重启pycharm。

2024-08-31 17:01:46 1649

原创 docker容器常用指令,dockerfile

docker:容器,主要是解决环境迁移的问题,将环境放入docker中,打包成镜像。

2024-08-11 20:10:57 1162

原创 模型推理时间计算,模型精度,推理batch size设置,取模型的权重,调用模型中的某个函数,版本号的对比

模型推理之前要先进行warm up预热。参考:Chinese-CLIP中的代码。

2024-08-08 20:24:29 766

原创 SDXL总结

diffusers库中的SDXL代码pipelines:是一个,包括Base模型和Refiner模型。其中,具备文生图(txt2img)、图生图(img2img)、图像inpainting等能力。在Base模型之后,级联了Refiner模型,。

2024-08-04 20:00:15 1623

原创 Stable-Diffusion1.5

由于CLIP训练时所采用的最大Token数是77,所以在SD模型进行前向推理时,当输入Prompt的Token数量超过77时,将通过Clip操作拉回77x768,而如果Token数不足77则会使用padding操作得到77x768。

2024-08-04 10:00:00 2237 3

原创 常见的指令

1.pip install git+网址。

2024-07-31 20:34:19 228

原创 Cmake的使用

一个c++工程可能会涉及到很多的基础库,但是c++不像python一样可以直接import,因此引入了Cmake,将多个库链接起来。参考:CMake系列讲解 - 总目录(由浅入深,实例讲解)_cmake 项目目录-优快云博客 【C++】为什么需要CMake?-优快云博客使用等编译工具,从源码生成最终的可执行文件一般有这几步:预处理(Preprocess)、编译(Compile)、汇编(assemble)、链接(link)预处理: 处理一些#号定义的命令或语句(如#define、#inclu

2024-05-01 18:17:39 666

原创 Visual Studio Code使用

首先生成执行文件(见第2节C++的运行),然后将launch.json调试文件中的program路径直接改为执行文件的路径,如下,选择对应的调试名称,点击开始调试。先生成launch.json文件,点击右下角蓝色的添加配置,选择第二行C/C++: (gdb) 启动,生成c++的launch.json调试文件,如下图。然后点击绿色调试按钮,开始调试,注意要点到要调试的文件界面,如调试main.cpp文件,在主界面要点到main.cpp文件,如下图所示。生成可执行文件后,将可执行文件的路径输入终端,即可执行。

2024-04-22 16:26:30 1859

原创 python跨文件夹调用

如图所示,我们要在bin文件夹下的run_patchcore.py文件中调用src/patchcore文件夹下的backbone.py, common.py等文件。方法1:将patchcore的上一层目录src添加到环境变量中。方法2:将patchcore文件夹复制到bin中。

2024-03-06 21:12:45 783 1

原创 将jpg转png,并改到指定大小像素

【代码】将jpg转png,并改到指定大小像素。

2024-03-01 09:43:20 241

原创 shell中正则表达式

在Linux中,grep, sed,awk等文本处理工具都支持通过正则表达式进行模式匹配1.常用特殊字符。

2024-02-04 20:31:55 513

原创 shell脚本中的控制语句 if,for,while,以及输入read

,每一个模式匹配必须以右括号“)”结束。,中括号和条件判断式之间必须有空格。”表示命令序列结束,相当于。default,表示其他情况。)”表示默认模式,相当于。

2024-02-04 10:15:00 459

原创 shell脚本中的变量$,运算符,自定义函数

(1)定义变量:变量名=变量值,注意,=号前后不能有空格,如有空格,会当成指令(2)撤销变量:unset 变量名(3)声明局部变量:readonly 变量名=变量值,注意:局部变量不能 unset(4) export 变量名:可把变量提升为全局环境变量变量定义规则(1)变量名称可以由字母、数字和下划线组成,但是不能以数字开头,环境变量名建议大写。(2)等号两侧不能有空格(3)在 bash 中,变量默认类型都是字符串类型,无法直接进行数值运算。

2024-02-03 22:26:14 665

原创 Vim编辑器

文件编辑分为一般模式 与编辑模式。打开文件为一般模式,按‘i’进入编辑模式,窗口下面出现“插入”;按esc切换一般模式。常见的有 :wq 保存并退出 :w 保存 :q 退出。主要操作有保存,退出,删除,复制,粘贴等。

2024-02-02 22:54:49 287

原创 Linux文件结构

所有Linux系统的文件结构都是一样的,区别于win系统的c盘,d盘,他只有一个根目录“/”,下面的文件夹结构基本是一样的,如下,文件夹有“箭头”代表的是软链接,即该文件夹的位置不在此,右键可查看其位置。opt:option,系统预留的空间,我们在系统中装的客户端都在此,如我们下载的谷歌浏览器。home:用户的主目录,如我们自己rui,自己存放数据的文件夹,我们新建的文件夹都在。lib:library,存放系统库文件,后面的数字对应不同位操作系统独有的库文件。etc: 系统需要的配置文件。

2024-02-02 10:15:00 290

原创 C++内存管理

注意,返回的指针的类型是。(Memory Allocation的缩写)用于在堆上动态分配一块指定大小的内存空间。是C语言中用于动态内存分配和释放的函数。虽然C++提供了更先进的内存管理方式,如。参数表示要分配的字节数,函数返回一个指向分。运算符,但是仍然可以在C++中使用。,因此需要进行强制类型转换。参数是要释放的内存块的指针。

2024-01-11 17:10:42 423

原创 右值引用,左值引用

表示,c++11后出现的,如表达式,整形1,2...只能出现在operator= 的右侧,用&&左值引用就为常见的引用,本文主要讲右值引用。可以出现在operator= 的左侧。这个方法将左值参数无条件的转换为右值。

2024-01-10 22:39:05 391

原创 C++11常见的代码操作

【代码】C++11常见的代码操作。

2024-01-08 20:39:16 437

原创 C++11新特性(也称c++2.0)

注:visual studio要手动打开c++11,在“解决方案资源管理器”右键自己的项目, 如“侯捷C++”(是总项目,不是项目中的某一头文件或源文件),按一下操作。【右击项目】–【选择属性】–【C/C++】–【语言】–【C++语言标准】,选择想要的标准即可。老版的话会输出199711,支持c++11的话会输出201103。visual studio2019以上才支持C++11(好像是)

2024-01-08 16:12:49 512

原创 适配器Adapters

stack,queue他们两的底层结构都为deque,deque有好多功能,而stack,queue并不全需要这些功能,而且有些用法也会改变,如图中倒数第二行,deque中用的是push_back(),而stack,queue用的是push(),因此就需要对应的适配器对deque进行改造来实现stack,queue。别的适配器现在看不懂,以后再看。主要是对底层的东西进行改造。

2024-01-08 13:19:43 377

原创 哈希表(Hash table)

hashtable元素编号除以篮子个数的余数就是要放在第几个篮子中,很可能出现编号不同的元素的余数相同,放在同一个篮子中。如果发生了碰撞,就让它变成一个链表,放在一起。如果你元素个数比篮子数还多,就危险了,需要打散链表。篮子个数扩充规则,就是原始个数的二倍周围最近的一个质数。可以使用hashtable的迭代器改变元素的value,但不能改变元素的key。c++标准库使用的是unordered_set,unordered_map,multiset,multimap代替右边的。这块学的不是很清楚,后面再看。

2024-01-07 17:22:48 413

原创 分配器allocators

会省略不写,源代码有默认的)事实上,分配器是以 ::operator new 与 ::operator delete完成allocate()和deallocate(),即内存的分配与回收。而 ::operator new()的源码是以malloc分配内存的,即当我们需要size大小的空间时,malloc()分配下图所示空间。分配器:负责空间的配置与管理(写在容器类型的后面,如右图,作用是帮容器分配内存,一般都。分配size大小的空间,如上图,空间前面和末尾都会加额外的东西,内存管理会讲。

2024-01-05 16:47:04 439

原创 C++面向对象编程与泛型编程(GP)

C++既支持面向对象编程,又支持泛型编程。

2024-01-04 12:30:00 432

原创 c++的一些输出cout,printf,fprintf,snprintf

C++中推荐cout输出, printf,fprintf,snprintf是c的标准库函数,c++继承了他。

2024-01-02 15:06:12 469

原创 异常检测(无监督,生成模型)—DRÆM – A discriminatively trained reconstruction embedding for surfaceanomaly detect

注:因为模型分为重构模块和判别模块,比较大,测试时将batch_size设为1cuda内存都不够,在测试代码中加 with torch.no_grad(): 即可。

2023-11-24 10:06:01 1443

原创 作用域,基本数据类型(常量const),转义字符,单引号与双引号,运算符

由于小于运算符“

2023-11-06 22:47:54 198

原创 常见的内置方法:__call__,__getitem__,__iter__,__next__

在创建好一个实例后,直接调用一个实例会报错。但使用__call__后,可以让这个实例可以像方法一样被调用(就是一个函数后面加个括号的函数调用形式)

2023-11-04 22:44:08 278

原创 进程/线程

进程是资源单位, 线程是执行单位。每一个进程至少要有一个线程,启动每一个程序默认都会有一个主线程。

2023-11-02 11:24:12 88

原创 正则表达式 re模块

可以在如下网站中测试正则表达式。

2023-11-01 20:18:09 348

原创 python中函数,装饰器,迭代器,生成器

1.函数可以作为参数进行传递2.函数可以作为返回值进行返回3.函数名称可以当成变量一样进行赋值操作。

2023-10-30 22:37:50 197 1

原创 global,nonlocal。globals(),locals()。filter,map

在局部,引入全局变量,使得局部变量可以修改全局变量。在局部,引入外层的局部变量。

2023-10-30 20:16:50 134

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除