新闻详情

新闻详情

首页 / 资讯中心 / 详情

train-sentence-transformers - hardware_guide

发布时间:2026/9/29 9:01:48来源:尧图网络
train-sentence-transformers - hardware_guide
硬件指南训练嵌入模型通常是内存受限而不是计算受限。如果遇到 OOM按此顺序尝试减小per_device_train_batch_size。提高gradient_accumulation_steps以保持回归损失的有效批次大小。对于 MNRL通过梯度累积得到的有效批次不等价——见第 3 点。启用gradient_checkpointingTrue。慢约 30%激活内存减少约 40%。与Cached*损失不兼容。切换到Cached*损失CachedMultipleNegativesRankingLoss(model, mini_batch_size32)— 以小批量前向传播在整个批次上累积对比损失。可以在 24GB GPU 上模拟 1024 的批次大小。CachedSpladeLoss(model, loss..., mini_batch_size16)— 对稀疏使用同样的技巧。CachedGISTEmbedLoss(model, guide_model, mini_batch_size32)— GIST 变体。对 1B 的解码器模型启用 PEFT / LoRA。LoraConfig(r64, lora_alpha128, task_typeFEATURE_EXTRACTION)。参见../scripts/train_sentence_transformer_with_lora_example.pydocstring 涵盖何时使用、超参数、QLoRA、共享。转向多 GPU。见下文。缩短序列。如果截断到 128 对你的任务已经足够请在 transformer 模块上设置max_seq_length。多 GPUsentence-transformers在底层使用accelerate。分布式训练无需修改代码即可工作。数据并行DDP启动accelerate launch train.py# 或显式accelerate launch--multi_gpu--num_processes4train.pyper_device_train_batch_size保持为每 GPU 的值。有效批次大小线性扩展。MNRL 的批内负样本保持为每设备而非全局除非你向支持它的损失函数传入gather_across_devicesTrueMultipleNegativesRankingLoss、CachedMultipleNegativesRankingLoss、对称变体、GISTEmbedLoss、CachedGISTEmbedLoss、SparseMultipleNegativesRankingLoss。FSDP / DeepSpeed对于 3B 的模型使用accelerate config启用 FSDP 或 DeepSpeed ZeRO。两者都受支持——sentence-transformers不需要任何代码更改只需要启动配置。accelerate config# 交互式选择 FSDP 或 DeepSpeedaccelerate launch train.py使用 FSDP 全分片7B 模型可以在 4×24GB GPU 上训练而其中任何单个 GPU 都会 OOM。FSDP 注意事项来自分布式训练文档截至编写时评估器无法在 FSDP 下运行—— 评估钩子调用model.encode()而 FSDP 包装的模块在训练中途无法处理它。改为计划在训练后以单 GPU 加载最终检查点进行评估或者如果你需要训练中评估使用 DDP 训练。必须指定层包装例如fsdp_config{transformer_layer_cls_to_wrap: BertLayer}为你的模型替换正确的层类BertLayer、LlamaDecoderLayer、Qwen2DecoderLayer等。不这样做FSDP 分片可能静默出错。对适合单 GPU 的模型比 DDP 慢—— 只有在你确实需要内存节省时才使用 FSDP。DeepSpeed ZeRO-2/3 是一个替代方案有自己的配置在accelerate config层面工作方式相同。对比损失的有效批次大小对于MultipleNegativesRankingLoss及其变体批次大小是质量旋钮而不仅仅是速度旋钮。更大的批次 更多的批内负样本 更丰富的梯度。每个锚点的有效批内负样本池设置每个锚点的批内负样本数单 GPU批次 64634× DDP每设备批次 64默认仅本地 63使用MultipleNegativesRankingLoss(model, gather_across_devicesTrue)为 255单 GPUCachedMNRLmini_batch 32批次 2562554× DDPCachedMNRL每设备 256本地 255使用gather_across_devicesTrue为 1023对于大型语料库检索朝 512 有效负样本推进。对于小而干净的数据集STS64 就足够了。按 GPU 的精度选择GPU 代推荐T4、V100、GTX 1xxx、RTX 2xxxfp16TrueRTX 3xxx、A10G、A100、L4bf16TrueRTX 4xxx、H100、B200bf16True或通过特定内核在 H100 上用 fp8——不是默认Apple M 系列 / ROCmMPS/ROCm 支持不稳定fp16或fp32最可靠bf16 数值上更稳定在可用时几乎总是首选。Hugging Face Jobs 类型指南Hugging Face Jobs 需要 Pro/Team/Enterprise 计划。价格是近似值可能变动——参见 Jobs 定价页面。类型内存典型用途估计 $/小时cpu-basic~2 GB数据准备、验证、困难负样本挖掘小$0.10cpu-upgrade~4 GB同上稍大$0.10t4-small16 GB演示、小批次的 MiniLM/DistilBERT~$0.75t4-medium16 GB较大批次的 MiniLM / DistilBERT~$1.50l4x124 GBBERT-base、MPNet、ModernBERT-base~$2.50a10g-small24 GBBERT-base 到 BERT-large~$3.50a10g-large48 GBModernBERT-large、Qwen3-0.6B~$5.00a10g-largex296 GB2× 48GB中型多 GPU~$10a100-large80 GB大模型或大对比批次~$10–12h10080 GB最大的单 GPU~$12h100x8640 GBLLM 规模分布式~$96按基座模型的默认值MiniLM / DistilBERT -t4-smallBERT-base / MPNet / ModernBERT-base -a10g-small或l4x1BERT-large / ModernBERT-large -a10g-largeQwen3-0.6B 解码器基座 -a10g-large带 LoRA 的 1B 解码器基座 -a10g-large或a100-large始终从一个比你认为需要的小一档的类型开始在 Jobs 上 OOM 很便宜失败运行 $0.50–$5。第一次尝试时配置不足比配置过度更好。在预算timeout时为模型加载、检查点保存和 Hub 推送增加20–30% 缓冲。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

揭秘夸克健康大模型:AI如何用“慢思考”拉升医学推理上限——TaoToken统一Key接入与config.toml配置实战 2026/9/29 9:01:45

揭秘夸克健康大模型:AI如何用“慢思考”拉升医学推理上限——TaoToken统一Key接入与config.toml配置实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Android Studio 接入 OpenClaw:TaoToken 统一 Key 配置与验证 2026/9/29 9:01:45

Android Studio 接入 OpenClaw:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Postman批量执行接口测试:集合、Runner与数据驱动实战指南 2026/9/29 9:01:45

Postman批量执行接口测试:集合、Runner与数据驱动实战指南

做接口测试的时候,单个请求单个请求去点只是入门。真正到了提测、回归、造数据或者要验证一个完整业务链路时,Postman批量执行接口测试才是每天用得最多的功能。简单说,批量执行就是把一批接口请求按顺序自动跑起来,动态传参、自动…

阅读更多 →
Intel ME/AMT彻底停用:系统层可逆禁用与固件HAP位实战 2026/9/29 9:01:37

Intel ME/AMT彻底停用:系统层可逆禁用与固件HAP位实战

第一次在设备管理器里看到那个叫“Intel(R) Management Engine Interface”的条目,很多人会本能地以为它只是某个可有可无的外设驱动,右键停用,然后觉得事情已经办完了。等到回头用 HWiNFO 一看,英特尔管理引擎组件的固件照样在跑…

阅读更多 →
DeepSeek高效手册:五大提问法则与自动化工作流实战 2026/9/29 9:01:31

DeepSeek高效手册:五大提问法则与自动化工作流实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
JavaWeb实战:从Servlet到线上稳定运行的图书系统 2026/9/29 9:01:31

JavaWeb实战:从Servlet到线上稳定运行的图书系统

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉