Monday, 24 February 2025

Forge & Flux

animcl
Hi all.

With the update Stable Diffusion WebUI Forge now fully supports the Flux.1 model, offering users an enhanced experience in AI-driven image generation. This update significantly boosts speed and precision, particularly when using the NF4 format. In this post, we’ll explore the advantages of running Flux.1 NF4 on Stable Diffusion WebUI Forge, focusing on speed improvements and how to optimize performance across different PC hardware configurations. I have to do this because for some reason, the GenAI gurus in their videos do not emphasize this at all.

NF4 vs. FP8: a Comparison in Speed and Efficiency

Flux.1 introduces two primary checkpoint formats: NF4 and FP8. Each comes with distinct advantages, but NF4 stands out for its remarkable speed and efficiency.

  • Speed Advantage: NF4 is significantly faster than FP8, especially on devices with limited VRAM. For instance, on an 8GB VRAM device like the 3070 Ti, NF4 can reduce the iteration time from 8.3 seconds (with FP8) to just 2.15 seconds — an impressive 3.86x speed improvement. This makes NF4 the optimal choice for users seeking rapid image generation.
  • Memory Efficiency: NF4 checkpoint files are about half the size of their FP8 counterparts, making them more storage-efficient and faster to load.
  • Precision and Dynamic Range: while FP8 can sometimes offer higher precision, NF4 generally provides better performance in terms of detail retention and dynamic range. This is due to NF4’s sophisticated tensor compression method, which optimizes both storage and computation.


Diffusion with Low Bits: Choosing the Right Setting

In WebUI Forge, you can force the loading weight type through the “Diffusion with Low Bits” settings. These include Auto, nf4, fp8e4, fp4, and fp8e5.

0_IpIc2Dlu8564PtV4

However, in most cases, you can simply set this option to Auto, which will automatically select the optimal precision based on your downloaded checkpoint. This feature ensures that you use the most efficient setting for your hardware without manually adjusting the configuration.


Optimizing NF4 on Stable Diffusion-WebUI-Forge

No matter which PC model you’re using, the following settings will help you optimize the performance of Flux.1 NF4 on Stable Diffusion-WebUI-Forge:

Swap Location:

  • CPU Swap: this method offloads part of the model to CPU memory when VRAM is insufficient. It’s reliable but slower.
  • Shared Memory Swap: for PC models with simple RAM, consider using shared memory swap, which can be up to 15% faster than CPU swap, although it may cause instability on some systems.
  • GPU Weights Slider: adjust the GPU weights according to your project needs. Larger weights increase speed but require more VRAM. For most PC configurations, starting with a mid-range setting and adjusting based on performance is advisable.
    0_6Vpggwt9GyuaQfrr

Swap Method:

  • Queue: This method processes layers sequentially, providing stable and predictable performance.
  • Async: Ideal for powerful PC models, Async can accelerate processing but requires careful GPU memory management.
    0_tLvfV2Ghef_NgcUd

Friday, 21 February 2025

SaveAsPDF чи PrintToPDF?

Logo
Привіт привіт.

На сьогодні функція збереження документа в форматі PDF надто популярна. Але мало хто звертає увагу що в Windows є два шляхи для цього і які присутні там штатно. 

Наприклад для Microsoft Word різниця між SaveAsPDF та PrintToPDF полягає в наступному:

1. SaveAsPDF:

- Призначення: функція "Save As PDF" використовується для збереження документа у форматі PDF без потреби друку,  тобто по меню "Зберегти як...". Це дозволяє зберегти вміст документа, включаючи стилі, шрифти, картинки та інші елементи форматування, без будь-яких змін. 

- Використання: при використанні цієї опції документ зберігається як PDF-файл, не зважаючи на жодні налаштування принтера.

- Контроль якості: збереження через SaveAsPDF гарантує, що форматування документа буде точно збережено. Це найбільш підходящий спосіб для збереження документів у PDF для пізнішого використання або розповсюдження.

2. PrintToPDF (як системний принтер):

- Призначення: функція "Print to PDF" працює, як звичайний процес друку, але замість того, щоб надсилати документ на фізичний принтер, він зберігається як PDF-файл. Цей метод має на увазі, що ви "друкуєте" документ, а не просто зберігаєте його.

- Використання: використовується через опцію "Друк" у Word, вибираючи PDF як "принтер". Це може бути корисно для документів, де важливо врахувати, як вони будуть виглядати при друці (наприклад, з урахуванням полів, макетів).

- Контроль якості: оскільки це процес друку, є ймовірність втрати деяких елементів форматування або якості, якщо налаштування принтера не оптимізовані.

Ключові відмінності:

- Збереження формату: "SaveAsPDF" краще зберігає форматування і макет документа в оригінальному вигляді.

- Процес: "PrintToPDF" фактично імітує друк документа, тоді як "SaveAsPDF" є більш прямолінійним методом для створення PDF-файлів без урахування фізичного принтера.

Загалом, якщо вам потрібно отримати PDF без будь-яких змін, "SaveAsPDF" - це кращий вибір. Якщо ж потрібно емітувати друк (наприклад, для перевірки поля або макета), тоді "PrintToPDF" може бути корисним. Іншими словами, якщо вам важливо щоб майбутній PDF не трапився поламаним  десь в області колонтитула то використовуйте завжди SaveAsPDF!

Monday, 17 February 2025

Ollama-сервер и API

course
Всем привет.

LLM-модель - это языковая модель, обученная на больших объемах данных. Она помогает в обработке естественного языка для генерации текста на основе предыдущего контекста. LLM также используют в машинном переводе и при автозаполнении текста.

На рынке уже есть решения для работы с моделями с открытым исходным кодом, такие как gpt4all. Для администраторов, девопсов и безопасников подобный инструмент почти бесполезен, так как мы не можем удобно предоставить его разработчикам и контролировать учетные записи пользователей.

А проект Ollama прекрасно решает эти проблемы. И что особенно удобно его можно использовать локально на своем хосте если достаточно VRAM, или в своей локальной сети развернув на одном из серверов компании, и даже дома.

Основные отличия Ollama от других проектов - это предоставление бесплатного API. Уже есть огромный выбор графических интерфейсов для этого API. Проект доведен до ума и не требует танцев с бубном при запуске. Проект поддерживает Windows, Linux и MacOS. Многочисленные инструкции по локальной установке Ollama доступны в сети.

Самый популярный вариант это docker плюс Open WebUI. Суть в том, что сервер лучше запускать в Docker, так как это готовый проект на React и у него есть официальный образ. Также есть и официальный чарт от Open WebUI. 

Но не спешите так делать! Ну право, из-за одного сервиса я буду разворачивать у себя еще и docker. Нет, не буду, и штатно инсталировать Ollama тоже не буду. Не доверяю я всяким инсталяторам.)

И как же тогда? А я возьму из репозитория Ollama его портабельный вариант, и просто разверну его в отдельную папку. Готово! Забегая наперед, перед первым стартом  я пропишу еще две системные переменные для Ollama-сервера чтобы к нему можно было обращаться по локальной сети

OLLAMA_HOST=192.168.1.100

и отдельную папку для моделей чтобы файлы не падали на диск "С"

OLLAMA_MODELS=Е:\ollama\models

Пока все! Запускаю OLLAMA-сервер bat-файлом:

@echo off

start /B ollama.exe serve

timeout /t 5

@echo Load model to server ...

ollama.exe run "gemma:latest"

pause

olama

Если вы заранее не загружали модель набирая ollama.exe pull "gemma:latest", то первый старт до готовности отвечать на запросы у вас займет некоторое время. Проверить работу и наличие локальных моделей можно через запрос http://192.168.1.100:11434/api/tags

Thursday, 13 February 2025

Про новое меню ComfyUI

baran

Всем привет.

Ничто не стоит на месте. А ComfyUI и подавно.

Так в какой то момент времени его автор решил что старое меню ComfyUI не дает прежнего комфорта и обновил его концепцию кардинально. Ударение было сделано на рабочую область, которая максимально должна быть доступна для workflow. В этом что-то есть ибо процессы растут как на грибах, я уже видел такие на пол сотни нод разом. Но вернемся к новому меню, и так от плавающей формочки мы перешли к двум статическим панелькам, одна вверху, другая слева. Что куда переехало, видно на рисунке.


Untitled

Скажу честно, я не восторге от нового дизайна, мне не хватает в нем очевидности функционала (или это дело привычки), но уверен что возврата к старому не будет. Да, я знаю что в настройках еше можно переключиться на старый вариант, но думаю что эта опция доступна временно. Видимость всего меню можно отключать если вы подолгу работаете с одним процессом. Хотя мониторинг от crystools уже и присутствует в ComfyUI как must have, вы сами видите что он с трудом вписывается в новый дизайн.

Из нового:

  • бегунок (1) лучше перенести вниз рабочей формы, это делается в настройках: шестеренка, rgthree-comfy, Features, Position of window, выбираем "bottom" из списка.
  • кнопки (2) позволяют очищать VRAM и кеш после генерации, насколько они эффективны и на что способны, надо проверять. 
  • кнопки (3) позволяют пересматривать вашу иерархию нод и процессов.

Что хотелось бы увидеть в будущем? 

  • кнопки Refresh node и Manager должны быть на самом видном месте, 
  • список открытых  процессов надо перевести с верхней на левую панель,
  • мониторинг от crystools тоже желательно также перевести налево, иначе он займет половину верхней панельки.

Нo это мое личное мнение, а вас может быть и так все устраивает.)

Удачи.

Friday, 7 February 2025

Git та safe.directory

undercons
Привіт привіт.

Після міграції на новий GenAI сервер з портабельними версіями генераторів Forge, ComfyUI та Fooocus ви можете отримати сюрприз при спробі оновленння або встановлення нових функцій будь якого генератора, тобто всього того що використовує Git.

Під час спроби виконати команду git, наприклад клонування, git повертає фатальну помилку, повідомляючи, що ваш репозиторій має сумнівне право власності, і команда git переривається. Текст про помилку може бути різний, але він буде пов'язваний з Working Directory. Як приклад повертається помилка (дивитися в консолі самого генератора), подібна до наведеної нижче: 

fatal: detected dubious ownership in repository at '<path to the repository>'

To add an exception for this directory, call:

git config --global --add safe.directory <path to the repository>

або

fatal: unsafe repository ('<path to the repository>' is owned by someone else)

To add an exception for this directory, call:

git config --global --add safe.directory <path to the repository>


Причина

З git 2.35.2+ було внесено зміни, щоб запобігти користувачеві виконувати команди в репозиторії, що належить іншому користувачеві. Це зроблено для усунення загрози безпеці, CVE-2022-24765 , для отримання додаткової інформації див. setup_git_directory та оголошено про вразливість безпеки Git . Зміни в setup_git_directory запобігають викликам виконання команд у сховищі, що належить іншому користувачеві. 

Авжеж, якщо це нова інсталяція Windows, то і Ви як користувач (тобто SID) вже новий для локальних репозиторіїв Forge, ComfyUI та Fooocus, навіть якшо вони були портабельні.

Tuesday, 4 February 2025

Про HP EliteBook 840 G1

Logo
Всім привіт.

Здавалося б, навіщо згадувати про модель ноутбука, яка вийшла в світ більше як 10 років тому? В світі ІТ через рік все настільки міняється що... З іншого боку, десята річниця - чи не найкращій привід, аби озирнутися назад та оцінити наскільки може бути вдалою модель яка пройшла перевірку часом. 

Але сьогодні я не буду, як мій колега, ділитися досвідом використання HP EliteBook  840 G1 як робочого інструмента та вірного помічника у різних завданнях, або робити оцінку його загальній витривалості.

Я просто звертаю вашу увагу що все що автор розказав на 15-ти сторінках свого "story about" є абсолютною правдою! Так,  EliteBook  840 G1 не є геймерським, але він є найкращим варіантом для тих хто не любить з будь якого сумного приводу бігти з девайсом до сервіс-центру. 

Так вже сталося що я, як і автор в свій час, купив його з рук за ті самі 5 тисяч.) Не вбачаю нічого крамольного в тому щоб купувати б/в ноутбук проти нового та не провіреного за супер ціною. Навіть трохи краще, я купив таких два, бо один був без робочої батареї та SSD. Тобто в результаті я швидко зібрав з двох один - великий плюс цієї моделі що до основних вузлів (диск, батарея, Wifi, GSM, CMOS та RAM) я можу доступитися БЕЗ викрутки. Не віриться?) То подивіться фотки у автора. Решта конструктивних плюсів для мене це широкий перелік необхідних портів по сторонах, неймовірно тиха робота, тачпад з 4-ма клавішами, та, особливо підкреслюю, ОКРЕМІ кнопки Живленння, Звуку та Wifi. Так, знаю за що говорю, бо я бачив сучасні HP EliteBook  840 G8+, який там бовдур дизайну розмістив кнопку живлення серед інших клавіш клавіатури, ніяк не второпаю...

На панелі ще гордо живе брендова наліпка з Windows7), хоча, як ви розумієте, ноутбук чудово товаришує з Windows 10 22Н2. Так, він не готовий до Windows 11, але мені цього і не потрібно, все що мені треба чудово працює і на Win10.

Хіба немає недоліків? Ну чому, як на мене, один точно маю - це клавіатура без підсвітки. Ну так мені пощастило). Але це легко вирішується або заміною клавіатури, або usb-ліхтариком, або зовнішньою bluetooth клавітурою з підсвіткою. Проблеми в тому не бачу ніякої.

photo_2025-02-04_09-55-13

Ось таке моє резюме з приводу старої моделі ноутбука.

Щасти.

Sunday, 2 February 2025

DeepSeek R1 - еще одна звезда в мире ИИ!

14810 🚀 Встречайте DeepSeek R1! 

🌟Китайская компания DeepSeek выпустила модель, которая уже вызвала настоящий фурор (но без хайпа вокруг бесплатного сыра не обошлось) в индустрии искусственного интеллекта. DeepSeek R1 - это не просто очередная языковая модель, а настоящий прорыв в области логического мышления, математики и программирования.

💡 DeepSeek R1 - это модель Mixture of Experts (MoE), обученная с использованием парадигмы отражения на базе модели Deepseek-V3. Она сочетает в себе огромный потенциал и высокую эффективность благодаря инновационным методам дистилляции (дистилляция коснулась и ChatGPT, юристы уже работают).

📊 Модель доступна в нескольких размерах, от 1,5 млрд до 70 млрд параметров .

Самая маленькая версия может работать даже на устройствах с ограниченными ресурсами! Т.е. вы также можете скачать ее себе на ПК и с помощью Lama сервера и GUI OpenWeb развернуть ее локально. Как и что - полно примеров в youtube, каждый блогер от AI отметил себя этим. Версию ниже 7b не советую, ваш выбор будет зависеть от места на диске и размера RAM+VRAM. Да, это сейчас  бесплатно, но, как по мне, не все здесь прозрачно для конечного пользователя. 

🏆 DeepSeek R1 уже сравнивают с такими гигантами, как:

  • Llama от Meta
  • o1 от OpenAI

По некоторым тестам, особенно в решении сложных логических и математических задач, DeepSeek R1 превосходит своих конкурентов. Более того, она полностью открытая (MIT-лицензия) и доступна для бесплатного использования без необходимости VPN.

🎙️ Комментарий руководителя Meta

"DeepSeek's R1 может превзойти ИИ Llama от Meta" - заявил директор инфраструктуры ИИ в Meta, Мэттью Олдхэм. Он также отметил, что новая модель DeepSeek может превзойти даже следующую версию их продукта .

🎙️ Комментарий разработчика DeepSeek R1

"Мы создали R1 за 5,6 млн долларов, и это был настоящий 'прорыв' для нас. Мы хотели показать миру, что китайские технологии могут не только догонять, но и обогнать западные решения," - написал один из ключевых разработчиков в соцсети X.

🌟 DeepSeek R1 - это не просто модель, это новый уровень возможностей для разработчиков, исследователей и энтузиастов ИИ 🚀

Ресурсы для использования DeepSeek R1:

🔹 Google play (https://play.google.com/store/apps/details?id=com.deepseek.chat)

🔹 Web ресурс (https://chat.deepseek.com/)

🔹 Получить API (https://api-docs.deepseek.com/)

🔹 LM Studio для ПК (https://lmstudio.ai/)

Удачи.

Saturday, 1 February 2025

Расширенный синтаксис промпта.

baran

Всем привет.

Синтаксис в контексте написания промптов для моделей генерации изображений вк Stable Diffusion играет ключевую роль в том, как модель интерпретирует введенные данные и какой результат она производит. Правильное использование синтаксиса помогает точно и ясно передать намерения пользователя, увеличивая шансы на получение желаемого изображения. Возможно сейчас такой синтаксис не так актуален, но при рассмотрении чужого промта знать его не помешает уж точно.

Ниже будет рассказано про ключевые аспекты синтаксиса промптов, которые при этом следует учитывать.

1. Квадратные скобки [ ]

Квадратные скобки могут использоваться для чередования токенов в промте.

Пример: Against the background of landscape [sun | rain], the character a leather armor [blue | red|

Здесь при каждом шаге генерации  " sun " сменяет " rain ", а " blue " чередуется с " red ", в результате чего получаются более сложные композиции.

А еще при смешивании стилей можно использовать специальный синтаксис, который позволяет указать два разных ключевых слова (или стиля) и "фактор", который определяет момент перехода от одного стиля к другому.

Это осуществляется через формат [ключевое слово 1 : ключевое слово 2 : фактор]. Ключевое слово 1 и Ключевое слово 2 - это стили или темы, между которыми происходит переход. Фактор — это десятичное число от 0 до 1, которое указывает, на каком этапе процесса должен произойти переход.

Число 0.5 означает, что переход произойдет на полпути процесса. 

Пример: Landscape [summer : winter : 0.7]

В этом случае модель начнет с создания летнего пейзажа, а затем на 70% пути процесса перейдет к зимнему пейзажу. Это позволит наблюдать интересный переход от теплых летних тонов на переднем плане к виднеющимся на заднем плане горам со снежными склонами.

2. Фигурные скобки { }

Фигурные скобки так же могут использоваться для генерации для указания альтернативных вариантов или возможных выборов внутри промпта. Этот механизм позволяет вам задать несколько возможных вариантов для одного элемента, из которых система выберет один при генерации.

Пример: Against the background of landscape {day | night}, the character a leather armor {blue|red}

Как это работает: выбор между "day" и "night": Фигурные скобки {day | night} означают, что система должна выбрать между "днем" и "ночью" для фона изображения. Это предложение системе два варианта для фона ландшафта, и она случайным образом выберет один из них. 

Выбор цвета брони: Аналогично, {blue | red} указывает, что броня персонажа может быть либо синей, либо красной. Модель выберет один из этих цветов для элемента брони на персонаже.


Capture

Внимание -  фигурные скобки правильно работают при активном расширении Dynamic Prompts в Automatic/Forge.

Версия на печать

Популярное