当前位置: 首页 > news >正文

Ubuntu20.04配置qwen0.5B记录

环境简介

Ubuntu20.04、
NVIDIA-SMI 545.29.06、
Cuda 11.4、
python3.10、
pytorch1.11.0

开始搭建

python环境设置

创建虚拟环境

conda create --name qewn python==3.10

预安装modelscope和transformers

pip install modelscope
pip install transformers

安装pytorch

conda install pytorch==1.11.0 torchvision==0.12.0 torchaudio==0.11.0 cudatoolkit=11.3
模型需要下载

创建一个python文件

gedit download.py

里面复制如下内容

from modelscope.hub.file_download import model_file_downloadmodel_dir = model_file_download(model_id='qwen/Qwen1.5-0.5B-Chat-GGUF',file_path='qwen1_5-0_5b-chat-q5_k_m.gguf',revision='master',cache_dir='path/to/local/dir')

运行python文件进行下载

python download.py
下载llama.cpp

使⽤git命令克隆llama.cpp项⽬

git clone https://github.com/ggerganov/llama.cpp

克隆完成之后我们进入llama.cpp目录中,对项目进行编译

cd llama.cpp
make -j
模型下载

在魔搭社区中下载模型运行
https://www.modelscope.cn/models/qwen/Qwen1.5-0.5B-Chat-GGUF/files
本人下载的是qwen1_5-0_5b-chat-q5_k_m.gguf
终端运行,其中模型替换为自己的模型地址(官方给的-cml参数在help中没有找到,且影响运行,所以我删除掉了)
官方:

./main -m /path/to/local/dir/qwen/Qwen1.5-0.5B-Chat-GGUF/qwen1_5-0_5b-chat-q5_k_m.gguf -n 512 --color -i -cml -f prompts/chat-with-qwen.txt

我运行:

./main -m /path/to/local/dir/qwen/Qwen1.5-0.5B-Chat-GGUF/qwen1_5-0_5b-chat-q5_k_m.gguf -n 512 --color -i -f prompts/chat-with-qwen.txt

help内容:

usage: ./main [options]general:-h,    --help, --usage          print usage and exit--version                show version and build info-v,    --verbose                print verbose information--verbosity N            set specific verbosity level (default: 0)--verbose-prompt         print a verbose prompt before generation (default: false)--no-display-prompt      don't print prompt at generation (default: false)-co,   --color                  colorise output to distinguish prompt and user input from generations (default: false)-s,    --seed SEED              RNG seed (default: -1, use random seed for < 0)-t,    --threads N              number of threads to use during generation (default: 8)-tb,   --threads-batch N        number of threads to use during batch and prompt processing (default: same as --threads)-td,   --threads-draft N        number of threads to use during generation (default: same as --threads)-tbd,  --threads-batch-draft N  number of threads to use during batch and prompt processing (default: same as --threads-draft)--draft N                number of tokens to draft for speculative decoding (default: 5)-ps,   --p-split N              speculative decoding split probability (default: 0.1)-lcs,  --lookup-cache-static FNAMEpath to static lookup cache to use for lookup decoding (not updated by generation)-lcd,  --lookup-cache-dynamic FNAMEpath to dynamic lookup cache to use for lookup decoding (updated by generation)-c,    --ctx-size N             size of the prompt context (default: 0, 0 = loaded from model)-n,    --predict N              number of tokens to predict (default: -1, -1 = infinity, -2 = until context filled)-b,    --batch-size N           logical maximum batch size (default: 2048)-ub,   --ubatch-size N          physical maximum batch size (default: 512)--keep N                 number of tokens to keep from the initial prompt (default: 0, -1 = all)--chunks N               max number of chunks to process (default: -1, -1 = all)-fa,   --flash-attn             enable Flash Attention (default: disabled)-p,    --prompt PROMPT          prompt to start generation with (default: '')-f,    --file FNAME             a file containing the prompt (default: none)--in-file FNAME          an input file (repeat to specify multiple files)-bf,   --binary-file FNAME      binary file containing the prompt (default: none)-e,    --escape                 process escapes sequences (\n, \r, \t, \', \", \\) (default: true)--no-escape              do not process escape sequences-ptc,  --print-token-count N    print token count every N tokens (default: -1)--prompt-cache FNAME     file to cache prompt state for faster startup (default: none)--prompt-cache-all       if specified, saves user input and generations to cache as wellnot supported with --interactive or other interactive options--prompt-cache-ro        if specified, uses the prompt cache but does not update it-r,    --reverse-prompt PROMPT  halt generation at PROMPT, return control in interactive modecan be specified more than once for multiple prompts-sp,   --special                special tokens output enabled (default: false)-cnv,  --conversation           run in conversation mode (does not print special tokens and suffix/prefix) (default: false)-i,    --interactive            run in interactive mode (default: false)-if,   --interactive-first      run in interactive mode and wait for input right away (default: false)-mli,  --multiline-input        allows you to write or paste multiple lines without ending each in '\'--in-prefix-bos          prefix BOS to user inputs, preceding the `--in-prefix` string--in-prefix STRING       string to prefix user inputs with (default: empty)--in-suffix STRING       string to suffix after user inputs with (default: empty)sampling:--samplers SAMPLERS      samplers that will be used for generation in the order, separated by ';'(default: top_k;tfs_z;typical_p;top_p;min_p;temperature)--sampling-seq SEQUENCE  simplified sequence for samplers that will be used (default: kfypmt)--ignore-eos             ignore end of stream token and continue generating (implies --logit-bias EOS-inf)--penalize-nl            penalize newline tokens (default: false)--temp N                 temperature (default: 0.8)--top-k N                top-k sampling (default: 40, 0 = disabled)--top-p N                top-p sampling (default: 0.9, 1.0 = disabled)--min-p N                min-p sampling (default: 0.1, 0.0 = disabled)--tfs N                  tail free sampling, parameter z (default: 1.0, 1.0 = disabled)--typical N              locally typical sampling, parameter p (default: 1.0, 1.0 = disabled)--repeat-last-n N        last n tokens to consider for penalize (default: 64, 0 = disabled, -1 = ctx_size)--repeat-penalty N       penalize repeat sequence of tokens (default: 1.0, 1.0 = disabled)--presence-penalty N     repeat alpha presence penalty (default: 0.0, 0.0 = disabled)--frequency-penalty N    repeat alpha frequency penalty (default: 0.0, 0.0 = disabled)--dynatemp-range N       dynamic temperature range (default: 0.0, 0.0 = disabled)--dynatemp-exp N         dynamic temperature exponent (default: 1.0)--mirostat N             use Mirostat sampling.Top K, Nucleus, Tail Free and Locally Typical samplers are ignored if used.(default: 0, 0 = disabled, 1 = Mirostat, 2 = Mirostat 2.0)--mirostat-lr N          Mirostat learning rate, parameter eta (default: 0.1)--mirostat-ent N         Mirostat target entropy, parameter tau (default: 5.0)-l TOKEN_ID(+/-)BIAS     modifies the likelihood of token appearing in the completion,i.e. `--logit-bias 15043+1` to increase likelihood of token ' Hello',or `--logit-bias 15043-1` to decrease likelihood of token ' Hello'--cfg-negative-prompt PROMPTnegative prompt to use for guidance (default: '')--cfg-negative-prompt-file FNAMEnegative prompt file to use for guidance--cfg-scale N            strength of guidance (default: 1.0, 1.0 = disable)grammar:--grammar GRAMMAR        BNF-like grammar to constrain generations (see samples in grammars/ dir) (default: '')--grammar-file FNAME     file to read grammar from-j,    --json-schema SCHEMA     JSON schema to constrain generations (https://json-schema.org/), e.g. `{}` for any JSON objectFor schemas w/ external $refs, use --grammar + example/json_schema_to_grammar.py insteadembedding:--pooling {none,mean,cls}pooling type for embeddings, use model default if unspecifiedcontext hacking:--rope-scaling {none,linear,yarn}RoPE frequency scaling method, defaults to linear unless specified by the model--rope-scale N           RoPE context scaling factor, expands context by a factor of N--rope-freq-base N       RoPE base frequency, used by NTK-aware scaling (default: loaded from model)--rope-freq-scale N      RoPE frequency scaling factor, expands context by a factor of 1/N--yarn-orig-ctx N        YaRN: original context size of model (default: 0 = model training context size)--yarn-ext-factor N      YaRN: extrapolation mix factor (default: -1.0, 0.0 = full interpolation)--yarn-attn-factor N     YaRN: scale sqrt(t) or attention magnitude (default: 1.0)--yarn-beta-slow N       YaRN: high correction dim or alpha (default: 1.0)--yarn-beta-fast N       YaRN: low correction dim or beta (default: 32.0)-gan,  --grp-attn-n N           group-attention factor (default: 1)-gaw,  --grp-attn-w N           group-attention width (default: 512.0)-dkvc, --dump-kv-cache          verbose print of the KV cache-nkvo, --no-kv-offload          disable KV offload-ctk,  --cache-type-k TYPE      KV cache data type for K (default: f16)-ctv,  --cache-type-v TYPE      KV cache data type for V (default: f16)perplexity:--all-logits             return logits for all tokens in the batch (default: false)--hellaswag              compute HellaSwag score over random tasks from datafile supplied with -f--hellaswag-tasks N      number of tasks to use when computing the HellaSwag score (default: 400)--winogrande             compute Winogrande score over random tasks from datafile supplied with -f--winogrande-tasks N     number of tasks to use when computing the Winogrande score (default: 0)--multiple-choice        compute multiple choice score over random tasks from datafile supplied with -f--multiple-choice-tasks Nnumber of tasks to use when computing the multiple choice score (default: 0)--kl-divergence          computes KL-divergence to logits provided via --kl-divergence-base--ppl-stride N           stride for perplexity calculation (default: 0)--ppl-output-type {0,1}  output type for perplexity calculation (default: 0)parallel:-dt,   --defrag-thold N         KV cache defragmentation threshold (default: -1.0, < 0 - disabled)-np,   --parallel N             number of parallel sequences to decode (default: 1)-ns,   --sequences N            number of sequences to decode (default: 1)-cb,   --cont-batching          enable continuous batching (a.k.a dynamic batching) (default: enabled)multi-modality:--mmproj FILE            path to a multimodal projector file for LLaVA. see examples/llava/README.md--image FILE             path to an image file. use with multimodal models. Specify multiple times for batchingbackend:--rpc SERVERS            comma separated list of RPC servers--mlock                  force system to keep model in RAM rather than swapping or compressing--no-mmap                do not memory-map model (slower load but may reduce pageouts if not using mlock)--numa TYPE              attempt optimizations that help on some NUMA systems- distribute: spread execution evenly over all nodes- isolate: only spawn threads on CPUs on the node that execution started on- numactl: use the CPU map provided by numactlif run without this previously, it is recommended to drop the system page cache before using thissee https://github.com/ggerganov/llama.cpp/issues/1437model:--check-tensors          check model tensor data for invalid values (default: false)--override-kv KEY=TYPE:VALUEadvanced option to override model metadata by key. may be specified multiple times.types: int, float, bool, str. example: --override-kv tokenizer.ggml.add_bos_token=bool:false--lora FNAME             apply LoRA adapter (implies --no-mmap)--lora-scaled FNAME S    apply LoRA adapter with user defined scaling S (implies --no-mmap)--lora-base FNAME        optional model to use as a base for the layers modified by the LoRA adapter--control-vector FNAME   add a control vector--control-vector-scaled FNAME SCALEadd a control vector with user defined scaling SCALE--control-vector-layer-range START ENDlayer range to apply the control vector(s) to, start and end inclusive-m,    --model FNAME            model path (default: models/$filename with filename from --hf-fileor --model-url if set, otherwise models/7B/ggml-model-f16.gguf)-md,   --model-draft FNAME      draft model for speculative decoding (default: unused)-mu,   --model-url MODEL_URL    model download url (default: unused)-hfr,  --hf-repo REPO           Hugging Face model repository (default: unused)-hff,  --hf-file FILE           Hugging Face model file (default: unused)retrieval:--context-file FNAME     file to load context from (repeat to specify multiple files)--chunk-size N           minimum length of embedded text chunks (default: 64)--chunk-separator STRING separator between chunks (default: '')passkey:--junk N                 number of times to repeat the junk text (default: 250)--pos N                  position of the passkey in the junk text (default: -1)imatrix:-o,    --output FNAME           output file (default: 'imatrix.dat')--output-frequency N     output the imatrix every N iterations (default: 10)--save-frequency N       save an imatrix copy every N iterations (default: 0)--process-output         collect data for the output tensor (default: false)--no-ppl                 do not compute perplexity (default: true)--chunk N                start processing the input from chunk N (default: 0)bench:-pps                            is the prompt shared across parallel sequences (default: false)-npp n0,n1,...                  number of prompt tokens-ntg n0,n1,...                  number of text generation tokens-npl n0,n1,...                  number of parallel promptsserver:--host HOST              ip address to listen (default: 127.0.0.1)--port PORT              port to listen (default: 8080)--path PATH              path to serve static files from (default: )--embedding(s)           enable embedding endpoint (default: disabled)--api-key KEY            API key to use for authentication (default: none)--api-key-file FNAME     path to file containing API keys (default: none)--ssl-key-file FNAME     path to file a PEM-encoded SSL private key--ssl-cert-file FNAME    path to file a PEM-encoded SSL certificate--timeout N              server read/write timeout in seconds (default: 600)--threads-http N         number of threads used to process HTTP requests (default: -1)--system-prompt-file FNAMEset a file to load a system prompt (initial prompt of all slots), this is useful for chat applications--log-format {text,json} log output format: json or text (default: json)--metrics                enable prometheus compatible metrics endpoint (default: disabled)--no-slots               disables slots monitoring endpoint (default: enabled)--slot-save-path PATH    path to save slot kv cache (default: disabled)--chat-template JINJA_TEMPLATEset custom jinja chat template (default: template taken from model's metadata)only commonly used templates are accepted:https://github.com/ggerganov/llama.cpp/wiki/Templates-supported-by-llama_chat_apply_template-sps,  --slot-prompt-similarity SIMILARITYhow much the prompt of a request must match the prompt of a slot in order to use that slot (default: 0.50, 0.0 = disabled)logging:--simple-io              use basic IO for better compatibility in subprocesses and limited consoles-ld,   --logdir LOGDIR          path under which to save YAML logs (no logging if unset)--log-test               Run simple logging test--log-disable            Disable trace logs--log-enable             Enable trace logs--log-file FNAME         Specify a log filename (without extension)--log-new                Create a separate new log file on start. Each log file will have unique name: "<name>.<ID>.log"--log-append             Don't truncate the old log file.

参考文章

(Qwen)通义千问大模型安装部署教程2024最新

相关文章:

Ubuntu20.04配置qwen0.5B记录

环境简介 Ubuntu20.04、 NVIDIA-SMI 545.29.06、 Cuda 11.4、 python3.10、 pytorch1.11.0 开始搭建 python环境设置 创建虚拟环境 conda create --name qewn python3.10预安装modelscope和transformers pip install modelscope pip install transformers安装pytorch co…...

java自学阶段二:JavaWeb开发--day80(项目实战2之苍穹外卖)

《项目案例—黑马苍穹外卖》 目录&#xff1a; 学习目标项目介绍前端环境搭建(前期直接导入老师的项目&#xff0c;后期自己敲&#xff09;后端环境搭建&#xff08;导入初始项目&#xff0c;新建仓库使用git管理项目&#xff0c;新建数据库&#xff0c;修改登录功能&#xff…...

HPUX系统Oracle RAC如何添加ASM磁盘

前言 HPUX简介 HP-UX (Hewlett-Packard Unix) 是惠普公司开发的类 Unix 操作系统。自 1980 年代问世以来&#xff0c;HP-UX 在技术和功能上不断发展&#xff0c;适应了多种硬件平台和企业计算需求。以下是 HP-UX 的发展历史概述&#xff1a; 1980 年代&#xff1a;起源与早期…...

Jmeter 压力测测试的简单入门

下载安装 官方网站&#xff1a;Apache JMeter - Download Apache JMeter 下载完成解压即可。 配置 1. 找到 bin 目录下的 ApacheJMeter.jar 包&#xff0c;直接打开 如果向图片这样不能直接打开&#xff0c;就在此路径运行 CMD&#xff0c;然后输入下面的命令即可启动。 ja…...

N叉树的层序遍历-力扣

本题同样是二叉树的层序遍历的扩展&#xff0c;只不过二叉树每个节点的子节点只有左右节点&#xff0c;而N叉树的子节点是一个数组&#xff0c;层序遍历到一个节点时&#xff0c;需要将这个节点的子节点数组的每个节点都入队。 代码如下&#xff1a; /* // Definition for a N…...

解决阿里云的端口添加安全组仍然无法扫描到

发现用线上的网站扫不到这个端口&#xff0c;这个端口关了&#xff0c;但是没有更详细信息了 我用nmap扫了一下我的这个端口&#xff0c;发现主机是活跃的&#xff0c;但是有防火墙&#xff0c;我们列出云服务器上面的这个防火墙list&#xff0c;发现确实没有5566端口 参考&a…...

【因果推断python】26_双重稳健估计1

目录 不要把所有的鸡蛋放在一个篮子里 双重稳健估计 关键思想 不要把所有的鸡蛋放在一个篮子里 我们已经学会了如何使用线性回归和倾向得分加权来估计 。但是我们应该在什么时候使用哪一个呢&#xff1f;在不明确的情况下&#xff0c;请同时使用两者&#xff01;双重稳健估计…...

C语言 图形化界面方式连接MySQL【C/C++】【图形化界面组件分享】

博客主页&#xff1a;花果山~程序猿-CSDN博客 文章分栏&#xff1a;MySQL之旅_花果山~程序猿的博客-CSDN博客 关注我一起学习&#xff0c;一起进步&#xff0c;一起探索编程的无限可能吧&#xff01;让我们一起努力&#xff0c;一起成长&#xff01; 目录 一.配置开发环境 二…...

Unity DOTS技术(十五) 物理系统

要解决性能的瓶颈问题,在DOTS中我们将不再使用Unity自带的物理组件. 下面来分享一下在DOTS中当如何使用物理插件. 一.导入插件 在使用DOTS系创建的实体我们会发现,游戏物体无法受物理系统影响进行运动.于是我们需要添加物理系统插件. 1.打开Package Manager > 搜索插件Uni…...

Java线程安全

线程安全 线程安全&#xff1a;线程安全&#xff1a;synchronized同步代码块:同步方法&#xff1a;成员同步方法:静态同步方法&#xff1a; Lock:应用&#xff1a; 单例模式&#xff1a;懒汉式&#xff1a;饿汉式&#xff1a;枚举饿汉式&#xff1a;双重检验锁&#xff1a; 线程…...

Solidity选择使用 require 语句还是条件语句结合手动触发 revert 操作?回滚交易和抛出异常如何选择?

文章目录 Solidity选择使用 require 语句还是条件语句结合手动触发 revert 操作&#xff1f;场景举例&#xff1a;回滚交易和抛出异常如何选择&#xff1f; Solidity选择使用 require 语句还是条件语句结合手动触发 revert 操作&#xff1f; IERC721 nft IERC721(nftAddress)…...

SpringCloud 网关配置websocket

一、nginx https://域名.com location /websocket/ { proxy_pass http://172.1.1.173:8181/; #内网网关IP proxy_http_version 1.1; proxy_read_timeout 360s; proxy_redirect off; proxy_set_header Upgrade $http_upgrade; …...

基于JavaScript 实现近邻算法以及优化方案

前言 近邻算法&#xff08;K-Nearest Neighbors&#xff0c;简称 KNN&#xff09;是一种简单的、广泛使用的分类和回归算法。它的基本思想是&#xff1a;给定一个待分类的样本&#xff0c;找到这个样本在特征空间中距离最近的 k 个样本&#xff0c;这 k 个样本的多数类别作为待…...

移动端适配和响应式页面中的常用单位

在移动端适配和响应式页面中&#xff0c;一般采用以下几种单位&#xff1a; 百分比&#xff08;%&#xff09;&#xff1a;百分比单位是相对于父元素的大小计算的。它可以用于设置宽度、高度、字体大小等属性&#xff0c;使得元素能够随着父元素的大小自动调整。百分比单位在响…...

麒麟v10系统arm64架构openssh9.7p1的rpm包

制作openssh 说明 理论上制作的多个rpm在arm64架构&#xff08;aarch64&#xff09;都适用 系统信息&#xff1a;4.19.90-17.ky10.aarch64 GNU/Linux 升级前备份好文件/etc/ssh、/etc/pam.d等以及开启telnet 升级后确认正常后关闭telnet 在之前制作过openssh-9.5p1基础上继续…...

刚刚❗️德勤2025校招暑期实习测评笔试SHL测评题库已发(答案)

&#x1f4e3;德勤 2024暑期实习测评已发&#xff0c;正在申请的小伙伴看过来哦&#x1f440; ㊙️本次暑期实习优先考虑2025年本科及以上学历的毕业生&#xff0c;此次只有“审计及鉴定”“税务与商务咨询”两个部门开放了岗位~ ⚠️测评注意事项&#xff1a; &#x1f44…...

python对视频进行帧处理以及裁减部分区域

视频截取帧 废话不多说直接上代码&#xff1a; from cv2 import VideoCapture from cv2 import imwrite# 定义保存图片函数 # image:要保存的图片名字 # addr&#xff1b;图片地址与相片名字的前部分 # num: 相片&#xff0c;名字的后缀。int 类型 def save_image(image, add…...

Python栈的编程题目

你好&#xff0c;我是悦创。 下面是三道关于栈的编程题目&#xff0c;适合不同难度级别的练习&#xff1a; 1. 有效的括号&#xff08;简单&#xff09; 题目描述&#xff1a; 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[ 和 ] 的字符串&#xf…...

ROS云课三分钟外传之CoppeliaSim_Edu_V4_1_0_Ubuntu16_04

三分钟热度试一试吧&#xff0c;走过路过不要错过。 参考之前&#xff1a; 从云课五分钟到一分钟之v-rep_pro_edu_v3_6_2-CSDN博客 git clone https://gitcode.net/ZhangRelay/v-rep_pro_edu_v3_6_2_ubuntu16_04.gittar -xf v-rep_pro_edu_v3_6_2_ubuntu16_04/V-REP_PRO_EDU…...

day28回溯算法part04| 93.复原IP地址 78.子集 90.子集II

**93.复原IP地址 ** 本期本来是很有难度的&#xff0c;不过 大家做完 分割回文串 之后&#xff0c;本题就容易很多了 题目链接/文章讲解 | 视频讲解 class Solution { public:vector<string> result;// pointNum记录加入的点的数量&#xff0c;其等于3的时候停止void b…...

AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议&#xff08;EPSFD 2025&#xff09;将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会&#xff0c;EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

dedecms 织梦自定义表单留言增加ajax验证码功能

增加ajax功能模块&#xff0c;用户不点击提交按钮&#xff0c;只要输入框失去焦点&#xff0c;就会提前提示验证码是否正确。 一&#xff0c;模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...

tree 树组件大数据卡顿问题优化

问题背景 项目中有用到树组件用来做文件目录&#xff0c;但是由于这个树组件的节点越来越多&#xff0c;导致页面在滚动这个树组件的时候浏览器就很容易卡死。这种问题基本上都是因为dom节点太多&#xff0c;导致的浏览器卡顿&#xff0c;这里很明显就需要用到虚拟列表的技术&…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档&#xff1a;https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java&#xff08;供 Kotlin 使用&#xff09; 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...

精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南

精益数据分析&#xff08;97/126&#xff09;&#xff1a;邮件营销与用户参与度的关键指标优化指南 在数字化营销时代&#xff0c;邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天&#xff0c;我们将深入解析邮件打开率、网站可用性、页面参与时…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制

在数字化浪潮席卷全球的今天&#xff0c;数据已成为企业和研究机构的核心资产。智能分布式爬虫作为高效的数据采集工具&#xff0c;在大规模数据获取中发挥着关键作用。然而&#xff0c;传统的数据处理流水线在面对复杂多变的网络环境和海量异构数据时&#xff0c;常出现数据质…...

Device Mapper 机制

Device Mapper 机制详解 Device Mapper&#xff08;简称 DM&#xff09;是 Linux 内核中的一套通用块设备映射框架&#xff0c;为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程&#xff0c;并配以详细的…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中&#xff0c;CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时&#xff0c;通常会导致应用响应缓慢&#xff0c;甚至服务不可用&#xff0c;严重影响用户体验和业务运行。因此&#xff0c;掌握一套科学有效的CPU飙高问题排查方法&…...