库的深度定制

  1. 在项目目录之下新建一个文件夹'third_party'

  2. 把库文件夹给放进去

  3. 为了防止打架,优先导入自己的

import sys
import os

# 获取当前路径的稳健方法
try:
    # 尝试获取脚本所在目录
    current_dir = os.path.dirname(os.path.abspath(__file__))
except NameError:
    # 如果在 Jupyter/IPython 中,获取当前工作目录
    current_dir = os.getcwd()

# 确保指向的是包含 transformers 的那个父目录(比如 third_party)
lib_path = os.path.join(current_dir, 'third_party')

# 暴力清理缓存,防止 site-packages 抢跑
if 'transformers' in sys.modules:
    del sys.modules['transformers']
    for key in list(sys.modules.keys()):
        if key.startswith('transformers.'):
            del sys.modules[key]

# 插入到最前面
if lib_path not in sys.path:
    sys.path.insert(0, lib_path)

import transformers
print(f"Transformers 现在的加载路径: {transformers.__file__}")
  1. ctrl没有更新
    当你按住 Ctrl 点击时,IDE 并不运行你的代码,它只是根据自己的配置文件在找路径。它默认会优先认准你虚拟环境里的 site-packages。

要让 IDE “长眼”认出你的本地库,你需要手动给它指路:

  1. 如果你使用的是 VS Code
    VS Code 使用 Pylance 进行代码分析。你需要在项目根目录下的 .vscode/settings.json(如果没有就新建一个)中添加本地路径:
{
    "python.analysis.extraPaths": [
        "./third_party"
    ],
    "python.autoComplete.extraPaths": [
        "./third_party"
    ]
}

操作完后: 建议点击右下角的 Python 版本号,选择 Restart Language Server,或者干脆重启 VS Code。

posted @ 2026-03-02 18:52  ylifs  阅读(7)  评论(0)    收藏  举报