windows系统python开源项目环境配置1

目录

一、前言

二、安装git和anaconda和vscode

三、vscode的使用

[3.1 新建终端](#3.1 新建终端)

[3.2 vscode未设置开启的默认终端导致的问题](#3.2 vscode未设置开启的默认终端导致的问题)

解决方法:

[3.4 powershell和cmd和Git bash终端有什么区别呢?](#3.4 powershell和cmd和Git bash终端有什么区别呢?)

[3.5 PowerShell能运行shell脚本吗](#3.5 PowerShell能运行shell脚本吗)

[3.6 Git bash能运行shell 脚本吗](#3.6 Git bash能运行shell 脚本吗)

[3.7 三种终端的续行符差别](#3.7 三种终端的续行符差别)

四、构建conda环境

[4.1 创建基础conda环境](#4.1 创建基础conda环境)

[问题:创建环境的时候environment location并没有指向自己安装anaconda的位置](#问题:创建环境的时候environment location并没有指向自己安装anaconda的位置)

[4.2 更换pip源和conda源](#4.2 更换pip源和conda源)

[4.3 安装项目依赖](#4.3 安装项目依赖)

[4.4 运行主程序](#4.4 运行主程序)

[4.5 加载模型](#4.5 加载模型)


一、前言

你可能不会遇到我遇到的问题,如果你没有遇到,你就跳过那个部分就好了。

二、安装git和anaconda和vscode

搜一下官网,下载安装即可。

https://git-scm.com/
https://code.visualstudio.com/
https://www.anaconda.com/download

值得一提的是,安装过程中要有意识地勾选那些帮助你写入环境变量的选项。如果你没有勾选,那就需要你自己配置环境变量。比如说,如果你没有正确配置anaconda3的环境变量,你就会像我一样遇到各种conda命令的报错。

这里给出anaconda3配置环境变量的方法,即把下面的三个路径加入到环境变量:

你的安装路径\anaconda3

你的安装路径\anaconda3\Scripts

你的安装路径\anaconda3\Library\bin

具体而言:

此电脑右键属性------高级系统设置

环境变量------Path------编辑

新建------输入你的Git和anaconda3的三个路径(你可以通过找到Git Bash的图标然后右键打开文件所在位置这种方法去找它安装路径,建议你安装软件的时候全部安装在某个盘的application文件夹中,你就比较好找)------确定。如果你写错了,可以点击某个路径,然后点击右侧编辑进行修改。

三、vscode的使用

3.1 新建终端

首先我们要知道怎么用vscode新建一个终端。

然后我们要知道隐藏/打开终端的快捷键是ctrl+` (数字1左边的、Tab 上方那个反引号键)。

Ctrl + J 也能开关「面板」(含终端、输出、调试等),但它是整个面板一起收起来。

然后我们会发现,它打开的是powershell终端,然后如果你尝试使用conda激活环境(如果你不知道这什么意思可以先看第四节再回来),它会报错你没有权限,这是因为你在vscode里面打开这个powershell终端,它不是以管理员的权限打开的。

PS D:\zero_track\X-AnyLabeling> (D:\application\anaconda3\shell\condabin\conda-hook.ps1) ; (conda activate X-AnyLabeling_win_env) D:\application\anaconda3\shell\condabin\conda-hook.ps1 : 无法加载文件 D:\application\anaconda3\shell\condabin\conda-hook.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参 阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。 所在位置 行:1 字符: 2 + (D:\application\anaconda3\shell\condabin\conda-hook.ps1) ; (conda act ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : SecurityError: (:) [],PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess

原因一句话:PowerShell 默认执行策略是 Restricted ,禁止运行任何 .ps1 脚本,而 Conda 初始化恰恰要加载 conda-hook.ps1,于是被系统直接拦掉。

解决的方法就是:

1.vscode快捷方式右键-属性-高级-勾选以管理员身份运行

  1. 给 Conda 脚本单独加一次签名(官方推荐,永久生效),以管理员身份打开 PowerShell,执行:

    Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned

之后当前用户所有本地脚本都可运行,远程未签名仍被阻止;Conda 自带脚本已带数字签名,不再报错。

然后你再使用conda init 以及conda env list 以及conda activate xxx(conda环境名)之后就正常了,你能看到新增了一个(base)的标注,然后你激活某个环境也是成功的:

(base) PS D:\zero_track\X-AnyLabeling>conda activate X-AnyLabeling_win_env
(X-AnyLabeling_win_env) PS D:\zero_track\X-AnyLabeling>

3.2 vscode未设置开启的默认终端导致的问题

因为vscode默认打开的是powershell终端,但是实际上你会发现在vscode终端的右上方有个加号,加号旁边那个向下的箭头按了之后会看到其实有三种不同的终端可以选择。

那么实际上我们用PowerShell就够了,但是你还是得了解一下Git bash终端,你装了这个Git之后就会有这个终端,它的好处就在于:在Git bash终端里面实际上它是个linux终端,所以你可以用linux命令,虽然说我们是在用windows系统,但是保不齐有的时候就是想要用linux命令或者运行个shell脚本,这主要是因为shell脚本在linux系统里面广为使用,这适用于你不想使用python脚本而突然想用shell脚本的情况下,那在这种情况下,你可以新建一个Git bash终端来运行shell脚本或者使用linux命令。

但是我在右下方选择了X-AnyLabeling_win_env这个conda环境之后,

再新建终端,它报错了

(base) PS D:\zero_track\X-AnyLabeling> source D:/application/anaconda3/Scripts/activate X-AnyLabeling_win_env source : 无法将"source"项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。 所在位置 行:1 字符: 1 + source D:/application/anaconda3/Scripts/activate X-AnyLabeling_win_en ... + ~~~~~~ + CategoryInfo : ObjectNotFound: (source:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException

原因是我右下角选了conda环境之后,再新建终端它会默认帮你激活这个conda环境,但是它激活的命令是

复制代码
source ~/anaconda3/scripts/activate X-AnyLabeling_win_env

这条命令需要在git bash里面才可以用source,而我默认开启的终端是powershell。所以它是以为我开的是git bash,如果它知道我开的是powershell或者cmd终端的话,它的默认激活命令应该是

复制代码
conda activate X-AnyLabeling_win_env

解决方法:

文件 → 首选项 → 设置 → 右上角『打开设置(JSON)』(箭头的按钮)

增加下面的内容,别忘了"explorer.confirmDelete": false后面要加逗号

复制代码
{
    "explorer.confirmDelete": false,
    //默认打开Powershell
    "terminal.integrated.defaultProfile.windows": "PowerShell",   // 明确告诉 VS Code 用 PS
    "python.terminal.activateEnvironment": true                 // 保持自动激活(可选)

    //默认打开cmd终端
    //"terminal.integrated.defaultProfile.windows": "Command Prompt"

    //默认打开git bash终端
    // "terminal.integrated.profiles.windows": {
    //     "Git Bash": {
    //         // 路径按你实际安装位置写;64 位默认如下
    //         "path": "D:\\application\\Git\\git-bash.exe"
    //     }
    // },
    // "terminal.integrated.defaultProfile.windows": "Git Bash",
    // "python.defaultInterpreterPath": "d:\\application\\anaconda3"
}

然后你再重启一下终端,就自动帮你激活了conda环境,也没报错。

复制代码
(X-AnyLabeling_win_env) PS D:\zero_track\X-AnyLabeling>

上面也给出了设置默认打开cmd终端和默认打开git bash终端的代码,你可以通过ctrl+/ 对代码进行注释和取消注释的方式,设置你要默认打开的终端。

如果你目前没有碰到别的报错,那么选择powershell是不错的。但如果你碰到了没有管理员权限、自动激活报错之类的,同时解决又很麻烦,你可以试试用cmd可能不会有这些问题,但是cmd可能无法运行ls、cd这些linux命令,但是我觉得cmd真的挺好用的,我后来设置了cmd为默认启动终端,就它启动很快,而且也没这个那个报错的毛病。

如果你是linux的重度使用者,并且想运行shell脚本,那么选择git bash终端是不错的,但是缺点是:由于你在windows下复制文件路径**,** 你复制的路径每次都要改成linux的斜杠才能在git bash上运行,这会有点麻烦。

下面是打开git bash终端显示的:

复制代码
(base) 
Administrator@WIN-CE653V4LH9L MINGW64 /d/zero_track/X-AnyLabeling (main)
$ 

3.4 powershell和cmd和Git bash终端有什么区别呢?

| 维度 | CMD | PowerShell | Git Bash |
| 出身/设计目标 | DOS 继承,1993 年随 NT 提供,兼容 DOS 批处理 | 2006 年诞生的管理引擎,面向对象+远程管理 | MSYS2 衍生,给 Windows 提供 GNU/Linux 工具链 |
| 命令风格 | 纯文本,dir、copy、del | 面向对象,动词-名词 Get-Help、Copy-Item | POSIX shell,ls、cp、rm、grep、awk |
| 脚本能力 | 批处理:goto、%var%、call | 完整语言:函数、模块、类、异常、LINQ | Bash 4.x:数组、关联数组、进程替换、正则 |
| 软件生态 | 只能调用 exe,无包管理 | 7000+ 官方模块(Azure、VMware、K8s...) | 随 Git for Windows 自带 130+ Unix 工具,可接 pacman |
| 远程 & 云 | 无原生远程 | 原生 WinRM、SSH、REST、Graph API | 靠 openssh 客户端,可连 Linux,但无 Windows 管理接口 |
| 文件/注册表/证书/WMI | 只能 reg.exe、icacls 等外部命令 | 一键 dir \cert:\ 或 Get-ItemProperty HKLM: | 只能看 /c/ProgramData 这类挂载路径,无 Windows 专用 Provider |
| 字符编码 | 活动代码页(936/65001)容易乱码 | UTF-8 可设,兼容 BOM | 默认 UTF-8,Linux 项目无 BOM 烦恼 |
| 符号链接 | mklink 需管理员 | New-Item -ItemType SymbolicLink | ln -s 直接创建,与 Linux 行为一致 |
| 启动速度 | 最快(<100 ms) | 慢 2-3 倍(需加载 .NET) | 中等(MSYS2 运行时) |
| 跨平台 | 仅 Windows | PowerShell Core → Win/Linux/macOS | 仅 Windows(Git for Windows),Linux 自带真 Bash |

适用场景 老批处理、临时 ping/copy 系统运维、批量管理、云 DevOps 前端/算法项目,Makefile、shell 脚本、git 命令行

一句话总结

  • 要"最轻量"------CMD。

  • 要"管 Windows/云"------PowerShell。

  • 要"Linux 手感"------Git Bash(或上 WSL)。

3.5 PowerShell能运行shell脚本吗

能,但得分清"哪种 shell":

  1. POSIX shell(#!/bin/bash 那种 .sh 文件)

    PowerShell 原生语法跟 bash 完全不同,看见 if [ ... ]grepawk 会直接报错。

    想跑这类脚本只有三条路:

    • 用 Git Bash / MSYS2 / WSL 去执行;

    • 在 PowerShell 里调用真正的 bash:

      powershell

      复制代码
      bash your-script.sh
    • 把脚本内容重写成 .ps1 格式(对象管道、Cmdlet 那一套)。

  2. PowerShell 自己的"shell 脚本"------*.ps1

    这才是 PowerShell 的"亲儿子"。写起来长这样:

    powershell

    复制代码
    # file: backup.ps1
    param($Source, $Dest)
    Copy-Item $Source $Dest -Recurse -Force

    运行:
    powershell

    复制代码
    Set-ExecutionPolicy RemoteSigned -scope CurrentUser   # 只需一次
    .\backup.ps1 -Source c:\data -Dest d:\backup
  3. 混合场景

    可以在一个 .ps1 里随时调用外部 exe,包括 bashgrepgit 等,但数据交换靠文本或文件,不像 PowerShell 内部那样直接传对象。

结论

  • "bash 脚本"PowerShell 看不懂,要么交给 bash 去跑,要么重写。

  • 真正能在 PowerShell 里"裸跑"的脚本只能是 .ps1,语法遵循 PowerShell 规则。

3.6 Git bash能运行shell 脚本吗

能,而且这就是 Git Bash 的"主场"。

  1. 原生 POSIX 解释器

    Git Bash 自带 bash 4.x(msys2 编译版),看到 #!/bin/bash#!/bin/sh 会直接调自己目录下的 /bin/bash 去执行,语法、变量、数组、进程替换、正则、管道完全跟 Linux 一样。

  2. 运行方式

    • 给可执行权限后直跑(最正宗)

      bash

      复制代码
      chmod +x deploy.sh
      ./deploy.sh
    • 手动指定解释器

      bash

      复制代码
      bash deploy.sh
    • 脚本里写对 shebang 即可,Windows 资源管理器双击也能启动(会闪一个 mintty 窗口执行完自动关)。

  3. 路径/换行注意点

    • 脚本里写 /c/Users/foo 而不是 C:\Users\foo

    • 文件必须是 LF 换行,CRLF 会报 syntax error unexpected token

    • 如果脚本在 NTFS 分区,chmod 其实只是模拟,不影响运行。

  4. 不能做的事

    • 无法直接调用 Windows 专用 COM/WMI/注册表接口(需要 powershell 或 reg.exe)。

    • 没有 Linux 的 /proc/sys,部分依赖内核的指令会失效。

结论

只要脚本写的是 POSIX shell,Git Bash 就能 100% 运行;它是 Windows 上"最 Linux 味"的 Shell 环境。

3.7 三种终端的续行符差别

续行符(一行没打完,手动折到下一行的符号)

  • CMD^ (ctrl+6)

  • Git Bash\

  • PowerShell`(反引号,键盘左上角数字 1 左边那个字符)

四、构建conda环境

正如每个项目是一个文件夹一样,为了让每个项目都有各自独立的环境,于是每个项目都要有一个独立的文件夹用于存储这个项目的环境(依赖库),而这个独立的环境就是conda环境,本质上一个conda环境就是一个文件夹。

我的anaconda安装位置是D:\application\anaconda3\,所以conda环境都放在

D:\application\anaconda3\envs

这个路径下,每个文件夹就是一个conda环境。

4.1 创建基础conda环境

用下面的命令就可以创建conda环境,python版本一般你可以选择3.8, 3.10, 3.11, 3.12这些比较稳定的版本,那截止2025年末我看python最新版本是3.14,一般都不会去装最新的,容易不兼容。你可以把你要安装的python开源项目名称告诉AI然后问它推荐安装什么版本的python,一般来说你在Github项目的Readme里面也会找到作者说支持什么版本的python(可能没说,可能比较难找),但通常来说比较老的项目可能你装3.8比较合适,比较新的项目装3.10或者3.12比较合适,新版本的python在一定程度上是向下兼容的。

同时你要注意,如果你装比较老版本的python,那么相应很多库也不能去装最新的,会不兼容。因此就2025年来说,如果你是可联网的环境推荐就是装比最新版本前面的几个版本,比如3.12,如果你是不可联网的环境,那么选择3.10可能比较合适,因为不可联网的环境,通常你的硬件驱动比较落后,所以你要选择更加落后的几个版本。

conda create -n 你的环境名字 python==Python版本号
(base) D:\zero_track>conda create -n python312 python==3.12

Channels:

  • defaults

Platform: win-64

Collecting package metadata (repodata.json): done

Solving environment: done

Package Plan

environment location: C:\Users\Administrator\.conda\envs\python312

added / updated specs:

  • python==3.12

Proceed ([y]/n)? n

问题:创建环境的时候environment location并没有指向自己安装anaconda的位置

问题现象:conda create -n python312 python==3.12的时候,environment location并没有指向你安装anaconda的位置

解决方法:

(base) D:\zero_track>conda config --prepend envs_dirs D:\application\anaconda3\envs
(base) D:\zero_track>conda create -n python312 python==3.12

Channels:

  • defaults

Platform: win-64

Collecting package metadata (repodata.json): done

Solving environment: done

Package Plan

environment location: D:\application\anaconda3\envs\python312

added / updated specs:

  • python==3.12

Proceed ([y]/n)? y

安装完成之后,在下面这里就能找到它:

D:\application\anaconda3\envs\python312

之后如果你的终端没有进入base环境,你可能需要:

conda init

下面这个(base)就表示你当前在base环境

(base) D:\zero_track>

如果你需要切换到某个环境,你可以先查看一下当前有哪些环境。

(base) D:\zero_track>conda env list

conda environments:

base * D:\application\anaconda3

python312 D:\application\anaconda3\envs\python312

如果你要切换到某个环境,可以用

conda activate python312

如果你要退出当前激活的环境,你可以用

conda deactivate

实际上除了base环境是在D:\application\anaconda3,你自己创建的每个环境只不过是D:\application\anaconda3\envs\ 里面的一个文件夹而已,所以如果你要删了这个环境你可以直接去D:\application\anaconda3\envs\ 把python312那个文件夹整个删除了。也可以用下面的命令

(python312) D:\zero_track> conda deactivate # 回到 base环境

(base) D:\zero_track> conda remove -n python312 --all

接下来的操作是个人习惯,你可以不这么做。我会先把python312压缩到python312.zip,然后再去pytorch官网下载torch、torchvision、torchaudio的whl。这样做的目的就是下次创建一个新的环境就只需要解压python312.zip然后改一下文件夹名字,然后pip install torch==xxx.whl即可,无需联网。

去把D:\application\anaconda3\envs\python312 压缩到python312.zip,如果没有压缩软件的话可以去这里下载,选择64-bit x64的。

https://www.7-zip.org/

一般创建完某个版本python的conda环境,就是要装torch那些了。你可以直接去torch官网

https://pytorch.org/

往下拉找到下面这个地方,首先要知道你的cuda是什么版本,终端输入

nvidia-smi

输出的右上角就能看到你自己的CUDA版本,比如CUDA Version: 12.6

选好后,复制下面的命令就可以

不过我一般都是去下载whl的,以避免每次创建一个新的conda环境都要再次联网安装torch。

所以我是去:

https://pytorch.org/get-started/previous-versions/

选择一个你想安装的版本,比如你想安装torch2.9,你就能找到下面的内容。

ROCM 6.4 (Linux only) pip install torch==2.9.0 torchvision==0.24.0 torchaudio==2.9.0 --index-url https://download.pytorch.org/whl/rocm6.4

CUDA 12.6 pip install torch==2.9.0 torchvision==0.24.0 torchaudio==2.9.0 --index-url https://download.pytorch.org/whl/cu126

CUDA 12.8 pip install torch==2.9.0 torchvision==0.24.0 torchaudio==2.9.0 --index-url https://download.pytorch.org/whl/cu128

CUDA 13.0 pip install torch==2.9.0 torchvision==0.24.0 torchaudio==2.9.0 --index-url https://download.pytorch.org/whl/cu130

CPU only pip install torch==2.9.0 torchvision==0.24.0 torchaudio==2.9.0 --index-url https://download.pytorch.org/whl/cpu

然后你知道这个版本对应关系之后,你就可以去下面这个网址的torch、torchvison、torchaudio手动去找whl来下载,找的方式就是关注torch版本、CUDA版本、python版本、系统

https://download.pytorch.org/whl/cu126

然后你就找到要下载下面的三个,我是下载到D:\zero_track

torch-2.9.0+cu126-cp312-cp312-win_amd64.whl

torchvision-0.24.0+cu126-cp312-cp312-win_amd64.whl

torchaudio-2.9.0+cu126-cp312-cp312-win_amd64.whl

那么以后你要创建一个新的有python、有torch的环境就无需联网了,你只需要解压D:\application\anaconda3\envs\python312.zip到python312文件夹,然后将python312文件夹改个名字,比如改成X-AnyLabeling_win_env,然后激活这个环境,并在这个环境下安装torch等即可(pip install torchxxxx, Tab补全命令即可)。

为什么要这么做呢?因为你以后每次下载一个新的开源项目的时候,大概率它们的基础环境是一致的,比如可能都是使用python3.12+torch-xxx系列,而你不想把每个项目都用同一个conda环境运行,但是每个项目构建不同的conda环境又每次都要重新建python和torch这些相同的操作,这个做法就是为了节约时间。

不过,如果多个项目它们的依赖库比较接近的情况下,且混着用同一个conda环境是不冲突的话, 你是不需要再新建一个conda环境的。上面这个操作是假设你有多个不同的项目且依赖库都很不相同的情况下,你为了避免多个项目环境冲突,且避免一个conda环境装多个项目依赖库导致加载很慢的问题,在这种情况下方便你快速复制多个基础conda环境的手段。

D:\> cd D:\zero_track

D:\zero_track> conda env list

conda environments:

base D:\application\anaconda3

X-AnyLabeling_win_env D:\application\anaconda3\envs\X-AnyLabeling_win_env

D:\zero_track> conda activate X-AnyLabeling_win_env

(X-AnyLabeling_win_env) D:\zero_track>pip install "torch-2.9.0+cu126-cp312-cp312-win_amd64.whl"

(X-AnyLabeling_win_env) D:\zero_track>pip install "torchvision-0.24.0+cu126-cp312-cp312-win_amd64.whl"

(X-AnyLabeling_win_env) D:\zero_track>pip install "torchaudio-2.9.0+cu126-cp312-cp312-win_amd64.whl"

4.2 更换pip源和conda源

如果不更换pip源和conda源为国内镜像,就会去默认的国外官方源下载依赖,这种下载速度在国内是很慢的。

一、pip

  1. 查看当前源

    ① 临时看:

    bash

    复制代码
    pip config list

    ② 看具体文件位置:
    bash

    复制代码
    pip config debug

    会列出 globalusersite 三级配置文件路径,以及当前生效的 index-url

    (X-AnyLabeling_win_env) PS D:\zero_track\X-AnyLabeling> pip config list
    (X-AnyLabeling_win_env) PS D:\zero_track\X-AnyLabeling> pip config debug
    env_var:
    env:
    global:
    C:\ProgramData\pip\pip.ini, exists: False
    site:
    D:\application\anaconda3\envs\X-AnyLabeling_win_env\pip.ini, exists: False
    user:
    C:\Users\Administrator\pip\pip.ini, exists: False
    C:\Users\Administrator\AppData\Roaming\pip\pip.ini, exists: False

上面这个输出是什么意思?

pip 在 Windows 上按「环境变量 → 全局 → 用户 → 虚拟环境」四级顺序读取配置;

你的四条路径全部 exists: False,说明现在没有任何一级配置文件 ,pip 正在用官方默认源 https://pypi.org/simple/

也就是说:

  1. 当前源就是官方源(速度最慢)。

  2. 你随时可以 pip config set ... 新建一个用户级文件,把镜像写进去,不会和任何旧设置冲突。

  3. 换国内镜像(清华示例,其他把域名换掉即可)

    ① 仅对当前用户生效(推荐)

    bash

    复制代码
    pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

    (X-AnyLabeling_win_env) PS D:\zero_track\X-AnyLabeling> pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
    Writing to C:\Users\Administrator\AppData\Roaming\pip\pip.ini

我们打开上面这个pip.ini看看:

global

index-url = https://pypi.tuna.tsinghua.edu.cn/simple

  1. ② 信任镜像(避免 https 证书警告)

    bash

    复制代码
    pip config set install.trusted-host pypi.tuna.tsinghua.edu.cn

    (X-AnyLabeling_win_env) PS D:\zero_track\X-AnyLabeling> pip config set install.trusted-host pypi.tuna.tsinghua.edu.cn

    Writing to C:\Users\Administrator\AppData\Roaming\pip\pip.ini

我们打开上面这个pip.ini看看:

global

index-url = https://pypi.tuna.tsinghua.edu.cn/simple

install

trusted-host = pypi.tuna.tsinghua.edu.cn

上面的pip config set 改动的是哪个文件呢?可以通过pip config debug知道改动的实际上是C:\Users\Administrator\AppData\Roaming\pip\pip.ini这个文件,你知道它改动哪个文件,其实你可以直接自己手动去改那个文件,而不需要通过上面那些命令。

  1. ③ 临时用一次(一般不做这个操作)

    bash

    复制代码
    pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy
  2. 常用镜像地址

    清华:https://pypi.tuna.tsinghua.edu.cn/simple

    阿里:https://mirrors.aliyun.com/pypi/simple/

    中科大:https://pypi.mirrors.ustc.edu.cn/simple


二、conda

  1. 查看当前源

    bash

    复制代码
    conda config --show-sources 

    会打印出 .condarc 里排好序的通道,排最上的优先级最高。

(X-AnyLabeling_win_env) PS D:\zero_track\X-AnyLabeling> conda config --show channels

channels:

  • defaults
  1. 备份官方默认(可选)

    bash

    复制代码
    conda config --add channels defaults
  2. 换成清华镜像(Windows 路径自动写进 C:\Users\<用户名>\.condarc

    ① 先清掉旧列表(想保留可跳过)

    bash

    复制代码
    conda config --remove-key channels

    ② 依次添加
    bash

    复制代码
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch  # 如用 pytorch

    上面的conda config --add改动的是哪个文件呢?可以通过conda config --show-sources 知道改动的实际上是C:\Users\Administrator\.condarc这个文件,你知道它改动哪个文件,其实你可以直接自己手动去改那个文件,而不需要通过上面那些命令。

复制代码
   (X-AnyLabeling_win_env) PS D:\zero_track\X-AnyLabeling> conda config --show-sources 
   ==> C:\Users\Administrator\.condarc <==
   envs_dirs:
     - D:\application\anaconda3\envs
   channels:
     - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
     - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
     - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
     - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
     - defaults
   show_channel_urls: True

   ==> envvars <==
   allow_softlinks: False

③ 设为 https 并显示通道名
bash

复制代码
   conda config --set show_channel_urls yes
  1. 一键回退官方

  2. bash

    复制代码
    conda config --remove-key channels
    conda config --add channels defaults

三、验证

bash

复制代码
pip install numpy -vv        # 观察下载域名是否已变成镜像
conda install numpy -vv      # 同理

4.3 安装项目依赖

安装项目依赖要去看项目的Readme,但通常来说有一句是常用的:

(X-AnyLabeling_win_env) pip install -r requirements.txt

但是不能每次就用上面那句就完事。具体情况具体分析,还是以项目的Readme为准,通常有些项目会有比较详细的安装教程,详细到会告诉你怎么创建conda环境,这个你可以跳过不看了,因为2.1已经介绍了怎么快速整一个有python有pytorch的conda环境。比方说:

https://github.com/CVHub520/X-AnyLabeling/blob/main/docs/en/get_started.md

复制代码
# CPU Environment [Windows/Linux/macOS]
conda create --name x-anylabeling-cpu python=3.10 -y
conda activate x-anylabeling-cpu

# CUDA 11.x Environment [Windows/Linux]
conda create --name x-anylabeling-cu11 python=3.11 -y
conda activate x-anylabeling-cu11

# CUDA 12.x Environment [Windows/Linux]
conda create --name x-anylabeling-cu12 python=3.12 -y
conda activate x-anylabeling-cu12

安装教程告诉你了要安装python3.10到3.12版本的,而且告诉你了CUDA12.x对应安装python3.12。2.1节我们已经做过这一步了,就继续看下面

1.2.2 Git Clone

Step a. Clone the repository.

复制代码
git clone https://github.com/CVHub520/X-AnyLabeling.git
cd X-AnyLabeling

After cloning the repository, you can choose to install the dependencies in either developer mode or regular mode according to your needs.

Step b.1. Developer Mode

复制代码
# CPU [Windows/Linux/macOS]
pip install -e .[cpu]

# CUDA 12.x is the default GPU option [Windows/Linux]
pip install -e .[gpu]

# CUDA 11.x [Windows/Linux]
pip install -e .[gpu-cu11]

我们看这个教程,实际上就是指导我们,对于CUDA12.x的运行下面的命令:

(X-AnyLabeling_win_env) D:\zero_track> cd X-AnyLabeling

(X-AnyLabeling_win_env) D:\zero_track\X-AnyLabeling> pip install -e .[gpu]

其实pip install -e .这个命令很常见,它就是源代码安装的常见命令,通常这个命令会把pip install -r requirements.txt包含进去了,这就是为什么你没有去pip install -r requirements.txt它也安装了依赖。而且对于这个项目来说,你确实不能直接pip install -r requirements.txt,因为作者对不同情况搞了不同的依赖,是需要根据实际情况选择的。

Dependency File Operating System Runtime Compilable
requirements.txt Windows/Linux CPU No
requirements-dev.txt Windows/Linux CPU Yes
requirements-gpu.txt Windows/Linux GPU No
requirements-gpu-dev.txt Windows/Linux GPU Yes
requirements-macos.txt MacOS CPU No
requirements-macos-dev.txt MacOS CPU Yes

4.4 运行主程序

最后我们就可以打开主程序运行了

(X-AnyLabeling_win_env) D:\zero_track\X-AnyLabeling> python .\anylabeling\app.py

顺便说一下,对于文件名字比较长的情况下,你只需要输文件的前几个字母之后你就可以用Tab补全命令。同时你要确认一下这个(X-AnyLabeling_win_env)是存在的,表示你当前在这个conda环境中。千万不要看到在base环境或者没进入conda环境搁这运行主程序。

我用cmd终端的话,在打开app.py的情况下,点击右侧三角形旁边的下拉箭头的Run Python File,可以直接运行

它运行的命令是这个:

(X-AnyLabeling_win_env) D:\zero_track\X-AnyLabeling>D:\application\anaconda3\envs\X-AnyLabeling_win_env\python.exe d:/zero_track/X-AnyLabeling/anylabeling/app.py

用powershell的话就很容易出问题,目前我还是倾向于用cmd终端。

4.5 加载模型

选择语言------中文,然后重新启动软件。然后点击左侧的AI按钮,然后选择SAM2 Video(Tiny)

然后就报错了

2026-01-11 17:42:52,430 | ERROR | model_manager:_load_model:1102 - ❌ Error in loading model: segment_anything_2_video with error: SegmentAnything2Video model will not be available. Please install related packages and try again.

这种情况我们先去看看安装教程

https://github.com/CVHub520/X-AnyLabeling/blob/main/docs/en/get_started.md

发现不在上面这个安装教程里,应该是在SAM2跟踪的教程里面,我们找到上面这个文件同级目录下有

https://github.com/CVHub520/X-AnyLabeling/blob/main/docs/en/user_guide.md#85-multi-object-tracking

然后我们发现有这个东西:

8.8 Interactive Video Object Segmentation (IVOS)

我们进入SAM2-Video

https://github.com/CVHub520/X-AnyLabeling/blob/main/examples/interactive_video_object_segmentation/sam2/README.md

然后安装教程里面提示我们安装他的sam2

复制代码
(X-AnyLabeling_win_env) git clone https://github.com/CVHub520/segment-anything-2
(X-AnyLabeling_win_env) cd segment-anything-2
(X-AnyLabeling_win_env) pip install -e .
相关推荐
shangjian0072 小时前
AI大模型-核心概念-深度学习
人工智能·深度学习
PeterClerk2 小时前
RAG 评估入门:Recall@k、MRR、nDCG、Faithfulness
人工智能·深度学习·机器学习·语言模型·自然语言处理
Generalzy2 小时前
langchain deepagent框架
人工智能·python·langchain
栈与堆2 小时前
LeetCode 19 - 删除链表的倒数第N个节点
java·开发语言·数据结构·python·算法·leetcode·链表
人工智能培训2 小时前
10分钟了解向量数据库(4)
人工智能·机器学习·数据挖掘·深度学习入门·深度学习证书·ai培训证书·ai工程师证书
无忧智库2 小时前
从“数据孤岛”到“城市大脑”:深度拆解某智慧城市“十五五”数字底座建设蓝图
人工智能·智慧城市
Rui_Freely2 小时前
Vins-Fusion之 SFM准备篇(十二)
人工智能·算法·计算机视觉
hugerat2 小时前
在AI的帮助下,用C++构造微型http server
linux·c++·人工智能·http·嵌入式·嵌入式linux
AI街潜水的八角2 小时前
深度学习洪水分割系统2:含训练测试代码和数据集
人工智能·深度学习