技术杂记
文章平均质量分 55
木尧大兄弟
自然语言处理/大语言模型/深度学习/机器学习/AIGC/编曲混音
展开
-
vLLM大模型推理加速方案原理(PagedAttention)
vLLM 用于大模型并行推理加速,核心是通过 PagedAttention 对注意力 key 和 value 进行内存管理原创 2023-07-12 21:45:50 · 18059 阅读 · 0 评论 -
pdsh 2.29 安装
pdsh安装原创 2023-07-11 17:54:15 · 585 阅读 · 0 评论 -
关于 torch 的 device id 与真实 GPU id 的关系
如题原创 2022-12-13 18:38:39 · 1231 阅读 · 0 评论 -
Linux 服务器普通用户安装 tree 命令
分到一台 Ubuntu 新服务器,需要装一下 tree 命令,特此记录。原创 2022-10-13 16:50:36 · 1218 阅读 · 0 评论 -
openssl enc 加密/解密文件
OpenSSL 可用密码或者秘钥方式进行加密,近期用到用密码进行加密解密,故记录之。原创 2022-09-06 20:13:02 · 4658 阅读 · 0 评论 -
m1 mac 使用 obs + BlackHole 内录电脑音频
该方案的原理是将电脑音频同时输出到你的设备(耳机、扬声器等)+ BlackHole。然后让 OBS 获取 BlackHole 的音频,就相当于获取了电脑音频。第三步,打开 “音频midi设置”,创建多输出设备,勾选当前设备+BlackHole 2ch。,填个邮箱地址,会收到下载地址(下载 2ch 的版本就行,也就是2声道)。直接 obs 是内录不了的,由于 macOS 的限制,无法获取桌面音频。第四步,打开“声音”设置,选择刚创建的聚集设备为输出设备。于是使用 BlackHole(原创 2022-09-04 20:42:51 · 6137 阅读 · 1 评论 -
Python代码部署的三种加密方案:代码混淆、代码编译、代码打包
最近需要源码部署一个项目,因此探索一下保护源码的方式,由简单到复杂主要总结为以下三大类:- 代码混淆:主要是改变一些函数名、变量名- 代码打包:思路是把Python代码打包成 .exe 的可执行文件- 代码编译:思路是将Python代码编译成C,然后编译成动态链接库文件(linux的.so、windows的.dll)原创 2022-08-23 19:26:25 · 13133 阅读 · 1 评论 -
开源协议(Open Source License)
创建 Github 公开项目时,通常选择开源协议。本文整理了笔者收集的几个开源协议相关的直观图表。原创 2022-08-03 15:38:13 · 1438 阅读 · 0 评论 -
frp:开源内网穿透工具
frp是一个专注于内网穿透的高性能的反向代理应用,支持TCP、UDP、HTTP、HTTPS等多种协议。可以将内网服务以安全、便捷的方式通过具有公网IP节点的中转暴露到公网。官网GitHubhttps官网文档https。原创 2022-07-26 20:15:06 · 3739 阅读 · 0 评论 -
sqlite 日期字段加一天
背景介绍需要写一个更改时间字段的功能,要用到 sql 语句操作 sqlite 数据库,由于 sqlite 不支持 dateadd 等函数,只能用其他方法,于是找到了 datetime() 函数。使用方法对 review 表的 add_time 字段统一增加 1天,执行以下语句:update review set add_time=DATETIME(add_time, ‘+1 day’);执行前:执行后:扩展知识SQLite 支持以下五个日期和时间函数:date(timestrin原创 2022-04-15 22:49:32 · 2844 阅读 · 0 评论 -
m1 mac 安装和使用 homebrew 解决 scrapy 运行时OpenSSL的问题
背景最近需要在 m1 mac 上用 scrapy 爬点数据,用 miniconda 装了个虚拟环境后,运行 scrapy shell 测试 https 请求时,报错如下:builtins.MemoryError: Cannot allocate write+execute memory for ffi.callback(). You might be running on a system that prevents this. For more information, see https://cf原创 2022-04-03 14:06:27 · 2475 阅读 · 4 评论 -
Charles抓包工具学习记录
背景需要对某安卓APP进行抓包分析,但macOS上没法装fiddler,于是就安装了Charles。安装地址:https://macwk.com/soft/charles参考教程:https://www.bilibili.com/video/BV1mQ4y1N7dn界面主导航栏:请求栏:原创 2022-01-16 20:53:12 · 239 阅读 · 0 评论 -
Docker启动mysql
下载MySQL镜像Docker Hub链接:https://hub.docker.com/_/mysql?tab=description这里使用mysql 8.0.27版本$ docker pull mysql:8.0.27创建/启动/配置MySQL容器基于镜像 mysql:8.0.27 创建名为 mysql-8.0.27-container 的mysql容器,并设置 root 用户密码为 ******** (记得映射3306端口到宿主机的3306端口):$ docker run --re原创 2021-12-21 11:10:57 · 1667 阅读 · 0 评论 -
Macbook pro安装vscode并配置免密ssh访问腾讯云服务器记录
一、安装vscode官网下载vscode(https://code.visualstudio.com),并把下载的vscode拖到Applications中即可完成安装。二、配置ssh免密登陆所需密钥Mac端生成private-public密钥对儿,输入以下命令连续回车:ssh-keygen -t rsa -f ~/.ssh/id_rsa.tencent -C "Key for 192.xxx.xxx.xxx" 这里后缀用cloud01为了专钥专用,以作区分。生成到 ~/.ssh/目录下,即原创 2021-11-14 21:27:08 · 2124 阅读 · 0 评论 -
Ubuntu启动nginx后寻找html文件夹时报permission deny的解决方法
个人网站服务器升级,用apt安装了nginx:/usr/sbin/nginx:主程序/etc/nginx:存放配置文件/usr/share/nginx:存放静态文件/var/log/nginx:存放日志在配置文件nginx.conf中,有这样一个需求:当访问https://vae.muyaostudio.cn时,监听443端口然后访问位于/home/ubuntu/all_nginx/vae/html的静态文件,配置如下:server { #端口改成443 listen原创 2021-11-12 22:05:43 · 2508 阅读 · 0 评论 -
Windows11安装安卓子系统WSA及安卓应用
1.安装 Windows 虚拟化支持:这里面开启「Hyper-V」和「虚拟机平台」两个选项。如果找不到,则新建xxx.cmd文件,复制下面进去,并右键用管理员运行,装完后重启。pushd "%~dp0"dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txtfor /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /a原创 2021-10-26 11:11:01 · 3310 阅读 · 0 评论 -
使用pipreqs导出项目所需的requirements.txt(而非整个环境)
之前一直用pip freeze > requirements.txt导出requirements.txt,优点是不用安装其他依赖,缺点是会将项目依赖的python环境中所有依赖都输出。替代方案: 使用pipreqs导出。pip install pipreqspipreqs . --encoding=utf8 --force安装并执行,如上所示,就会将requirements.tx输出到执行命令所在的目录。如此清爽。再也不用担心安装一些乱七八糟的包了。附上Dockerfile安装脚本原创 2021-10-22 10:35:27 · 4425 阅读 · 1 评论 -
Python向对象存储系统WOS上传文件(基于requests+requests_toolbelt)
项目需求:向对象存储系统上传训练完成的模型踩坑过程:只用requests包的 requests.post(…, files=…) 无法解决问题。具体表现为,如果直接把Content-Type写成“multipart/form-data”的话会报错,因为缺少multipart/form-data后面随机的“boundary”。网上资料说headers去掉Content-Type后,requests会自动给生成,但是去掉后会另外的错:最终方案:requests+requests_toolbelt代码片段原创 2021-10-21 11:51:30 · 256 阅读 · 0 评论 -
docker run -e 使用环境变量传值(字符、数字、json)并用python解析
第一步,代码编写DockerfileDockerfile的后半部分(设置环境变量默认值,以及传到run.sh中)一个坑:ENTRYPOINT 后面不能用[]的形式 否则无法读取环境变量值。# 设置环境默认值ENV task_id=123ENV task_param=1# entrypoint是容器入口 # 不能用下面[]这种形式,否则读取不到环境变量!!# ENTRYPOINT ["/bin/bash", "/code/run.sh"]ENTRYPOINT /bin/bash /c原创 2021-10-20 16:42:48 · 3174 阅读 · 0 评论 -
用diskpart的offline命令弹出顽固硬盘
背景:移动硬盘被system进程占用,因此用任务管理器的资源监视器结束进程是不现实的。第一步:打开cmd,输入diskpart第二步:执行以下命令列出磁盘序号,选择磁盘,使之脱机:到此为止就可以弹出硬盘了。番外步骤:重新使之Online【注意】此时再插上时依然是离线状态,因此没有反应!于是,重新执行以下命令使之上线即可(迫不得已只能这样做了)。...原创 2021-08-17 17:20:24 · 4410 阅读 · 0 评论 -
Github/Gitlab/Gitee徽章生成网站shields.io的使用方法
网站地址:https://shields.io/【静态徽标】label:左边标签message:右边具体信息color:颜色,常用颜色如下网址1:https://img.shields.io/static/v1?label=<LABEL>&message=<MESSAGE>&color=<COLOR>案例1:https://img.shields.io/static/v1?label=Translation&message=Dev b原创 2021-08-11 16:47:26 · 4075 阅读 · 1 评论 -
Docker速成过程中遇到的八个问题
前言模型推理服务需要用Docker进行部署,所以记录了Docker学习过程中的八大问题。项目需求:将Flask服务用Docker打包成镜像。个人环境:Python 3.8(in WSL2)、VSCode(Docker插件)、Docker Desktop。概念理解:Docker的Image相当于一个装好运行环境和代码的虚拟机镜像,Container相当于基于镜像实例化运行的容器。一、Docker如何安装和启动?参考:Ubuntu Docker 安装 | 菜鸟教程需要把自己加入sudoers,获取原创 2021-08-10 12:00:14 · 1334 阅读 · 2 评论 -
conda换源
记录linux换源。第一步,执行conda config --set show_channel_urls yes或手动创建.condarc文件(家目录~)。第二步,把下面这坨粘进去。channels: - defaultsshow_channel_urls: truedefault_channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu原创 2021-08-09 15:20:00 · 965 阅读 · 0 评论 -
Python3搭局域网文件服务器的简单方案
第一步,命令行切换到需要share的文件夹第二步,执行:端口号可改python -m http.server 8888第三步,本机访问输入127.0.0.1:port访问,局域网内其他主机访问输入内网ip:port即可。【待尝试的其他方案】nextcloudcaddyseafile(py2)...原创 2021-07-29 10:18:14 · 346 阅读 · 0 评论 -
一个网页倒计时的小需求(Javascript定时器)
直接上代码!<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title原创 2021-07-07 21:22:55 · 129 阅读 · 0 评论 -
大前端技术学习与核心整理(NodeJS/ES6/npm/babel/webpack)
前言本文整理了学习过程中关于NodeJS、ES6标准的新特性、npm包管理工具、babel降级、webpack打包等大前端技术,学习的原因是几个月以后可能会用到。NodeJSNode 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP、Python、Perl、Ruby 等服务端语言平起平坐的脚本语言,实质是对Chrome V8引擎进行了封装(node安装自带npm,node -v查看版本)。【案例1】用Node实现请求响应(类似flask)。创建ser原创 2021-04-26 21:21:53 · 2693 阅读 · 9 评论 -
公众号开发因接口权限太少而放弃
前言最近闲的蛋疼想抛弃微信官方提供的服务,想把公众号服务都迁移到云服务器上,却发现接口权限太少了…就把瞎捣鼓过程记录一下。一、基本配置主要是添加url和token,这里url必须以http://或https://开头,分别支持80端口和443端口。所以服务器那边就用Nginx监听443端口然后转发到给微信api分配的端口(本文是8000)。二、服务器身份验证自己的服务器接收到GET请求时,需要校验消息是不是微信的服务器发过来的,代码如下。@app.route('/', methods=['GE原创 2021-04-21 19:26:02 · 411 阅读 · 2 评论 -
redis安装操作与python交互
一、安装和启动# 安装wget http://download.redis.io/releases/redis-3.2.8.tar.gztar -zxvf redis-3.2.8.tar.gzcd redis-3.2.8make# 添加密码 并允许公网访问nano redis.conf修改:requirepass mypasswordxxx注释:bind 127.0.0.1# 启动服务端./src/redis-server redis.conf# 启动客户端测试./src/redi原创 2021-02-06 22:58:18 · 182 阅读 · 0 评论 -
Windows编辑shell文件放到Linux中执行报错的解决方案
Windows用notepad++编辑shell文件run_spleeter.shecho "================================="echo " 欢迎使用run_spleeter @lqx "echo "================================="read -p "请输入文件名 >>>" filenameread -p "请输入分割数(2/4/5) >>>" numread -p "即将执行:原创 2021-01-11 17:21:48 · 423 阅读 · 0 评论 -
centos7上mariadb的安装、配置、用户管理
安装使用yum安装MariaDByum -y install mariadb-server mariadb安装完成后,需要设置为开机自启动systemctl enable mariadb.service下面设置一些东西,初次运行直接回车不输入密码mysql_secure_installation设置其他东西Set root password? [Y/n] # – 是否设置root用户密码,输入y并回车或直接回车New password:原创 2021-01-06 16:59:22 · 719 阅读 · 0 评论 -
实验室新服务器装minconda+jupyterlab记录
安装miniconda、安装子环境(base) lqx@xn307-3090:~$ sh miniconda.sh(base) lqx@xn307-3090:~$ source .bashrc(base) lqx@xn307-3090:~$ conda create -n lqxenv python=3.6(base) lqx@xn307-3090:~$ conda activate lqxenv(lqxenv) lqx@xn307-3090:~$ conda list(lqxenv) lqx.原创 2020-12-10 13:16:01 · 1157 阅读 · 0 评论 -
flask使用gevent实现多线程,防止一个请求阻塞另一个请求
背景介绍:接口A需要漫长的耗时操作,接口B、C、D...如果恰好在调用接口A时被调用,会发生阻塞。解决:使用gevent包。from gevent import monkeymonkey.patch_all() # 多线程如果这两行代码放的太靠后,会出现以下警告:原因:import包名顺序导入错误,使用gevent,一定要把from gevent import monkey,monkey.patch_all()两行语句放在其他所有的import语句之前。...原创 2020-12-07 18:49:45 · 2371 阅读 · 0 评论 -
基于Vue框架重构Vae+APP小记(全局变量、axios发请求、循环渲染、父子组件传值)
一、全局变量在App.vue中定义全局变量在components中的vae.vue组件中调用:二、使用axios实现发请求首先安装axios:npm install axios --save然后引入axios,发请求并解析响应:对于写入属性,可以这样取值(注意属性前面的冒号):对于写入标签值,可以这样操作:三、渲染新闻列表(v-for以及父子组件之间使用props传值)需求:vae.vue是首页,里面新闻部分单独做成了组件vae_news.vu.原创 2020-12-05 21:16:03 · 359 阅读 · 0 评论 -
钢琴转谱技术(MP3转MIDI)
代码(by 字节跳动孔大佬):https://github.com/qiuqiangkong/piano_transcription_inference使用:1.安装packagepip install piano_transcription_inference2.下载预训练模型https://zenodo.org/record/40342643.运行代码from piano_transcription_inference import PianoTranscription, sample原创 2020-11-11 22:10:50 · 4137 阅读 · 4 评论 -
【新服务器安装python记录】linux使用virtualenv新建虚拟环境后activate报“Permission denied”
尝试chmod:没啥卵用于是nano bin/activate看了一下吆西!原创 2020-11-03 15:37:06 · 596 阅读 · 0 评论 -
ES(ElasticSearch)数据库的安装、使用和Python交互
一、安装下载:https://www.elastic.co/cn/products/elasticsearch双击:访问:http://127.0.0.1:9200原创 2020-10-25 19:42:58 · 649 阅读 · 0 评论 -
阿里云短信服务(Python3)
网站:https://market.aliyun.com/products/57126001/cmapi00040066.html模版管理:https://openali.esandcloud.com/?spm=5176.730006-56956004-57126001-cmapi00040066.content.10.66a38d6bLd3I80官方给的python2代码,需要改成python3代码:import sslfrom urllib.parse import urlenc原创 2020-10-09 15:47:04 · 700 阅读 · 0 评论 -
Python装饰器、构造器、生成器、迭代器
装饰器(decorator)what:装饰器是个函数,传入一个函数(比如主功能函数),返回另一个函数(比如计时函数)why:引入日志、执行时间统计、权限校验等import time# 装饰器函数 功能为func函数计时def timeslong(func): # 以函数作为参数 def wrapper(): start = time.clock() print("开始计时!") func() # 执行func原创 2020-09-12 11:32:01 · 589 阅读 · 0 评论 -
网络编程(python socket)
服务端调用socket函数创建一个套接字 调用bind函数绑定ip和port 调用listen函数使套接字监听指定端口 调用accept函数等待客户端连接 调用recv、send收发数据import socket# 创建服务端socket对象skt_server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)# 获取本地主机名(MuyaoStudio)host = socket.gethostname()# 绑定端口号原创 2020-09-10 20:58:26 · 225 阅读 · 0 评论 -
mysqldump命令把数据库中某个表导出为.sql文件
示例数据库名:mydb示例数据表名:mytable示例密码:pwd输入如下命令并回车:mysqldump --databases mydb -uroot -p --tables mytable > mytable.sql然后输入密码pwd并回车:这样就生成了所需要的sql文件...原创 2020-07-31 12:54:58 · 692 阅读 · 0 评论