Есть у QLabel есть одна особенность. Её минимальный размер определяется текстом, который в неё записан. Это приводит к тому что длинный текст принудительно увеличивает ширину интерфейса.
В большинстве случаев это выглядит плохо.
Как с этим бороться?
🔸 Обрезать текст заранее, задав лимит по длине строки. В этом случае мы теряем часть визуальной информации. Не всегда угадаешь нужный размер. В разных OS шрифт используется разный.
🔸 Делать перенос строки. Тогда мы получим изменение размера в другую сторону, что тоже поломает интерфейс.
🔸 Переопределить paintEvent() и сделать кастомный рендеринг текста. Можно, но слишком сложно для такой задачи.
Проще всего обрезать текст под текущий размер виджета используя класс QFontMetrics.
Он имеет готовый метод elidedText(), который просто вызываем по событию resizeEvent.
Я также добавил установку ToolTip чтобы всегда можно было увидеть полный текст при наведении курсора.
🌎 Код здесь
#qt#source
🚀 OpenAI **gpt-oss** с ультрадлинным контекстом!
Unsloth выпустили Flex Attention, который даёт до 61K контекста для gpt-oss bf16 при обучении на GPU с 80GB.
📊 Что это значит:
- 8× больше контекста
- потребляет на 50% меньше VRAM
- 1.5× быстрее по сравнению с альтернативами (включая FA3)
Для BF16 LoRA теперь можно тренировать с ~60K контекстом на одной H100 80GB.
🔗 Подробнее: https://docs.unsloth.ai/basics/long-context-gpt-oss-training
@ai_machinelearning_big_data
#Unsloth#OpenAI#gptoss#chatgpt
⚡️GGUF-версии GPT-OSS от Unsloth.
Unsloth конвертировали обе GPT-OSS (20B и 120B) и исправили ошибки, чтобы повысить качество инференса.
🟡Оптимальный сетап:
🟢20B работает со скоростью более 10 токенов/с при полной точности на 14 ГБ оперативной памяти.
🟢120B с полной точностью будет давать >40 токенов/с на примерно 64 ГБ ОЗУ.
Минимальных требований для запуска моделей нет, запуститься можно даже если у вас всего 6 ГБ и только CPU, но инференс будет медленнее.
GPU не требуется , особенно для модели 20B, но его наличие значительно увеличивает скорость вывода (~80 токенов/с). С чем-то вроде H100 можно получить пропускную способность 140 токенов/с, и это значительно быстрее, чем у OpenAI в ChatGPT.
Модели можно запустить через llama.cpp, LM Studio или Open WebUI. Если модель 120B слишком медленная, попробуйте версию 20B - она очень быстрая и работает не хуже o3-mini.
Помимо моделей формата GGUF c полной точностью, Unsloth сделали версии с 4-bit и 16-bit точностью. 4-бинтый квант, кстати, можно файнтюнить на 24 ГБ VRAM.
📌 Подробная пошаговая инструкция по локальному запуску и файнтюну - в документации Unsloth.
🟡Набор моделей
🟡Документация
@ai_machinelearning_big_data
#AI#ML#GPTOSS#GGUF#Unsloth
📌Тренируем FunctionGemma самостоятельно.
LM Studio в коллаборации с Unsloth опубликовали подробный туториал по файнтюнингу недавно выпущенной Google модели FunctionGemma.
FunctionGemma - уменьшенная версия Gemma (всего 270Ь параметров) для агентских сценариев и работы в качестве бэкенда приложений, которую можно запускать практически на любом устройстве.
Гайд состоит из подробного описания всего процесса от обучения модели вызову инструментов до преобразования в GGUF-формат и последующего запуска его в LM Studio
Туториал подойдет для локального трейна (Unsloth работает на NVIDIA, AMD и Intel), но есть и готовый Collab Notebook для тренировки в облаке.
⚠️ FunctionGemma не предназначена для использования в качестве прямой диалоговой модели.
@ai_machinelearning_big_data
#AI#ML#LLM#Tutorial#Unsloth#LMStudio