Для тех кто пишет расширения на PyQt/PySide для CG-софтов.
Когда я только начинал писать тулзы под Maya (тогда еще версия 2010-2011) мне приходилось ручками ставить PyQt4 под Maya. Даже написал мануалы по установке на своём сайте. Но потом стал доступен из коробки PySide и позже он обновится до PySide2. Для некоторых систем была поддержка PyQt5.
И как простому разработчику поддерживать этот зоопарк? Ведь хочется чтобы тул работал на любой версии (вы тоже делали модуль что-то типа import_qt.py?😁)
На помощь приходит проект Qt.py который поставил себе цель унифицировать использование Qt-биндингов вне зависимости от среды где запускается код. Те, кто давно пишут на Qt, скорее всего знают этот проект.
Он стал стандартом для CG-индустрии и используется в топовых студиях и проектах.
Qt․py помогает запускать один и тот же код на разных платформах с разными вариантами Qt-библиотек. Это может быть как интеграция в CG-софт, так и переносимость стендалонов между разными платформами с разными версиями Python.
Я решил рассказать о некоторых особенностях работы с этой библиотекой.
Сегодня о том, как установить и использовать Qt․py и что это вам даёт.
Установка
pip install Qt.py
Чтобы начать использовать Qt․py в коде достаточно заменить импорт вашего варианта Qt-биндинга на Qt․py
from [PySide|PyQt4|PySide2|PyQt5] import QtWidgets
=>
from Qt import QtWidgets
Теперь ваш код будет поддерживать любой вариант биндинга Qt в Python.
При этом не потребуется использовать if-else конструкции под разные версии. Все вызовы теперь одинаковы.
Всё что нужно сделать, это написать его по правилам PySide2. Именно эта версия была взята за основу.
Приоритет импорта такой:
1. PySide2
2. PyQt5
3. PySide
4. PyQt4
Что именно загрузилось можно посмотреть в переменной __binding__
>>> import Qt
>>> Qt.__binding__
'PySide2'
Приоритет имопрта можно изменить через переменные QT_PREFERRED_BINDING и QT_PREFERRED_BINDING_JSON. Причем под каждый проект оверрайды можно настраивать индивидеально.
#qt#libs
📘Understanding #Web3 AI with #AINFT
From #ChatGPT to #Claude, we break down how top #AI models work — and how AINFT unifies them on one platform.🤖
No hype. Just clarity.
🗓 12 Feb · 8AM (UTC)
📍 Venue: HTX English Telegram Group
✈️Telegram | ✖️X
✅Announcements
🚀 AINFT Platform Surpasses 700,000 Users, Advances in Web3 AI
The AINFT platform has officially exceeded 700,000 users, according to official data. According to Odaily, the growing user base and the continuous enhancement of AI model capabilities are propelling it to become a leading AI platform in the Web3 sector. AINFT currently offers users AI models ready for production and fully supports the execution of on-chain automated workflows, facilitating a rapid transition from creative ideas to on-chain implementation. Leveraging its expanding community and open technical architecture, AINFT aims to lower the barriers to using Web3 AI, enabling more efficient deployment of innovative applications.
#AINFT#700000Users#Web3#AIPlatform#AI#Blockchain#OnChain#AutomatedWorkflows#Web3AI#Innovation#Technology#Community
🚀 AINFT Transitions to B.AI Brand Focused on Agent Finance
The official Twitter account of AINFT will transition to B.AI starting today. According to ChainCatcher, the B.AI brand aims to advance Agent Finance, which involves AI Agents autonomously managing funds, executing trades, and optimizing returns, thereby granting artificial intelligence true financial autonomy and accelerating the realization of Artificial General Intelligence (AGI). To ensure a smooth transition for the community, the brand will implement phased upgrades to avoid the impact of a one-time switch. During this process, AINFT will continue to operate as a core sub-brand within the B.AI ecosystem. All content, technological iterations, and community activities related to AINFT will be migrated to the new platform @AINFTcom.
#B_AI#Agent_Finance#AI_Agents#Artificial_Intelligence#AGI#Technology_Transition#AINFT#Financial_Autonomy#Blockchain#Crypto