Обновить

Все потоки

Сначала показывать
Порог рейтинга

Представлен открытый проект netboot.xyz — универсальный установщик netboot на Jinja. Проект работает так:

  • установить программу на флешку.

  • далее установщик подключит ПК к интернету и предложит установку нужной системы.

  • на выбор есть Linux, Windows 7/8/10/11, Fedora и другие ОС

  • дальше проект скачает и установит чистую систему.

Теги:
+3
Комментарии0

Итоги VK WorkSpace Conf 2026

23 сентября мы провели в Москве вторую конференцию VK WorkSpace Conf. Главной темой стали ИИ-агенты, которые работают в почте, мессенджере и календаре с правами конкретного сотрудника. Под катом рассказываем, как устроены MCP-сервер и платформа VK AI Space, как работает федерация с внешними компаниями и как защищены данные на устройствах и в почте.

Три уровня ИИ в VK WorkSpace

Мы встраиваем ИИ в платформу на трех уровнях:

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

  • Ассистент. Отвечает на вопросы, собирает данные из нескольких сервисов и показывает, откуда их взял.

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

41 инструмент через MCP — и ни одного лишнего доступа

Через MCP-сервер агент получает инструменты в Мессенджере, Почте, Календаре, Оргструктуре и на Диске. Он читает чаты и письма, отправляет сообщения, назначает встречи и работает с файлами, но видит только те данные, к которым есть доступ у самого сотрудника.

Например, так агент готовит отчет к встрече. Сотрудник просит в Мессенджере подготовить отчет по проекту. Агент собирает данные с Диска, из Мессенджера и Почты, а при необходимости из CRM, ERP и других систем с поддержкой MCP. А после формирует отчет, рассылает участникам и публикует на Диске.

Подключить агента можно тремя способами:

  • взять готового Ассистента в Супераппе, который работает на моделях внутри компании;

  • собрать агента на платформе VK AI Space;

  • подключить своего через любой MCP-клиент.

В облачной версии доступ к MCP-серверу входит в тариф «Расширенный».

Агент, который знает регламенты и не выходит из песочницы

На платформе VK AI Space компании создают, запускают и контролируют агентов. Для этого в ней есть три механизма:

  • Навыки. Компания упаковывает правила и регламенты в навык, который агент применяет в работе.

  • Память. Агент помнит решения из прошлых задач, поэтому повторно решаемых задач становится до 40% меньше.

  • Изоляция и аудит. Агент работает в изолированной среде с минимальными правами, все его действия записываются, а запросы и ответы проходят проверку.

С агентами обработка обращения в поддержку обходится в 5,5 раза дешевле, а поиск информации в мессенджере занимает на 60% меньше времени.

Федерация и внешние участники

В коробочной версии федерация в Мессенджере объединяет в одном чате неограниченное число компаний, в облачной она появится в первом квартале 2027 года. 

Служба ИБ видит полный контекст передачи файла, а данные уходят в DLP и SIEM. Внешним участникам открыты и другие сервисы:

  • Календарь показывает занятость;

  • Диск дает доступ к папкам и файлам с разными правами, паролем и сроком действия ссылки;

  • Доска и Проекты дают гостевой доступ подрядчикам и партнерам.

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

Зашифрованный контейнер в приложениях

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

  • вход по пин-коду;

  • запрет скриншотов и записи экрана;

  • запрет выноса файлов за пределы приложения;

  • уведомление о включенном VPN.

Антиспам без роста инфраструктуры

За год антиспам VK WorkSpace заблокировал более 80 млрд писем. Письмо проходит несколько уровней проверки, и большая часть спама отсеивается на первых из них. Поэтому тяжелые модели запускаются не для каждого письма, и инфраструктуру не приходится наращивать. Компании с закрытым контуром получают обновления через выделенный буфер, и сам контур в интернет не выходит.

Что дальше

Мы планируем глубже встроить агентов в сервисы, добавить сценарии для групповых чатов и выпустить готовых цифровых сотрудников, которых не нужно настраивать.

Теги:
+4
Комментарии0

Скролл без костылей — что уже умеет CSS

Для большинства сценариев прокрутки JavaScript вообще не нужен. CSS умеет сделать скролл внутри отдельного блока, горизонтальную ленту карточек, плавный переход по якорям, Scroll Snap и даже остановить ситуацию, когда после конца прокрутки модального окна внезапно начинает ехать вся страница. 

Но обычно проблемы начинаются с нескольких базовых свойств. Вот что полезно знать:

  • Overflow — основа скроллинга. Если у контейнера ограничена высота, overflow: auto добавит прокрутку только тогда, когда контент перестанет помещаться. Через overflow-x и overflow-y можно отдельно управлять каждой осью. 

  • Горизонтальный скролл удобен для карточек. Вместо уменьшения элементов или переноса на новую строку можно оставить фиксированную ширину карточек и разрешить контейнеру прокручиваться по оси X. Особенно полезно на мобильных интерфейсах. 

  • Плавные переходы по якорям делаются одной строкой: scroll-behavior: smooth. Но есть нюанс с доступностью: если пользователь включил prefers-reduced-motion, плавную анимацию лучше отключить. 

  • Scroll Snap может заменить простой JS-слайдер. scroll-snap-type и scroll-snap-align позволяют фиксировать карточку или секцию после прокрутки, а scroll-snap-stop: always — не перескакивать через элементы при быстром свайпе. 

  • Фиксированный header не должен перекрывать якорь. Вместо дополнительных скриптов можно задать scroll-padding-top для страницы или scroll-margin-top для отдельных секций. 

  • Вложенный скролл тоже можно контролировать. Если внутри страницы есть модальное окно или боковая панель, overscroll-behavior: contain не даст прокрутке после конца блока автоматически перейти на родительскую страницу. 

Есть и менее очевидные детали. Например, scrollbar-gutter: stable помогает избавиться от горизонтального «прыжка» страницы при появлении полосы прокрутки, а кастомный scrollbar лучше не делать слишком узким или малоконтрастным — это уже влияет на доступность интерфейса.

JavaScript понадобится уже там, где скроллинг запускает дополнительную логику: Infinite Scroll с подгрузкой данных, синхронизацию нескольких областей, аналитику или сложные интерактивные сценарии. А вертикальный и горизонтальный скролл, Scroll Snap, плавные якоря и управление вложенной прокруткой вполне можно оставить браузеру. 

Если хотите посмотреть готовые HTML/CSS-примеры и разобрать типичные ошибки, читайте полное руководство в блоге Рег.облака.

Теги:
+4
Комментарии1

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

И собрали целую ПАПКУ 🗂️

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

Теги:
+3
Комментарии0

Прикручивал свой diff к git и прошелся по граблям

Я пишу небольшую утилиту datadiff на Rust. Она разбирает два файла JSON, YAML, CSV, TOML или XML и сравнивает получившиеся деревья, поэтому переставленные ключи и переформатирование ее не волнуют. Изменения она печатает путями вроде spec.replicas: 3 → 5. Долго это была отдельная команда, про которую надо было вспомнить, так что я решил встроить ее прямо в git diff. Первой версией была строчка в README: шелл-функция, которая из семи аргументов, передаваемых git внешнему драйверу, брала второй и пятый (там лежат старая и новая версии файла). Работало, пока не попался первый кривой файл.

git diff до и после datadiff
git diff до и после datadiff

Оказалось, git считает любой ненулевой код выхода падением драйвера. Пишет fatal: external diff died и дальше ничего не показывает, все файлы после сломавшегося просто пропадают из вывода. А datadiff как нормальный CLI возвращал 1, если нашел различия, и 2 на невалидном файле. Хуже всего, что невалидный конфиг это обычное состояние: открыл YAML, начал править, запустил git diff глянуть что наделал, и получил fatal. Теперь в режиме драйвера datadiff всегда выходит с нулем, а про файл, который не смог разобрать, печатает короткую заметку и подсказку про git diff --no-ext-diff.

Внешний драйвер git вызывает только для самого git diff. git log -p, git show и git blame его игнорируют, туда можно попасть только через textconv, это фильтр, который превращает файл в текст перед обычным построчным сравнением. Я сделал для него режим normalize, он печатает файл в каноническом виде с отсортированными ключами. Если файл не разбирается, normalize отдает его как есть, и тут я накосячил: читал его через read_to_string(...).unwrap_or_default(). Файл не в UTF-8 превращался в пустую строку с обеих сторон, git видел две одинаковые пустоты и молча выкидывал файл из git log -p. Сейчас там чтение байтов и тест на это.

Самые обидные грабли нашлись не в git, а в CSV. В статье на Хабре про самодельный формат конфигов автор объяснял, зачем ему маркер «бери как есть»: чтобы 00544 не превратилось в 544. Я пошел проверять datadiff, и он делал ровно это. CSV типов не хранит, поэтому каждая ячейка, которая разбиралась как число, становилась числом, и замена 00544 на 544 считалась отсутствием изменений. Пока чинил, вылезло еще два случая. Слова, которые f64 честно принимает за число, вроде Nan и inf: человек по имени Nan превращался в NaN, а NaN не равен сам себе, так что неизменившаяся ячейка показывалась как измененная. И целые длиннее i64: они уходили во float и теряли цифры, так что два 20-значных номера счета, отличавшиеся последней цифрой, сравнивались как равные. Правило в итоге такое: ячейка становится числом, только если при этом ничего не теряется. Ведущий ноль перед цифрой, слова вроде nan и inf и слишком длинные целые оставляют ее строкой, а 100 и 100.0 по-прежнему равны. Это вошло в релиз 0.4.1.

Еще запомнился CI. После одного коммита на Windows падал actions/checkout, даже до сборки не доходило. Виноват был файл Icon\r, в нем macOS хранит кастомную иконку папки, в конце имени у него возврат каретки, и он случайно уехал в репозиторий. Windows создать такое имя не может вообще. Тесты при этом падали через раз на всех трех ОС, потому что дочерний процесс успевал завершиться раньше, чем тест дописывал ему stdin, и unwrap ловил EPIPE. Сам проект тут: https://github.com/dimanovikov/datadiff настройка для git в README занимает три строки.

Теги:
+3
Комментарии0

Claude научили делать моды на любую игру — с помощью набора скиллов universal-modder ИИ сам пересобирает движок, декомпилирует код, генерит спрайты, 3D-графику, аудио и проводит тесты. Этот плагин уже позволил создать:

• Minecraft в Skyrim, GTA 5, Cyberpunk 2077 и Elden Ring;
• Роботакси в Age of Empires 2;
• Скейтбординг в Call of Duty: Modern Warfare 2;
• Атомные бомбардировки в Terraria;
• Смесь Escape from Tarkov со Skyrim.

Теги:
+5
Комментарии1

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

Никогда не думал, что навыки целостного анализа музыкальных форм, приобретенные в музыкальном училище и отшлифованные в консерватории настолько будут полезны. В музыке тебя учат видеть произведение на нескольких уровнях одновременно: на уровне такта, мотива или интонации, музыкальной темы, периода (обычно 8+ тактов), раздела музыкальной формы, всей формы в целом, части произведения (разные части сонаты, симфонии или концерта написаны в разной музыкальной форме), и иногда - в рамках "большой формы" - несколько симфоний складываются в общий цикл. Твой взгляд приучается видеть тонкие сети взаимосвязей внутри музыкального организма, восстанавливать причинно-следственные связи: почему тот или иной мотив появился именно здесь? Какая история его развития? Как он менялся? От чего шёл и к чему пришёл? И что интересно - куда идёт?

И, на удивление, то же самое происходит на уровне выстраивания любых инженерных процессов. А именно этим сейчас становится разработка, программирование. Она и раньше было этим выстраиванием. Но со скоростью, которую даёт хороший ИИ - теперь это основная деятельность. То же происходит и в бизнес-процессах в целом. Те, кто почувствовал мощь и вкус ИИ как инструмента принялись за самое сложное: формализацию своей работы. Как ты работаешь? Что ты должен получить здесь и сейчас? Как проверить, что это действительно то, что тебе нужно?

С учётом больших скоростей из-за ИИ важно смотреть вдаль. Как за рулём автомобиля на трассе: чем выше скорость, тем дальше нужно смотреть вперёд.

Теги:
+2
Комментарии0

Как применить одну функцию к нескольким колонкам, не перечисляя их в SELECT

В прошлом посте я рассказывал про модификатор REPLACE, с помощью которого можно менять значения «на лету», не перечисляя все колонки в SELECT. Сегодня расскажу про еще один полезный модификатор — APPLY.

Иногда бывают ситуации, когда нам нужно применить одну и ту же функцию сразу к нескольким колонкам (например, посчитать сумму).

В классических транзакционных базах, таких как PostgreSQL, мы бы вручную перечисляли в SELECT абсолютно все поля, которые хотим просуммировать.

В ClickHouse это делается проще.

Чтобы не писать десятки колонок руками, можно использовать модификатор APPLY. Он работает в связке со звездочкой * и автоматически применяет указанную функцию ко всем колонкам в выборке.

В качестве примера рассмотрим таблицу metrics, в которой хранится количество кликов, просмотров и затрат:

┌─clicks─┬─views─┬─spend─┐
│     10 │   100 │    50 │
│     15 │   150 │    70 │
└────────┴───────┴───────┘

Чтобы посчитать сумму по каждому полю обычно мы привыкли писать так:

SELECT
  sum(clicks),
  sum(views),
  sum(spend)
FROM metrics

┌─sum(clicks)┬─sum(views)─┬─sum(spend)─┐
│         25 │        250 │        120 │
└────────────┴────────────┴────────────┘

С использованием APPLY можно написать короче:

SELECT * APPLY(sum) 
FROM metrics

┌─sum(clicks)┬─sum(views)─┬─sum(spend)─┐
│         25 │        250 │        120 │
└────────────┴────────────┴────────────┘

Несколько нюансов:

  1. Правила вызова пишутся в круглых скобках. Синтаксис такой: APPLY(имя_функции) без аргументов.

  2. Передаваемая функция в APPLY должна уметь работать со всеми полями выборки и их типами данных. Например, для sum все поля должны быть числовыми.

  3. Если мы хотим применить sum, но в таблице есть нечисловые типы данных, мы можем исключить их через EXCEPT или выбрать только нужные через модификатор COLUMNS, о котором я расскажу в следующем посте.

  4. APPLY можно использовать не только для агрегации, но и для изменения типов данных. Например, APPLY(toString) быстро переведет все выбранные колонки в строковый формат.

Ссылка на доку.

Мои статьи по ClickHouse на Хабре.

P.S. Систематизировать знания и получить крепкую базу можно на моем бесплатном курсе «ClickHouse с нуля». А закрепить пройденный материал на его практическом продолжении «ClickHouse с нуля: практика».

Теги:
+5
Комментарии0

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

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

Когда появились компьютеры, работу для них не стали описывать так же, как для служащих. Машина не понимает замысла, поэтому появились алгоритмы: работу пришлось описывать так, как её способен исполнить новый исполнитель.

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

Агент — третий тип исполнителя. Он интерпретирует ситуацию, как человек, но без норм, опыта и последствий, которые человек приносит с собой.

Поэтому ни один из подходов проектирования не подходит для агента. Подробнее почему — в статье «Почему AI-агент не цифровой сотрудник».

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

Хотя с такими ошибками можно разобраться раньше, ещё при проектировании: часть исключить, а остальные ловить там, где это проще. Для этого работу нужно проектировать с учётом того, что агент интерпретирует информацию. Три принципа ниже — об этом.

  • Проектируйте от работы, а не от агента. Сначала определите, какую ошибку вы не готовы принять и после какого действия её уже не исправить. Только потом решайте, что поручить агенту.

  • Решите, что агенту не нужно интерпретировать. Всё, что можно установить независимо, передайте ему уже подтверждённым. Интерпретацию оставьте там, где ради неё агент и нужен.

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

Почему, на ваш взгляд, работу для агентов почти не проектируют: не знают как, не видят смысла или ждут, что следующая модель справится сама?

Теги:
+3
Комментарии1

Стратегия голубого океана в сопровождении

Сегодня – история о применении книги «Стратегия голубого океана» в сопровождении клиентов. Тут можно сразу и Стивена Кови с его «Третьей альтернативой» упомянуть – подходы схожие.

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

Помимо чтения книг, я ещё и работаю – руковожу отделом программистов 1С. Занимаемся, в том числе, сопровождением – у клиента есть ПО, которым он пользуется, и периодически нужна помощь, доработки, настройка, устранение ошибок и т.д.

Когда я пришёл в этот бизнес, сопровождение работало так. За клиентом был закреплён менеджер, который умел разговаривать, но ничего не понимал в 1С и учёте. Клиент звонил менеджеру, говорил задачу, менеджер искал программиста. Бывало, находил быстро. Иногда искал пару дней. Случалось, не находил вообще. Программисты менеджеру не подчинялись, связи были только горизонтальные.

Пока менеджер искал программиста, клиент, скажем так, негодовал. Особенно если задача – срочная. Бывало так негодовал, что звонил директору. Некоторые клиенты отваливались – кто со скандалом, кто молча.

Если менеджер находил программиста, то для клиента начинался новый квест – всё объяснить человеку, который ничего не знает о бизнесе и особенностях клиента. В сопровождении 1С, к сожалению, очень важно знание местности, людей, процессов. Но делать нечего, клиент как-то объяснял, задача как-то решалась. Чтобы в следующий раз опять получить незнакомого программиста и пройти путь заново.

Клиенты просили – закрепите за нами программиста, блин. Надоело каждый раз объяснять. Собственно, клиента достаточно было услышать – он принёс голубой океан с собой, на тарелочке. Но кто ж его слушать-то будет – это всего лишь клиент, что бы он там понимал в нашем-то бизнесе.

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

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

Клиент получил то, что просил. Человека, который постоянно с ним. Программиста, а не менеджера – существенная часть вопросов стала решаться сразу, в разговоре, а не «мы вам перезвоним». Постоянную команду специалистов, управляемую продюсером. Ну и ответственность, наконец-то – продюсер отвечает за решение всех задач клиента (за это и деньгу получает).

Просто же, согласитесь? Но это тоже голубой океан.

Это история применения книги из Книжного стека.

Теги:
+2
Комментарии2
redb
redb

redb 4.2.0: единый контракт трассировки, коннектор AS4 и семь шаблонов проектов

Вышла 4.2.0 сразу по четырём продуктам экосистемы: хранилище redb, интеграционный фреймворк redb.Route, рантайм redb.Tsak и OpenID-сервер redb.Identity.

Коротко о главном.

Безопасность. В Identity выход из сессии теперь действует на сессию самого браузера: userId в запросе больше не выбирает, кого разлогинить. Полный выход отзывает не только сессии, но и гранты. Отозванный ключ подписи больше не предлагается никому по построению, а не по порядку регистрации. В Tsak модуль с http-входом, у которого никто не проверял учётные данные, теперь просто не стартует. В Route ssl=true у RabbitMQ honoured на всех путях подключения, включая именованные фабрики, где TLS не включался вовсе.

Ломающее. Трассировка стала единым контрактом в ядре, и ему следуют все транспорты: спаны приёма стали корневыми, сообщение без контекста открывает свой корень, имена спанов несут назначение. Форма трасс меняется на полутора десятках коннекторов, от Kafka и RabbitMQ до gRPC, SOAP, AS2 и AS4. Очереди seda: и vm: ограничены по умолчанию тысячей, как в Camel. Типизированное чтение заголовка или тела падает на непарсящемся значении вместо тихого значения по умолчанию.

Новое. Коннектор AS4 (eDelivery AS4 1.16 поверх ebMS 3.0) рядом с AS2.

Коллекция из семи шаблонов проектов redb.Templates. Входная аутентификация Basic и Bearer на http:-потребителях и Rest(...).

тут страничка с чего начать

RedbQuery умеет вернуть один объект, количество или да/нет, фильтровать и сортировать по базовым полям.

Полный текст выпуска со всеми ломающими изменениями и ссылками на релизы: redb 4.2.0.

Если было полезно, ⭐ на GitHub поможет другим это найти.

Теги:
+3
Комментарии0

В интересное время живём. Сегодня на детской площадке дочь захотела на качели, хотя обычно боится их.

Подошли, я ее качаю осторожно, вдруг слышу знакомое слово, прислушиваюсь, оглядываюсь. Сидят на скамейке два челика, обсуждают разработку. С помощью «бота». Видимо, оба этим занимаются. Видимо, в свободное время — вечерами. Делятся успехами и проблемами. По виду обычные 30-летние посоны с раёна — тайпикал вайбкодерз!

Один рассказывает, что взял на бирже проект компьютерного клуба, нужно на их сайте сделать лидерборд для чемпионата. Сказал, что сделал за несколько вечеров, сейчас не может со своего сервера перенести на их сервер. Говорит, на моем запускается, копирую всю папку, на их не работает. Сейчас с ботом разбираются, в чем проблема. Токены, говорит, уходят влёт! Каждый вечер аккаунты меняет. Другой советует, ты им отдай вместе с сервером, себе новый возьмёшь, первый говорит, у меня там ещё 2 проекта. Думаю, огонь — облачные технологии, кубернетис с неймспейсами!


Дочь, к сожалению, качели недолюбливает, трусиха, быстро расхотела качаться, пожелала лазить по забору, тут уж я трусиха, пришлось идти подстраховывать, а эти кореша продолжили свой бэкенд толкс, аж завидно, я б послушал!!!


Сильно сомнительно, что на этом они много зарабатывают — я б лидерборд без всяких ботов за пару вечеров вкрутил лет 20 назад (когда с качельками проблем не было — у меня в то время вечер заканчивался утром) — и это стоило копейки. Важнее то, что это тоже навык, тоже прокачивается, и при известной доле настойчивости и везения, они быстро научатся зашибать лёгкую деньгу. Тем более у них есть такой хороший инструмент, который туупыые америкосы нахаляву раздают! И никаких тестировщиков, никаких аналитиков, архитекторов, менеджеров — навайбкодил и в продакшон! ))


Мм, лепота!

Теги:
+13
Комментарии0

Тестирую недавно вышедшую SOM (system one model) Laya для наделения CanvasDesk сверхсилами по автодополнению.

Как пользователь, я хочу чтобы проектирование в CanvasDesk было с молниеносным флоу. Я решил тестово прикрутить под это Laya - свежий open-source аналог нашумевшего облачного движка Jev от TypeSafe AI.

Почему не обычная LLM? Большие языковые модели для подсказок в реальном времени не годятся их генерация съедает от секунды до трёх. Я бы не стал ждать автогенерацию так долго. Jev и Laya - из класса System One Models: модели "быстрых интуитивных реакций". Они не разворачивают текст токен за токеном, а за один проход решают типизированные задачи: классифицируют, ранжируют варианты и выдают калиброванную вероятность.

Jev сидит в закрытом облаке по API. Laya вышла под Apache 2.0 и полностью совместима с ним по протоколу, но разворачивается локально. Размер ~421 миллионов параметров. Задержка около 33 мс на GPU и 200–450 мс на обычном офисном CPU. Не требует гонять контекст схемы через внешнюю сеть - для CanvasDesk в b2b исполнении это принципиально.

Что это даёт на практике:
1/ автодополнение формул и переменных: набираешь расчёт нагрузки, система цепляет переменные из апстрим-узлов и предлагает формулу, проверенную локальным парсером,
2/ next-node подсказки: поставил шаблон балансировщика - движок предлагает связать его с очередью и пулом воркеров,
3/ адаптация под роль: архитектору - параметры теории очередей, продакту - связки конверсий и когортного LTV.

Задача Laya - работать умным стрелочником: отбирать лучшие паттерны из каталога за доли секунды и отдавать их только при высокой уверенности. Если эксперимент взлетит, сборка схем перестанет быть укладкой асфальта вручную.

Пока заворачиваю Laya в локальный sidecar на базе python. Результаты теста и замеров скорости выкачу отдельным постом.

А пока можно самостоятельно потестить WASM версию CanvasDesk и написать в комментарий про свой опыт

Теги:
+5
Комментарии0

Ближайшие события

Чуваки, я не знаю как вы, но я задолбался от этого бессмысленного бега в колесе.

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

Поэтому я пилю MyTinyIDP — Internal Developer Platform на основе CNCF-подхода, Kubernetes и GitOps.

Идея простая: через единый портал разработчик — и его старший брат его менеджер продукта — создаёт проект или сервис, а платформа сама подготавливает репозиторий, окружение, доступы, инфраструктуру и доставку приложения.

Сервис собирается без ручного написания Dockerfile: Cloud Native Buildpacks определяют стек, собирают OCI-образ и публикуют его в registry, после чего Argo CD доставляет приложение в Kubernetes.

Под капотом — Backstage, Argo CD, Argo Workflows, Argo Events, Crossplane. Открытые компоненты, декларативная модель и минимум привязки к конкретному облаку.

Рабочий прототип уже есть.

Ну, «рабочий» — ну так :) Пока вопросов там больше, чем ответов. Но оно уже живёт, что-то создаёт, что-то деплоит...

Так что если в этом чатике есть люди, которым близки Platform Engineering, CNCF, GitOps и нормальный Developer Experience, и которые тоже считают, что пора перестать в каждой компании заново изобретать собственный DevOps — давайте пилить вместе.

Что будет с монетизацией — пока не знаю.

Зато свой golden path устроим. То есть вдруг есть энтузиасты, пишите, расшарю репо и тд. :)

З.Ы. Может показаться что это чатик написал, но нет. У меня реальная попаболь от всего происходящего и я хочу поменять правила игры.

Теги:
+1
Комментарии1

Напишем сами. С ИИ за год

После ухода SAP и Oracle компании надеялись, что западные вендоры вернутся. По наблюдению Алексея Телкова, генерального директора «Галактики», сегодня ждать перестали точно все и некоторые перешли на модель «сами напишем». На вайб-коде и за год. Касается это любого корпоративного ПО, которое не хочется менять на продукт российского вендора. 

Звучит почти бесплатно. Потом в смету приходят видеокарты последнего поколения, подписки на модели, свои серверы и команда из 50 с лишним человек. Которая, как предполагается, тоже ничего не стоит.

Сам Алексей против ИИ ничего не имеет, в «Галактике» уже год пишут код с его помощью. Но ИИ есть и у вендоров, а экономика корпоративного софта от него не меняется. Ценность кода появляется, когда его переиспользуют. Готовая система, которую внедрили в десяти компаниях, в пересчете на одного заказчика обходится дешевле собственной разработки, даже с учетом прибыли вендора.

Как правильно считать TCO своей разработки и что будет с рынком интеграторов, в пятом выпуске подкаста «IT-фронтир». 

Смотреть на VK Video, Rutube и YouTube.

Теги:
+3
Комментарии0

Open-Spec вместо Open-Source

Пытаюсь тут написать сервис полностью по SDD (описываешь спеку и агент генерит по ней код) и такая мысль пришла. Раньше, когда ты хотел показать, что в твоем коде нет закладок или его можно переиспользовать — то выкладывал исходники. А сейчас, по идее, можешь выложить очень подробную спеку и твой сервис по ней пересоберут.

Получается мы теперь как писатели. Типа, «ребята, зацените какую штуку придумал — вот вам её описание». Глобальный переход из «выкладываем свои велосипеды» в «выкладываем нейрослоп описание этого велосипеда»

Отсюда другая мысль: мы теперь системные аналитики или технические писатели? Ведь по сути анализ (до какой-то границы) можно так же скинуть на агента

Теги:
+3
Комментарии1

Сбер заявляет, что при использовании функции «Оплата улыбкой» — исключена любая ошибка и путаница. Что системы распознавания настолько хороши, что путаница в снятии денег по биометрии невозможна.
Вот буквально 30 минут назад, смог убедиться что это не так.

С карты произошло внезапное списание, прямо на глазах

Проверил в сбербанк — онлайн, списание действительно произошло.
При том что карта условно лежит в кошельке, который лежит на столе (и она действительно там). Первая мысль — это где‑то были спалены/слиты реквизиты.

Мгновенный звонок на 900, сделал ситуацию ещё более запутанной. Оказывается платёж действительно был, он был произведён через «Оплата улыбкой» в другом городе. Но при этом оператор настояла что ошибка исключена. Всё кончилось стандартной процедурой по блокировке карты и ожиданием перевыпуска.

Быстрый поиск показал, что действительно существует сети магазинов «Классный колбасный», но ближайший из них в 1000 км.

Зачем этот пост? Я до сегодняшнего момента был уверен что это не возможно, и решил поделиться с сообществом. Кроме того было бы клёво получить комментарии @Sber на этот счёт. Какова вероятность ошибки «Оплаты улыбкой» и как часто возникают такие ситуации?


Теги:
+15
Комментарии14

Представлен клон MS Word — открытый проект под названием EdenText для работы с docx‑ и dot‑документами прямо в браузере. Возможности проекта:

  • автоматическая нумерация, колонтитулы, оглавление, сноски, поля и прочее.

  • можно устанавливать стили абзацев, таблиц и других элементов.

  • возможности по работе с таблицами и даже формулы как в Excel.

  • вставка изображений и подписей к ним.

  • знает русский язык и правила орфографии и грамматики.

  • работает без интернета, без регистрации и без лицензионных ключей.

Теги:
+5
Комментарии0

Недоумения пост...

В п. 5 ч. 2 и п. 5 ч. 3 ст. 6 Федерального закона от 26.07.2026 № 243-ФЗ «О поддержке развития технологий искусственного интеллекта в Российской Федерации» сказано:

большая фундаментальная модель искусственного интеллекта прошла подтверждение соответствия законодательству Российской Федерации и традиционным российским духовно-нравственным ценностям в порядке, установленном Правительством Российской Федерации

Надеваем шляпу разработчика БФМ и размышляем: а как мне научить мою будущую ИИ-модель не просто духовно-нравственным ценностям, а именно традиционным и именно российским? Ждать упомянутый акт Правительства РФ бессмысленно: он о порядке подтверждения, т.е. это процедурный документ. А нам тут над смыслами надо думать…

В Основах государственной политики по сохранению и укреплению традиционных российских духовно-нравственных ценностей, утв. Указом Президента РФ от 09.11.2022 № 809, есть определение «традиционные ценности» (п. 4) и что к ним относится (п. 5). Человеку это все более-менее понятно. А как этому научить ИИ-модель?

Ну хорошо, обучение модели – это вопрос данных. Для каждой ценности можно попробовать подобрать соответствующий корпус, тезаурус и/или онтологию, а то и не один/одну. И вроде как научить модель тому, что «хорошо», может получиться. Но что там с единством противоположностей, диалектикой Гегеля и/или материалистической диалектикой Маркса/Энгельса? Даже не философ легко вспомнит Владимира Маяковского «Что такое хорошо и что такое плохо?». Без «плохого» не получится обозначить «хорошее». Соответственно, ИИ-модель надо «научить» и плохим вещам, конечно же сопровождая это отрицательными весами и другими маркерами со знаком минус.

Допустим, молодой неокрепший разум зашел в сеть и спросил очередную БФМ: «Вокруг все говорят, что быть экстремистом нехорошо. Кто такие экстремисты? Я не хочу быть на них похож». Если модель не видела ни байта экстремистских материалов, то она в ответ может просто сгаллюцинировать. И ладно бы просто придумает что-то абстрактное и несуществующее, а если возьмет и отнесет, например, какую-то из мировых религий к экстремизму? А молодой разум все это возьмет на вооружение (ведь БФМ же прошла проверку, врать в этом вопросе не может) – и вот оно готовое «разжигание»…

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

1) размещение экстремистских материалов запрещено (ч. 6 ст. 13.15, ст. 13.37, ст. 20.3, ст. 20.29 КоАП РФ; ст. 282.4 УК РФ);

2) поиск экстремистских материалов запрещен (ст. 13.53 КоАП РФ).

Т.е. искать и негде, и нельзя.

Не понимаю, как эту проблему преодолевать: инженерная задача (обучить модель) превратилась в юридическое препятствие (как научить правильному и правильно научить неправильному). Тут либо ждать какое-то специальное законодательное разрешение наподобие ч. 2 ст. 10 закона № 243-ФЗ, либо вместо книги одного небезызвестного австрийского художника отдавать ИИ-модели материалы Нюрнбергских процессов (с какими-то направлениями экстремизма это может сработать, но не со всеми). Впрочем, если под эгидой государства и под контролем правительственных структур создать специальный банк экстремистских материалов (не просто заголовки с кратким описанием, а полностью с содержимым, с разметкой, весами и т.п.) исключительно для обучения ИИ-моделей и с предоставлением доступа исключительно сертифицированным/лицензированным разработчикам БФМ – как вариант…

Теги:
+10
Комментарии3
Биржа заказов Инфостарта: новые задачи по 1С со 23 по 30 сентября
Биржа заказов Инфостарта: новые задачи по 1С со 23 по 30 сентября

На Бирже заказов Инфостарта за неделю с 23 по 30 сентября появились задачи для разработчиков, консультантов и аналитиков 1С.

Заказчикам нужны специалисты по Бухгалтерии, УНФ, УТ, Документообороту, КА, УПП, ERP, мобильной платформе, ККМ, обменам, маркетплейсам и интеграциям.

Биржа заказов Инфостарта помогает найти исполнителя для задач по 1С: консультаций, доработок, интеграций, настройки обменов, переноса данных и сопровождения проектов.

Теги:
+6
Комментарии0