В фреймворке PyQt (и PySide тоже) часто встречается настройка чего-либо с помощью так называемых флагов.
widget.setWindowFlags(Qt.Window)
Взаимодействие нескольких флагов делается с помощью бинарных (или побитовых) операторов.
Несколько флагов можно указать с помощью оператора "|"
list_item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
исключить флаг из уже имеющегося набора можно так
list_item.setFlags(list_item.flags() ^ Qt.ItemIsEnabled)
Добавить новый флаг к имеющимся можно так
list_item.setFlags(list_item.flags() | Qt.ItemIsEnabled)
А проверка наличия делается так
is_enabled = item.flags() & Qt.ItemIsEnabled > 0
Почему именно так? Всё дело в том как именно работают побитовые операторы. Но об этом в следующем посте.
#qt
🤖⭐️Google выпустила GenAI API на основе Gemini Nano как часть ML Kit
В первой порции доступны 4 API (бета статус): суммаризация, исправление, перефразирование, описание изображения. Все модели работают на основе AI Core и полностью на устройстве пользователя. Это значит что все обрабатывается безопасно и работает без наличия интернета.
Пока поддерживается только небольшой список устройств (например, Pixel только линейка последнего поколения). Обещают расширять список в будущем. Скорее всего это связано с необходимой мощностью и оперативной памятью для запуска.
Подробнее в документации
#android#mlkit#gemini#googleio
📹Finding The Perfect Gemini fit on Android (13 мин)
Рассказ про GenAI модели из Google ML Kit и как можно их использовать на устройствах без подключения к сети (список моделей - флагманы 2024-2025 года)
#android#mlkit#ai#gemini#googleio
🤖Google анонсировали Automated Prompt Optimization (далее APO) для Vertex AI. Это будет полезно всем тем кто работает с on-device AI на Android
Если вы ещё не слышали про ML Kit Prompt API — это способ запускать Gemini Nano прямо на Android устройстве без обращения к серверу. Модель живёт в Android AICore как системный сервис, приложение просто отправляет промпт и получает ответ.
APO появился с целью настройки общей модели под конкретную задачу. Это облачный инструмент, который автоматически ищет оптимальный системный промпт для вашей задачи. Вы даёте примеры входных данных и ожидаемых ответов, Gemini Pro/Flash анализирует ошибки, генерирует десятки вариантов промптов параллельно и выбирает лучший. На выходе — просто текст промпта, который вы зашиваете в своё приложение.
Google утверждают, что это даёт📈 +5–8% к точности на реальных задачах: классификация, перевод, определения намерения.
Пока ML Kit Prompt API доступен только на ограниченном числе устройств, но направление очевидно — Google всерьёз строят экосистему on-device AI для Android-разработчиков
🔗 Источник - официальный блог Android Developers
#Android#AndroidDev#MLKit#GeminiNano#OnDeviceAI