Что делать если нужно поставить какую-то Python-библиотеку а root-прав нет? То есть в систему библиотеку никак и ничего не поставить.
Есть как минимум два способа это решить правильно!
🔸 Сделать виртуальное окружение и ставить там что угодно.
Это позволит создать полностью независимое исполняемое окружение для ваших приложений.
Все библиотеки будут храниться в домашней директории юзера а значит доступ на запись имеется.
Создать очень просто:
python3 -m venv ~/venvs/myenvname
Теперь активируем окружение
# Linux
source ~/venvs/myenvname/bin/activate
# Windows
%userprofile%\venvs\myenvname\Scripts\activate.bat
Можно ставить любые библиотеки и запускать приложение.
Это стандартный метод работы с любым проектом. Если еще не используете его, то пора начинать. Даже при наличии root доступа!
🔸 Бывает, что нет возможности запустить приложение из своего виртуального окружения. Например, его запускает какой-то сервис от вашего юзера и вставить активацию окружения вы не можете.
В этом случае можно установить библиотеки для Python не глобально в систему, а только для юзера.
Выполните этот код в консоли:
python3 -m site
Вы получите что-то такое:
sys.path = [
'/home/user',
'/usr/lib/python37.zip',
'/usr/lib/python3.7',
'/usr/lib/python3.7/lib-dynload',
'/home/user/.local/lib/python3.7/site-packages',
...
]
USER_BASE: '/home/user/.local'
USER_SITE: '/home/user/.local/lib/python3.7/site-packages'
ENABLE_USER_SITE: True
Нас интересует параметр USER_SITE. Это путь к пользовательским библиотекам, которые доступны по умолчанию, если они есть.
Именно сюда будут устанавливаться модули если добавить флаг --user при установке чего-либо через pip
pip install --user requests
Для этой команды не нужны root-права.
После неё можно запускать системный интерпретатор без виртуальных окружений и установленная библиотека будет доступна для текущего юзера.
Параметр USER_BASE показывает корневую директорию для хранения user-библиотек. Её можно изменить с помощью переменной окружения PYTHONUSERBASE
export PYTHONUSERBASE=~/pylibs
python3 -m site
...
USER_BASE: '/home/user/pylibs'
USER_SITE: '/home/user/pylibs/lib/python3.7/site-packages'
Получается некоторое подобие виртуального окружения для бедных 😁 которое можно менять через эту переменную (не делайте так!Лучше venv!)
🔸 Дописывание пути в PYTHONPATH
Этот способ не входит в список "двух правильных", но тоже рабочий. Здесь придётся сделать всё несколько сложней.
Сначала ставим библиотеку в любое место указывая путь установки
pip3 install -t ~/mylibs modulename
Библиотека установится без привязки к какому-либо интерпретатору. То есть по умолчанию не будет видна. Теперь в нужный момент добавляем этот путь в sys.path или в PYTHONPATH.
Не буду советовать так делать. Единственный раз когда этот способ мне пригодился и решил поставленную задачу, это при создании общей библиотеки для кластера компьютеров.
Модули лежат в сети и подгружаются для всех из одного и того же места. То есть обновлять файлы требуется только один раз а не на всех хосты отдельно.
Минусы такого подхода:
▫️Нужно всем хостам пробить нужный путь в .bashrc или ещё куда-то чтобы он сетапился на старте.
▫️Чем больше хостов тем больше нагрузка на сеть. Иногда такой способ не подходит именно по этой причине. Тогда Ansible вам в помощь.
▫️Не очень подходит если хосты с разными операционками. Некоторые библиотеки различаются для Linux и Windows (там, где есть бинарники) и приходится мудрить более сложные схемы.
#tricks#basic
苹果AI国行版凌晨意外上线后被迅速下线。此次上线功能包括全新Siri界面、写作工具等,模型调用出现GPT。此次上线被认为是意外事件,正式发布时间仍未明确。
国行Siri入口已更名为“Apple智能与Siri”,可下载端侧模型,实测发现,Siri对话和内容生成环节调用了ChatGPT
标签:#Appleintelligence
Created by RocM
官方频道:@rocCHL
官方群组:@roctech
官方合作:@rocmmbot
从技术选型重识 Apple Intelligence:为什么 Apple 如此设计 AI?
Apple Intelligence,又称 Apple 智能,俗称「苹果 AI」,发布(WWDC24,2024 年 6 月)已有一年半的时间,从 iPhone 15 Pro 系列开始境外开发者 Beta 测试,到 iPhone 16 全系以 AI 作为主要卖点时国行仍为「为 Apple 智能预备好」状态,再到 iPhone 17 全系国行激活数量超千万(2025 年 11 月),目前国行 Apple 设备依旧停留在「为 Apple 智能预备好」的阶段。
少数派全文
标签:#AppleIntelligence
Created by RocM
官方频道:@rocCHL
官方群组:@roctech
官方合作:@rocmmbot
苹果 AI 在华推进最新迹象:官网问卷仅支持 +86 手机用户提交反馈
苹果正在采取行动将 Apple Intelligence 引入中国。Apple 网站上的一个新反馈表需要 +86 手机号码,这表明它适用于中国大陆的用户。该表格收集关于写作工具、照片编辑和通知摘要等功能的反馈。虽然预计将推出 iOS 26.2,但尚未确认 Apple Intelligence 支持中国。
标签:#AppleIntelligence
Created by RocM
官方频道:@rocCHL
官方群组:@roctech
官方合作:@rocmmbot
苹果计划在 iOS 27 中开放 Siri,允许其通过 App Store 应用运行任何 AI 服务,同时取消 ChatGPT 作为苹果智能和 Siri 的独家外部合作伙伴。
苹果计划在即将推出的 iOS 27 中,让 Siri 对接除 ChatGPT 外的其他第三方 AI 助手,比如 Google Gemini、Anthropic Claude 等,从而把 iPhone 打造成更开放的 AI 平台。
这将通过一个新的 “Extensions” 系统实现,用户可以在设置中选择哪些 AI 应用能通过 Siri 被调用,同时苹果也能从这些第三方 AI 订阅中抽成,扩大服务收入。
这一策略意味着 ChatGPT 不再是苹果生态中的唯一深度集成 AI 服务,也是苹果为追赶在 AI 领域领先的其他科技巨头,对 Siri 和 Apple Intelligence 进行全面重启的一部分。
标签:#AppleIntelligence#iOS27
Created by RocM
官方频道:@rocCHL
官方群组:@roctech
官方合作:@rocmmbot