news 2026/2/28 13:21:30

模型加载时trust_remote_code 的作用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
模型加载时trust_remote_code 的作用

问题

在模型加载的时候,我们会观察到 trust_remote_code这个参数

model = AutoModelForCausalLM.from_pretrained(model_path, device_map="auto", torch_dtype=torch.bfloat16, trust_remote_code=True)

从名字上看,就是相信远程代码.如果我们的模型是完全下载到本地的,哪里来的远程代码呢?

解释

我们使用Transformer加载模型的时候,一般下载的文件只有权重文件(.bin、.safetensors)、配置(config.json)、tokenizer.json 等静态资源,不一定列出对应的自定义 modeling_*.py 源码文件
py文件用于指定模型是怎么运行的,如果是Transformer框架里面自带的类,就不需要另外下载远程py文件,

例子

一个典型例子就是你现在看的 Qwen3-30B-A3B 这类模型,它在仓库里自带了自定义的 Python 源码(例如自定义的 Qwen3MoeForCausalLM 模型类、注意力层、MoE 结构等),因此必须依赖 trust_remote_code=True 才能正常加载这些类。
但是我们通过浏览https://modelscope.cn/models/Qwen/Qwen3-30B-A3B/files
也没有发现对应的py文件,那是因为py文件并没有通过modelscope开放.

我们怎么看到py文件??

想看源码可以怎么做
在本地先用:

AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-30B-A3B", trust_remote_code=True)

载入一次模型。

载入完成后,到本机的缓存目录下(如 Hugging Face 对应

~/.cache/huggingface/modules/transformers_modules/

,ModelScope 也有类似目录)去找包含 qwen3_moe、Qwen3MoeForCausalLM 等名字的 .py 文件,就能看到真正的实现。

在无网络机器部署

在没有外网的环境部署这类需要下载远程 Python 代码的模型,思路是:

在有网环境:
用 trust_remote_code=True 正常 from_pretrained 一次,把模型、tokenizer 和远程代码都拉进本机缓存。
然后用 save_pretrained()(或直接 git clone 模型仓库)把权重、配置和代码保存到你自己的目录或镜像仓库里。

from transformers import AutoModelForCausalLM, AutoTokenizer model_id = "Qwen/Qwen3-30B-A3B" # 也可以是 modelscope 对应的 id tok = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True) model = AutoModelForCausalLM.from_pretrained(model_id, trust_remote_code=True) save_dir = "./qwen3-30b-a3b-offline" tok.save_pretrained(save_dir) model.save_pretrained(save_dir)

在无网环境:
拷贝这个目录到离线机器。
用 from_pretrained(“本地路径”, trust_remote_code=True, local_files_only=True) 这样的方式加载,只从本地读文件,不再访问外网。

from transformers import AutoModelForCausalLM, AutoTokenizer local_dir = "/path/to/qwen3-30b-a3b-offline" tok = AutoTokenizer.from_pretrained( local_dir, trust_remote_code=True, local_files_only=True, ) model = AutoModelForCausalLM.from_pretrained( local_dir, trust_remote_code=True, local_files_only=True, )

local_files_only=True 确保完全离线,如果少文件会直接报错而不是悄悄访问外网。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/28 4:42:53

操作系统核心考点与解题模板全解析

操作系统核心考点解析:模块一进程管理、同步互斥与死锁本模块涵盖操作系统中最核心的逻辑部分,侧重于理解进程行为及处理并发冲突。1. 进程状态转换 (State Transitions)理解进程状态的“变迁逻辑”是解题的关键。转换路径触发原因注意点就绪 → 运行进程…

作者头像 李华
网站建设 2026/2/20 13:39:39

2025 四款 AI 平台推荐,谁最高效

2025年,AI应用落地需求持续爆发。开源平台以其灵活性、可控性和低成本,成为众多开发者与企业的首选。面对琳琅满目的工具,如何根据自身需求做出高效选择?本文将从功能完整性、易用性、扩展性、社区生态、商用支持五个核心维度&…

作者头像 李华
网站建设 2026/2/27 22:58:24

基于SpringBoot+Vue的泰山文化推广平台毕业设计源码

博主介绍:✌ 专注于Java,python,✌关注✌私信我✌具体的问题,我会尽力帮助你。一、研究目的本研究旨在构建一个基于SpringBootVue的泰山文化推广平台,以实现泰山文化的数字化传播与推广。具体研究目的如下:提高泰山文化知名度&…

作者头像 李华
网站建设 2026/2/24 22:59:53

AI CRM如何让你的销售流程自己跑起来,用AI激活销售漏斗

销售漏斗是每个销售团队都熟悉的概念,但现实中它常常只是一个静态的图表或汇报工具——线索数字被机械地填入不同阶段,转化瓶颈隐藏在阶段之间,成功与否过度依赖销售个人的经验和状态。 一个真正“活起来”的销售漏斗,应当像一个有…

作者头像 李华
网站建设 2026/2/28 3:25:23

第三章 遗传物质的分子基础

第四章孟德尔遗传第五章连锁遗传和性连锁第六章染色体变异第七章细菌和病毒的遗传第八章基因的表达与调控第九章基因工程和基因组学第十章基因突变第十一章细胞质遗传第十二章遗传与发育第十三章数量性状遗传第十四章群体遗传与进化

作者头像 李华
网站建设 2026/2/27 18:45:29

真实客户咨询 | Docusign 如何为电子签名提供可靠的法律保护?

了解企业如何借助 Docusign 确保电子签名的合法性、完整性与合规性。 电子签名早已不是“能不能用”的问题,而是“用得是否放心”。在澳大利亚、美国、加拿大以及欧盟和英国等地区,电子签名已经通过立法获得认可,成为企业日常业务中不可或缺的…

作者头像 李华