TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #380 · 21 окт.

Регулярно приходится писать и ревьюить код, где используется PySide2-6. Заметил, что в подавляющем большинстве случаев настройка создаваемых базовых виджетов происходит через методы. Думаю, всем знаком такой способ. Простой пример с кнопкой: button = QPushButton("Click Me") button.setMinimumWidth(300) button.setFlat(True) button.setStyleSheet("font-size: 20pt") button.setToolTip("Super Button") button.clicked.connect(lambda: print("Button clicked")) Но есть и альтернативный способ - настройка через свойства. Это просто ключевые аргументы конструктора класса. Хоть они и не указаны в документации как аргументы, но они есть) Этот код делает тоже самое но с помощью Property button = QPushButton( "Click Me", minimumWidth=300, flat=True, styleSheet="font-size: 20pt", toolTip="Super Button", clicked=lambda: print("Button clicked"), ) Где это может быть полезно ▫️ Это выглядит более аккуратно и коротко, уже повод использовать ▫️ Может использоваться в заполнении лейаута, когда нам не нужно никакое другое взаимодействие с виджетом и поэтому сохранять его в переменную не требуется. Например, лейбл или кнопка. widget = QWidget(minimumWidth=400) layout = QHBoxLayout(widget) layout.addWidget(QLabel("Button >", alignment=Qt.AlignRight)) layout.addWidget(QPushButton("Click Me", clicked=lambda: print("Button clicked"))) widget.show() Либо так widget = QWidget(minimumWidth=400) layout = QHBoxLayout(widget) for wd in ( QLabel("Button >", alignment=Qt.AlignRight), QPushButton("Click Me", clicked=lambda: ...) ): layout.addWidget(wd) widget.show() ▫️ Можно хранить настройки в каком-то конфиге или генерировать на лету, после чего передавать как kwargs. kwargs = {"text": "Hello " * 30, "wordWrap": True} my_label = QLabel(**kwargs) Как получить полный список доступных свойств? Эта функция распечатает в терминал все свойства виджета и их текущие значения def print_widget_properties(widget): meta_object = widget.metaObject() for i in range(meta_object.propertyCount()): property_ = meta_object.property(i) property_name = property_.name() property_value = property_.read(widget) print(f"{property_name}: {property_value}") #tricks#qt

Hashtags

Резултати

Пронајдени 1 слични објави

Пребарај: #guilibra

当前筛选 #guilibra清除筛选
Machinelearning

@ai_machinelearning_big_data · Post #9605 · 02.03.2026 г., 16:10

🌟GUI-Libra: фреймворк обучения VLM-агентов задачам управления интерфейсами. Microsoft, UIUC и UNC-Chapel Hill разработали систему дообучения VL-моделей для автономного управления графическими интерфейсами. Авторы обнаружили 2 системных изъяна в существующих пайплайнах обучения GUI-агентов: Cтандартный SFT с длинными CoT ухудшает визуальную локализацию (чем длиннее рассуждение, тем хуже модель попадает в нужный элемент интерфейса). Пошаговое RLVR-обучение нестабильно, потому что GUI-среда частично верифицируема. На каждом шаге существует несколько корректных действий, но датасет фиксирует только одно. Как результат - за альтернативные, но правильные действия модель получает штраф. 🟡Для решения первой проблемы предложили Action-Aware SFT Метод смешивает данные с рассуждениями и без них, а затем перевзвешивает токены: action- и grounding-токены получают больший вес в лосс-функции, чем токены рассуждений. Это позволяет сохранить способность к CoT, не жертвуя точностью клика. 🟡Для второй - Conservative RL на базе GRPO с двумя дополнениями. KL-регуляризация ограничивает дрейф политики относительно референсной модели, что улучшает корреляцию между офлайн- и онлайн-метриками. Success-Adaptive Negative Gradient Scaling динамически снижает вес отрицательных градиентов в зависимости от доли успешных действий в группе GRPO-сэмплов. Это защищает от штрафования валидных, но не задокументированных действий. 🟡Для трейна собрали датасет GUI-Libra-81K. Он содержит больше токенов на рассуждение: в среднем 210 на шаг против 85 у AGUVIS Stage 2 L3 и 0 у большинства остальных. Внутри - существующие открытые наборы, к которым GPT-4.1 дописывал подробные ризонинг-трассы. Фильтровали в два этапа: отсев шагов с точностью воспроизведения ниже 0.3 через Qwen3-VL-8B и верификация координат через bounding-box от Qwen3-VL-32B. 🟡Результаты Тестовая GUI-Libra-3B улучшила базовую Qwen2.5-VL-3B на +15.6% по Pass@1 на AndroidControl-v2 и с 3.5 до 25.2 на AndroidWorld. GUI-Libra-4B/8B на AndroidWorld выбила 42.6 (это столько же, сколько GPT-4o + UGround при использовании двух отдельных VLM-модулей. Веса всех моделей размерностью 3, 4, 7 и 8 млрд. параметров, целевой датасет и код обучения выложены в открытый доступ. 📌Лицензирование: Apache 2.0 License. 🟡Страница проекта 🟡Набор моделей 🟡Arxiv 🟡Набор датасетов 🖥GitHub @ai_machinelearning_big_data #AI#ML#VLM#GUILibra#Microsoft