ПроектыФорумОцените

Wisor - Desktop AI - блог разработки (6 стр)

Страницы: 15 6 7 810 Следующая »
#75
(Правка: 9:34) 4:44, 25 фев 2026

Ура, я добрался до кода.

Вот плоды моих сегодняшних трудов

+ Search preview

Теперь это выглядит и работает так. Оно теперь корректного размера и внешнего вида, и плюс минус по механике работает как и задумывалось.

открывает ALT+F —> появляется окно, можно сразу писать поисковой запрос (по умолчанию ищет то что в клипборде). На Tab открывается модуль веб поиска - выдача поисковиков, википедии, картинок и так далее. Модуль preffered пока в разработке.


Ну и пока есть порох в пороховницах я запилил видосики с каждым модулем.



Превьюхи модулей (осторожно, баги):

+ Chat preview
+ Screenshoter preview
+ Essentials preview
+ Eaten Files preview
+ Clipboard preview

+ Keyboard preview


Так, у меня есть обновления касательно самого приложения.

1. Лягушка была классной идеей, но на данном этапе я не тяну её по бюджету. Хорошая модель стоит 1500-2000 долларов, и на её адаптацию в приложение нужно существенно больше ресурсов сейчас чем у меня есть.

Поэтому у нас ребрендинг-редизйан. Вместо лягушек будут геометрические фигуры. Это будут разнообразные треугольники, квадраты, круги и прочие, в середине (внутри периметра) будет осцилограмма, которая отображает активность приложения и умеет показывать разнообразные эмодзи в ответ на контент который просматривается сейчас на пк.

+ накодил за вечер такое

2. Я решил что одновременно с релизом полного приложения, я так же выпущу в отдельности все модули как самостоятельные приложения. Весьма вероятно что начну я с выпусков именно отдельных модулей. По задумке - стандартно висит в трее, можно вывести на главный экран, тогда открывать модуль будет по клику на виджет.

3. Роудмап соответственно скорректировался. В ближайший месяц я соберу и выпущу несколько модулей - Screenshoter с переводчиком смотрится вполне приличной утилитой. Сложность в том что бы потом приложения так же работали в унисон и что бы после перехода на общую сборку данные приложения не обнулились. Тоже задачка.

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

Задача на апрель: постепенная полировка каждого отдельного окна и выпуск по одному как отдельные предложения.

Задача на май: сборка финальной первой версии приложения и публикация целиком.

#76
0:57, 26 фев 2026

Так как это мой бложик разработки имею поделиться созревшими мыслями.


Screenshoter - сделать модуль автоперевода текста на скриншоте, так же связать этот модуль с Tamagochi, так что бы тамагочи реагировал на прочитанную информацию и обрабатывал её (копил, индексировал, возможно где то хранил скриншоты.

Добавить историю скриншотов видимую. Клик на скриншот копирует его в буфер обмена. Распознанный текст так же хранится в этих файлах, и по нему возможен поиск. Перевод, ответы ИИ так же сохраняются в целевой файл и доступны.

Добавить ONNX распознание картинки, что бы оно могло распознать, найти источник картинки (несколько ссылок на картинку в сети и подобные), так же ассоциировать распознанное с источником (url виден всегда на экране в строке браузера).

Добавить автоматически выводимую справку, например нажав ALT+S + CTRL+X, вы включаете этот режим который рисует небольшие виджеты поверх экрана так что бы предоставить больше контекстной информации, АИ комментарий, и всё такое. Все в реальном времени прямо на экране. Почти вся начинка для этого уже готова.


***

Essentials: Узнавать контекст вызова. Перед тем как включиться приложение берёт скриншот экрана, исследует контекст своего нахождения, и пытается предугадать какой контент сейчас может быть нужен. То есть если вы сейчас сидите в коде, то вам вероятней нужны те элементы которые соответствуют контексту. Я просто записываю контекст экрана компьютера в непрерывный набор матриц, и включаю пользовательские действия в приложении (что запросил, что искал, что кликал, что хотел найти и долго искал, что полез искать в приложении или по ссылке в интернет, на какие сайты перешёл, что там искал). И вот когда вы в процессе одного контекста схожего с другим таким же контекстом, то приложение будет знать что вы хотите.

Кроме этого надо дооформить режим создания нового элемента, выбрать режим отображения (короткая строчка, большой виджет, виджет с картинками). Добавить папку куда можно разгрузить архив с картинками и тогда из них создадутся автоматические виджеты. Сделать режим 3 колонок открываемый на TAB, тогда на одном экране отобразится 3 возможных колонки с контентом. По сути уже канбан. Киллерфича.

***

Clipboard: Так же как Essentials: - узнаёт контекст нахождения, пытается предсказать что именно может быть сколько то потребно в данном контексте, например если вы сидели на википедии и копировали в буфер статьи, что бы собрать реферат, и перешли в редактор, то он предсказывает ваше намерение и готовит в буфер обмена вашу копипасту.

К Клипборду главный технологический вызов это хранение специфических типов данных характерных для разного софта, например геометрию 3Д модели. Сделать более компактный внешний вид, что бы больше виджетов и их содержимого отображались на одном экране.

***

Search: Так же как остальные системы - учится предсказывать запрос пользователя в настоящий момент и активно способствует тому что бы дать пользователю то что ему нужно. Доделать модуль Preffered, делать ленту из новостной ленты выбранных ресурсов. Сделать пресеты по разным категориям веб ресурсов для Preferred, автоматически показывать что то из этих категорий при совпадении интересов. **доставка контента и реклама**

***

Virtual Keyboard: Надо подружить её с foreground app, что бы она могла таргетить input команды в процессы и приложения, в первую очередь в браузеры. И надо назначить на ней хоткеи, сразу разместить хоткеи которые уже есть в приложении - на кнопках. Добавить внутренние макросы, например ALT+A+"Anime"+"Ctrl+1" забиндить на ATL+1 и получить открытие всех съеденных данных по аниме. Прямой доступ за одну кнопку. И так можно сделать с любым модулем приложения. в процесс можно подключать скрипты, так что в принципе можно написать свои модули, например запросы в API. **нужно сделать удобный интерфейс обмена этими скриптами и возможность ими делиться с сообществом**

**

Eaten Files - очень сейчас не нравится интерфейс приложения, просто иконки выглядят как куча мала, нужно сделать красивые виджеты-карточки, сделать им скинчики, так что бы интерфейс превратился в картинку и няшку. иметь заранее заготовленный пресет подложек для разных типов файлов, по названию искать подходящие картинки в интернете (например найти постер фильма к файлу "Властелин колец.avi". Сделать это каталогом, добавить сверху разделы "книги", "кино", "игры", "файлы", "музыка", и так далее. иметь красивое оформление - "общую кучу". Сделать "динамическое масштабирование" - когда интерфейс прокручивается - контент становится меньше, как бы отдаляется плавно, и потом приближается обратно. Это входной портал в экосистему пользовательского опыта. Придать особое значение файловым путям - ранжировать объекты идущие последовательно из последовательных папок по очереди. При скармливании файла - индексировать всю папку, например музыку, сделать каталог всей музыки пользователя, искать по ней просто предлагая сначала выдачу съеденного, потом всё остальное. Сделать метатэги файлам, то есть анализировать жанры музыки, жанры литературы, файловые иерархии, делать внутреннее индексирование этого пространства и кэшировать его.

**

AI модуль. Возвращаем, интегрируем в "подкорку" системы, интерфейс адаптируем ко всем данным которыми питается приложение и создаём картографию этого пространства, через статистические взаимосвязи, контекст который непрерывно потребляется и анализируется, поведение пользователя в приложении и так далее. Весь этот контекст складывается в единое целое, включая изображения и тексты с ними связанные, всё это объединяется в единую карту - вычислительную ячейку и карту обученности вашего пользовательского опыта, это объем данных примерно в 2 ГБ в котором работает модель "транзисторный вентиль вероятности булевой функции", грубо говоря все ваши данные как массив представляют из собой криволинейную иерархию булевых функций где каждый фрагмент данных последовательно проанализированных представляет из себя набор тезисов, проще говоря отвечает на вопрос пересечения векторов между запросом который идёт сквозь сеть, и конкретным узлом. Благодаря чему при срабатывании активируется, пропускает сигнал дальше и обогащает его своим контентом (происходит сложение векторов и сохранение ссылки на узел), либо активации нет, но узел пропускает, либо активация в минус, узел тормозит сигнал. Все рассчитывается из сравнения векторов - если сигнатуры по словам и их частоте схожи - происходит активация, если недостаточно - пропускается и так далее. На тестовой сборке это происходило мгновенно.

Далее надо написать п2п часть. Сущностно каждый узел содержит информацию о себе и других узлах сети, по взаимодействию мета-вектора пользователя и узла с ними формируется определённый транзит пакетов. Когда мы вступаем в альянсы пользователей, то мы получаем доступ к их компьютерным нейрокартам и общим коллективным ресурсам. На основании суммарной связи с другими узлами наш узел строит "карту мира", то есть собственную репрезентацию тех или иных узлов и на этом определяет как с ними взаимодействовать и по каким поводам, данные пересылаются сквозным транзитом. Моя задача сделать так что бы в приложении можно было "захостить файл, он бы запомнился сетью как источник относительно которого будет сравниваться новизна версии (через сравнение хэшсумм, это быстро), и разместился бы во внутренней п2п сети, содержимое бы проиндексировалось, превратилось в интерпретируемый мета-вектор всего произведения, и передавалось бы пользователям при доступе к нему.

***

Вот такой девбложик.

#77
21:03, 26 фев 2026

Нужно разработать варианты под конкретные кейсы. И потом эти варианты продавать.
Например, анализ вирусных видосов на ютубе и подбор вирусных ниш.
И потом продавать конкретное решение.
И под это решение завести отдельные каналы в соцсетях для пиара.

#78
0:36, 27 фев 2026

gmake
> Нужно разработать варианты под конкретные кейсы. И потом эти варианты продавать.
> Например, анализ вирусных видосов на ютубе и подбор вирусных ниш.
> И потом продавать конкретное решение.
> И под это решение завести отдельные каналы в соцсетях для пиара.

а ты бы мог сделать и разместить веб-страницы? Проекту очень надобен сайт-одностраничник который проверяет заинтересованность.

#79
3:07, 27 фев 2026

PeeKay
> а ты бы мог сделать и разместить веб-страницы? Проекту очень надобен сайт-одностраничник который проверяет заинтересованность.
Если есть идеи для  конкретных решений, то можно организовать лендинги

#80
8:33, 27 фев 2026

gmake
> Если есть идеи для  конкретных решений, то можно организовать лендинги
для сайта надобно наклепать контента - баннеры, иконки, сплэши. Надо не только показать что есть и как работает, но коротко за секунду убедить в том что это прямо хочется. Пока для продвижения у меня готово только назвать это AI Helper - что бы всем было сразу понятно что оно очень помогает жить))

#81
8:49, 27 фев 2026

Итак, подошёл к концу третий марафон, сегодня я дал ударные 15 часов, и сделать умудрился достаточно много.

1. Screenshoter - Теперь этот модуль умеет делать несколько новых фокусов. Во-первых на tab показывает прошлые скриншоты в виде каталога откуда можно в любом момент скопировать в буфер распознанный текст, саму картинку или что, в любом случае у скриншотера появилась память. По ней есть поиск. Во-вторых - скриншотер научился азам компьютерного зрения, теперь он умеет делать скриншот экрана и распознавать оттуда весь текст так что бы получился snapshot. Это нужно для того, что бы приложение без необходимости ставить кастомное расширение на браузер имело представление о том какие url вы посещаете, что за контент там читается. Это нужно для кормления и обучения нейросети, для создания снапшотов активности во времени и предикшена того зачем пользователь открывает тот или иной интерфейс. Самое главное это конечно кормление AI.

2. EatenFiles - это было сделано ещё вчера. Вместо квадратных иконок сделал три режима - квадратики (8 в ряд), виджеты (4 в ряд прямоугольные), строки (2 в ряд). Добавил возможность ставить фоны на виджеты. В целом интерфейс получился очень функциональным и приятным на вид.

+ Превью Eaten Files v2


3. Essentials - вот тут было штук 30 итераций за сегодня. Много мелких quality of life улучшений. Добавил три режима отображения в плюс к дефолту (посмотреть можно под спойлерами) - "Доска" - все виджеты Essentials превращаются в квадратики, их можно произвольно разместить на доске, можно связать квадратики между собой. Этот режим нужен для позиционной памяти и возможности делать релевантные кучки. Максимум хаоса и пространственной памяти. Второй режим это Kanban - произвольное количество колонок, можно перетаскивать виджеты (они запомнят своё положение), и в целом до некоторой степени можно организовать свои виджеты в релевантные группы. Третий режим это режим превью вебстраниц - все найденные в Essentials вебстраницы рендерятся в виджеты и показывает Grid до 4-х штук в ряд.

То есть было окошко с заметками, превратилось в гибрид органайзера и контентной доски.

+ Превью Essentials v2
#82
18:20, 27 фев 2026

Я немного поспал, и теперь можно поговорить о финальном магнум опусе.

Сейчас я на этапе когда приложению нужно ещё много часов работы. Благо продуктивность отличная, за последние 3 дня я накатал около 35 часов и сделал существенный рывок.

Следующий на очереди модуль на "обогащение" это Search.

На главное окно, первое при открытии, я выведу новостные посты из Preffered. Сам блок Preffered это лента постов из таргетных ресурсов, она отслеживает новости и показывает их пользователю, так же по этим сайтам идёт поиск при запросах, и в случае с наличием поискового запроса этот раздел превращается в красивую карточку поисковой выдачи с выбранных целевых ресурсов. Это должно быть удобно. Необходимо сделать красивую менюшку добавления и изменения preferred списка - название, вебстраница, строка поиска. Новостные посты собирать и индексировать во внутреннюю систему и карту.

Дальше я вернусь к модулю Screenshoter, там есть объем недоделанной работы.

1. режим доски - та же доска что и в Essentials - размещаем скриншоты, связываем их между собой, можем контролировать связи, можем экспортить в картинку или пользоваться как ещё одним складом нашего контента. поле слева со скриншотами позволяет удобно брать и перетаскивать элементы, создавая иерархии из картинок, ссылок и файлов.

2. Этот модуль отвечает за сбор информации от пользователя формируя первичный набор из snapshots. Если пользователь не делает кликов мышью и не трогает клавиатуру, то снэпшоты не делаются. Снэпшот делается всякий раз когда пользователь нажимает ctrl+c, ctrl+v, enter на клавиатуре но не чаще раза в 45 секунд. "Слепок" всего пользовательского опыта можно получить в визуализации AI. Контент анализируется нейросетью и индексируется и из него строится векторная карта - какой контент смотрел, куда двигался дальше, и так далее. История доступна для просмотра, в любой момент можно почистить.

AI Module - триумфальное возвращение, на этот раз я решил сыграть ва-банк. Я доделаю книжный модуль и сделаю интерфейс читалки, повторю все фокусы с html - перегрузка книг в этот формат, отображение, индексирование, обогащение, словари автозамены, быстрый просмотр, закладки, выбор музыки на фон для чтения, возможность добавить звук в таймлайн книги (привязать звуки к страницам), редактор сносок и обогащения, хранение в html формате всего json интерпретируемой карты связей, рисование картинок нейросетями, оформление в красивую "веб-книгу" с веб интерфейсом который можно просто где угодно разместить в сети. Для этой радости надо с самого начала ставить движок gecko или даже tor.

p2p-grid-network. Каждый инстанс приложения открывает p2p-server который умеет выдавать и принимать токены, открывать доступ к некоторым данным экосистемы приложения, маршрутизировать данные через AI Module (связи узлов, пользовательского опыта и карты сети). Начну делать с создания "shared" папки. Просто единая сетевая папка для двух устройств, доступ по токену-указателю. Каждая "связь" это уникальный токен, т.е на один и тот же узел в p2p сети может быть произвольное количество указателей. У Eaten Files и Essentials будет toggle кнопка "public", которая делает доступными ваш контент в той или иной сети. Сеть из нескольких компьютеров обладает "хостом", который управляет сетью, и произвольным количеством подключившихся пользователей, каждая такая сеть шарит ресурсы, ссылки, и AI мощности. Каждая сеть в зависимости от объема её контента маркируется через Signature (более короткий вектор), и между сетями есть маршрутизация. Цель - создание глобальной карты пользовательских пространств. Сеть работает как вычислительная ячейка обрабатывающая конкретный объем ключей-интересов в зависимости от объема пользователей в ней и принятых хостом contribute в сеть. Каждый пользователь может сделать contribute в произвольную сеть, и тогда файл или ссылка будут добавлены в operative, сети, если контент по вектору сколько то схож с сетью, он ранжируется выше, если пересечение векторов активное, то контент автоматически пре-рендерится. У каждого пользователя в сети есть свой рейтинг, контрибьюторы которые в сети активны и у которых высокий p2p рейтинг (trust, quality, output), могут быть более явными конрибьюторами. Так же в сеть можно захостить сайт, то есть вебстраницу, сеть запоминает "захосченные" домены, кто был нулевым пользователем, и каждый просмотр такого сайта создаёт зеркало, зеркала синхронизируются по hash суммам и таймстампам, т.е если я захостил сайт, а ты его посмотрел вчера, а я его сегодня обновил, то твой пк при обращении к сайту сначала обращается к его мета-данным json - весом около 20 кб, если эти данные не совпадают с моим зеркалом, то я обновляю своё зеркало, обращение ко мне за зеркалом содержит метаданные запроса, если новый запрос содержит более свежий таймстамп, то моё зеркало обновляется.

Профиль Пользователя и Кошелёк.

1. В приложении будет доступен интерфейс работы с биткойном. Отправка на адрес. запоминание адресов, отображение текущего объема крипты, пересчёт по бирже к доллару, возможность в автоматическом режиме торговать (можно поставить порог покупки и порог продажи, есть предиктор который говорит либо удерживай, либо покупай, либо продавай).

В профиле пользователя есть никнейм, аватарка, папка shared в которой лежат доступные всем элементы которые вы сделали public. Есть p2p чаты привязанные к группам в которые вы подключены. Ваш профиль пользователя так же хостится в p2p сеть, и так же проверяется на обновления, является частным указателем на вашу систему для маршрутизации сигналов.

В принципе что-то вроде глобального блокчейн где пользователи, данные, узлы сети и нейрокарты, плюс контент (вебстраницы) - распространяются по п2п-грид сети. Ещё я хочу попробовать сделать так что бы расшаренные приложения могли запускать кодбазу локально, например если я расшарил Witcher3, то в принципе мне нужен json объёмом в 50кб, для того что бы без "поднятия" всей экосистемы отрендерить один единственный кадр и отправить его обратно. Облачный гейминг, мазафака.

#83
7:03, 28 фев 2026

Нет, оно само так естественным образом получается.

Дорогие читатели, я весь вечер посвятил нескольким задачам:

1. заложил фундамент для следующего модуля - доска в которую можно положить любые абстракции приложения - скриншоты, eaten files, essentials, просто текстовые штуки, документы, книги. Это же окошко является браузером и просмотрщиком контента.

2. аккуратно перенёс из существующего кода на python и java код который творит всякое непотребство с вебстраницами, анализатор. Задача создать пайплайн - standart book —> plain html —> parser —> enrichment —> local html book

3. вернул удалённый код локальной нейросети и повторно его запустил. Ему предстоит очень плотный рефакторинг

После этого я из всего сварил огромный промпт в нейросеть и нагенерил около 20 классов для читалки и доски, потом как обычно несколько часов дебаггинга что бы закомпилилось и несколько итераций войны что бы отрисовалось. В итоге пустая доска без всего таки появилась.

We are Cooking.

Когда будет готов прототип я обязательно покажу как это работает. Задумка на миллион)

Суть в том что бы вдохнуть новый UX в режим работы с контентом, интернетом и книгами.

#84
9:06, 1 мар 2026

Добрый день читатель.

Мой метод выглядит очень просто - я смотрю на свой пользовательский опыт за ПК и ищу способ сделать его быстрее. То что можно делать быстрее - я делаю. Вторая задача это генерация новых фичеров в отношении того что уже есть.

История этого модуля на самом деле очень долгая, и я хочу ей поделиться.

В 2021 году, когда я активно работал художником я начал особое внимание уделять цветам, как именно и в какую сторону меняется эмоциональное восприятие и коннотация при помощи цветового кода изображения. Это используется повсеместно, например ярко жёлтые цвета детских автобусов не случайны - желтый цвет находится на пересечении зелёных и красных колбочек, где мы получаем самое большое количество информации, поэтому объект ярко жёлтого цвета мгновенно приковывает к себе внимание, особенно если он движется. Даже если только на краю восприятия. Цветовые коды активно используются в природе естественным зрением, и оценка цвета чего-то мгновенно даёт нам информацию. В рекламе, веб-дизайне и конечно искусстве - цвет это отдельный метод повествования.

И я задумался над тем что бы добавить цветовое зрение к чтению текста. Моя гипотеза заключается в том что если регулярно в течении некоторого времени (например в объеме одной книги) читать покрашенный текст, то со временем мозг научится быстрее считывать буквы, а так же зрительная кора будет более активна, а это стимулирует воображение и мышление. В общем я подумал что можно получить другой читательский опыт таким образом, и решил построить прототип.

Я как истинный самурай не пошёл простым путём, и не сделал цветной шрифт. Я пошёл в сторону Python, парсинга Web и покраски букв при помощи стилей. Я к тому моменту уже бойко собирал из кубиков пирамидки и решил отгрохать свой первый небоскрёб. Пока что размером с табуретку. Сначала я научил Python выгружать страницу "Рик Санчез" из Википедии так, что бы у меня лежал нормальный html здорового человека на моём локальном ПК. С первого раза это не получилось, поскольку то кодировка поплыла, то ссылки, то ещё что-то. С пятого раза html лёг в папку. Ура. Далее html надо разобрать на слова и буквы и применить стиль. Пьяный мастер во мне предложил использовать .replace и это конечно не получилось. Потом пошла трёхдневная война с итератором. Я решил сделать самый надёжный и абсолютно хардкорный как в 90-ых метод. Побуквенный перебор всего текста. В нём выстроена логика проверки на символы и тэги, включение и отключение разных словарей и методов. Посимвольный парсер-конвейер. На выходе у меня получались самые разные варианты веб-текста, большинство из которых не компилились. Задача в том что бы прожёвывая контент вебстраницы не поломать ссылки, не поломать символы, что бы все картинки-оригиналы открывались и вся внутренняя структура была идентична.

Второй шаг - покраска. Когда парсер находит обычный текст вебстраницы - он его сохраняет в блоки и отправляет в субпроцесс - там все слова строки проверятся на предмет наличия автозамены в словаре, если да - то текст обрабатывается особым образом. Можно применять любые произвольные стили какие угодно, включая разные шрифты, фоны, цвет текста, и так далее. Каждая буква в словаре имеет свой цветовой код автозамены. Если слово не нашлось то оно побуквенно красится стилями.

В процессе к коду всего блока подшивается тултип при наведении, в него надо что то положить.

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

Ну и последний этап - собрать все фрагменты обратно в ту же самую вебстраницу и отобразить автозамену.

В итоге у меня получилось покрасить статью с википедии. Потом я так же покрасил одну главу из Гарри Поттеров и Методов Рационального Мышления, уже с тестом автозамены.

Получившийся скрипт у меня сохранился и он вроде бы должен ещё работать.

Тесты на чтение такого текста я проводил и это действительно необычный опыт.

Часть вторая.

Когда я разрабатывал читалку для Андроида, я столкнулся с необходимостью показывать книги в телефоне. Так как я кодер дикий и неприрученный пользоваться либами и сахарком, и вместо того что бы просто поставить 4 библиотеки и рендерить 4 разных блока через switch case, я решил сделать универсальный просмотрщик, который одинаково откроет мне это все удовольствие. Этот же просмотрщик у меня показывает и картинки, и сайты, и все что только можно, включая даже папки приложений. В общем за сим замечательным занятием я научился на Java парсить .docx, .epub, .fb2, .pdf, .text, .html. Здесь тоже были свои нюансы, в итоге пайплайн был таков - для .epub, .docx и .fb2 -> это .zip архивы, их надо распаковать, в них файлы с текстом и xml разметка, парсим xml, по ней собираем текст. На выходе получаем набор строк - абзацев или страниц, которые отправляем в конструктор .html который обрамляет это всё в теги. На выходе получается .html документ который можно открыть в местном браузере. Конфета. Остальные форматы парсятся библиотеками в текст, либо являются текстом изначально.

Этот код у меня на java сохранился и он рабочий.

В другой части моего кода в режиме реального времени в процессе чтения нейросеть StableDiffusion рисует по 2 картинки каждые 6 минут. То есть на выходе у меня получается .html с картинками от нейросетей после прочтения книги.

Часть третья:

Теперь у меня несколько инструментов на разных языках программирования. На выходе я могу получить удивительную абракадабру из книги. Но для неё нужно строить интерфейс который позволяет редактировать, надо писать вкуснейший javascript код для книг. Это надо развивать.

У меня была идея передать этот легаси код одному человеку и поручить собрать в единое целое при помощи нейросетей. Заодно натаскаться в кодинге. Но недавно после 15 часов кодинга я сидел и отдыхал, а лучший отдых, как говорил Шерлок Холмс, это смена занятия - он отвлекался на игру на скрипке и химические опыты, а я просто решил попробовать пока что собрать сам конвертер на flutter и добавить кнопку "process book" или "process page" для url, что бы у меня на выходе получился тот самый файл. В общем собирая этот конвейер я опять столкнулся с тем что мне надо в приложении эту книгу где то отображать и показывать. И вот тут у меня снова оторвало руль и заклинило тормоз.

Часть четвертая:

Итак, я собрал конвейер, но ещё не тестировал, потому что мне нужен интерфейс.

Когда я работаю в браузере самое неприятное занятие это смена вкладок. Как можно сменить вкладки быстро? ctrl+1-ctrl+9 открывает верхние вкладки. Мне нужны хоткеи. Произвольные которые можно назначить на любую вкладку. Второе - само перемещение между вкладками - они вон там сверху, да, но это не удобно, а после двух сотен они уже не показываются. И всё равно, стоящие рядом вкладки путают, мешают. Дискомфортно. и я подумал, а что если создать доску, на которой можно просто разместить вкладку. Жмякаем tab - мы в режиме доски. жмякаем tab снова - мы снова в режиме просмотра. Либо кликаем на виджет. Далее - у меня в приложении куча всяких данных, я хочу их тоже размещать на доске. На участок доски я хочу добавлять фоны, что бы можно было создавать визуальные карты. Я хочу иметь возможность отдалиться и приблизиться произвольно, выделять объекты, соединять их между собой связями, я хочу оставлять заметки, я хочу сделать возможность собрать карту из скриншотов. В общем мне нужна доска для всего. Мои типы файлов могут копировать тексты в буфер (теперь можно добавить хоткей на это), могут открывать ссылки, могут открывать файлы на пк, могут запускать произвольные скрипты (.bat), да что угодно. В общем я повозился, и к настоящему моменту я смог положить на доску сделанный в тестах неделю назад скриншот с его расшифрованным текстом, несколько essentials, один из которых автоматически превратился в браузерное окно (ибо он ссылка), добавил произвольный текст на доску. Пока ещё это очень шерховато, я где то в процессе дебага WebView, пайплайн конвертации ещё не протестирован, но да, я снова сочинил что-то очень экспериментальное. Но полный контроль над браузером, историей посещений, html кодом каждой страницы, текстом страниц и прочим мне нужен для кормления контекста AI и для её обучения.

***

Вот такой бложик разработки.

#85
17:03, 5 мар 2026

Здравствуйте, Друзья.

Первое. Я уже некоторое время веду ТГ канал, там инфы в общем то столько же сколько здесь, но мне будет приятно если вы подпишитесь и я буду знать что моё делание кому то интересно) А ещё там есть чатик)

Второе.

За вчера и сегодня я наработал около 26-27 часов, и за это время мы продвинулись. Но после ударного труда я люблю поболтать, поэтому я расскажу что я делаю в повествовательной манере. =)

Я не хочу повторять ошибок iMeYou и до посинения пилить проект в своей лаборатории, что бы он в итоге начал ломаться под собственным весом (Напоминаю, в iMeYou для релиза я убрал - соцсеть, криптовалюту, магазины, навигатор, обмен файлами, ЭЦП... и ещё много всего). Сейчас я для себя решил - ситуация у меня кризисная, и мне как можно раньше надо начать реализовывать то что уже есть. Если я продержу такой же темп работы как сейчас, то да, возможно свершилось бы чудо, и бета версию всей штуковины я бы смог выпустить к концу весны. Но это будет сырой релиз, там однозначно будут баги, и на самом деле это контрпродуктивно. Я не Waterfall с бюджетом и планированием, где у меня ещё до первой строчки кода расписаны в архитектуре проекта все дата классы и модели обмена данными. Я Agile, я делаю, тут же тестирую, и продолжаю делать. Итеративно. Сделал заготовку, покатал чуть-чуть, пошёл додумывать туда функционал.

Изображение

Без плана, но с чёткой целью.

Так вот, рассуждая таким образом я пришёл к мысли что я хочу разделить приложение на отдельные модули и выпустить сначала все (или несколько самых полезных) модулей по частям. Я сейчас в потоке уже неделю работаю по 12-15 часов в день, и пока что вполне держу темп. Что бы сохранить тонус я вернул свою нейронку и накатал несколько итераций поверх неё, добавил интереснейшую новую функцию которую назвал Sequence Analyzer, суть в том что раньше я брал набор векторов (слов, фраз, нейронов), и просто суммировал все коэффициенты, у меня получался супер-вектор, но это всё равно что смотреть на тень, и пытаться описать объём. 2Д проекция всего объема в один слой, вместо десятков слоёв. И я сделал конвейер, который умеет брать вектора, соединять их в последовательности и строить карту динамики для каждого параметра, на основе этой динамики он умеет предсказывать следующий вектор. По сути своей это что-то вроде компьютерного внимания на минималках, но для моей статистической машины это целый новый пласт применений.

В частности что я хочу сделать. Приложение раз в несколько минут делает снэпшоты экрана, анализирует url паттерны, собирает тексты с экрана, и фиксирует так же все действия в приложении и в системе (ну настолько, насколько может), соответственно при открытии модуля мы можем взять текущий контекст (последние 10 снэпшотов за 15 минут и ещё 10 снэпшотов за прошлый час), взять такую же выборку за некоторое время в прошлом в это же время суток, проанализировать эти данные, и составить предсказание - если пользователь всегда в это время в прошлом вызывая этот модуль в 8.30 утра переходил через него в приложение заказать кофе, то логично ранжировать эту позицию выше в списке. Или - пользователь находится сейчас в коде, вот его код, вот логи ошибок, вот он скопировал в клипборд код и лог ошибки, наверное нужна правка, потому что все прошлые разы когда пользователь так делал - он шёл в deepseek и получал правки от машины.

Ещё я качественно переработал интерфейс приложения и в целом в настоящий момент оно уже кое что умеет.

Второе то что я начал в те дни это Action Board, но этот модуль пока отошёл на дальний план и там технический долг колоссален. Я вернусь к этому после релиза первой версии. Может быть в версии 1.2, может быть в версии 2.5. Там мнооого работы. Но кое что оно уже тоже умеет делать.

И возвращаясь к изначальной теме. Мне нужен был модуль что бы выпустить его первым. У меня есть два почти полностью готовых модуля - Essentials и Clipboard. Первый уже не так прост, а второй элементарен, и я их выпущу когда будет готова остальная инфраструктура для "соло модулей".

В качестве первопроходца я выбрал Screenshoter и решил сделать из него продукт который может быть очень полезен.

Дизайн Qwa Visor

дефолтно это будет тоже тамагочи (Геометрическая фигура анимированная). Находится поверх всех окон. При клике на него делает скриншот экрана и открывается режим выделения. То же самое делает комбинация ALT+S. В режиме выделения мы можем мышкой выделить область на экране, далее - если там текст - он распознается и введётся в строку. Если там qr-code - расшифрует и введёт в строку. Текст в строке можно редактировать, можно завершить работу модуля скопировав текст в буфер, можно ввести произвольный текст и сохранить картинку в качестве мема-демотиватора (в будущем будут более мощный мем-генератор), можно перевести распознанный текст на английский или на язык ввода системы, можно просто скопировать выделенную область. На кнопку ctrl+H открывает историю прошлых скриншотов (все скриншоты вместе с распознанным текстом).

На кнопку tab приложение переходит в режим доски. Теперь скриншоты из истории можно разместить на доске, можно рисовать стрелки. рисовать мышкой, можно дописывать тексты, всё это в приятном минималистичном интерфейсе. Будет экспорт в html, pdf, png и в виде цельной доски (которую можно передавать).

В итоге этот инструмент будет полезен тем, кому нужно распределять информацию визуально в пространстве, он отлично подходит как для мелких нужд (распознание QR-Code, распознание текстов), так и для более сложных манипуляций.

Так же этот модуль отвечает за создание Snapshot.

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

Вот такой девбложик.

Спасибо что читаете )

#86
(Правка: 18:02) 17:59, 5 мар 2026

Очень уважаю, когда люди что-то делают.
Но, Peekay, не работают стены текста. Ты лучше меня это знаешь. Возможно, в телеге будет по другому. Подписался.

PS Посты сейчас ужасны для 2026. Меняй

#87
12:27, 6 мар 2026

Seneca
Изображение
Благодарности :)
Да, портянки текста даже тут смотрятся диковато, в ТГ так и вовсе. Ты прав, надо менять)

#88
(Правка: 5:35) 5:32, 7 мар 2026

Запилил такой дизайн загрузочного экранчика.

Изображение

В таком ключе и дизайне будут оригинальные интерфейсы Wisor - окно настроек, подложка истории прошлых действий, дизайн всплывающих окошек. Серый Графен + Liquid Design вставки.

#89
9:12, 7 мар 2026

PeeKay

Норм. Как будто вайб Adobe

Страницы: 15 6 7 810 Следующая »
ПроектыФорумОцените