Я же попытался показать в итоге, что (1) нужно создавать механизмы персонализации потоков знаний, основанные на (2) структурировании формы подачи знаний, на (3) автоматической оценке семантики этих знаний через обработку LLM-моделями и на (4) оценке поведенческих реакций потребителей знания.
Лет 25 назад я в магазине компьютеров слышал на чисто латышском "Tas ir arī струйный" (это тоже струйный) в адрес принтера (АЦПУ, как его называли в СССР).
Наше основное с Вами различие в этой теме в том, что Вы "знанием" считаете то, что передаётся от человека к человеку, а я - то, что у человека внутри. Я понимаю, о чём Вы говорите, мне не сложно перепривязать то, что у меня внутри, к новой системе знаков, принятой у Вас. Если Вы скажете, как в Вашей системе знаков обозначается индивидуальное и в принципе во всей полноте непередаваемое ощущение, например, любви, ненависти, страха, умиления и т.п., я вообще буду считать, что у нас консенсус :)
Я не уверен, что "зеркальные нейроны" работают у слепых от рождения людей. Эмпатия - это социальный конструкт. Возможно даже развиваемая и тренируемая способность. Вне общества "зеркальные нейроны" работать не будут.
Никакое новое знание зеркальными нейронами не формируется, это часть сенсорной системы человека, позволяющей обращаться к уже знакомым знаниям.
У одного субъекта-человека только один метафорический дом знания, связаный с конкретным набором знаков.
Лично я отношусь к "дому знаний" (картине мира, персональной ОС) именно как к надзнаковому, неописываемому в принципе концепту. В оригинале было:
У одного субъекта-человека только один метафорический дом знания, передать который иному человеку невозможно
Каждый человек получает сигналы в мозг через свою персональную систему сенсоров (нервная система). Нет в мире двух человек с идентичной нервной системой. Нет в мире двух человек с идентичными нейронными сетями, хотя бы в силу разницы опыта (развития, изменения начальной конфигурации под воздействием сигналов с сенсоров).
Знаки (слова, буквы, жесты) - это то, что человек изучает для коммуникации с другими. А "дом знаний" - он строится автоматом. Жарко-холодно, сыто-голодно - человек и слов-то таких может не знать (дети-маугли), но различение состояний присутствует. Переживание "незнания химии" - это не связано с незнанием химии, это связано с незнанием знаковой системы, в которой требуется переживание. Я на суахили ещё и не то могу "не знать".
Кстати, у нас тут в Латвии много билингвов. Я как-то не замечал, что можно обеспечить невозможность "протечки" знания из одной знаковой системы в другую. Просто некоторые вещи удобнее обсуждать в устоявшихся терминах (в разных профессиональных сообществах это хорошо заметно, в IT, например).
Согласен. Истина - одна и она непознаваема, а правда - у каждого своя. Коллективная правда - это согласование персональных правд. Кто не согласовал, тот не член коллектива. Благо, большинство коллективов не требуют от своих членов максимального совпадения персонального "дома знаний" с коллективным. Довольствуются только фрагментами - охотничьи-рыболовные коллективы, актёрские труппы и киногруппы, семья, государство, работа, водители категории B, армия, школа и т.п. Один человек одновременно состоит в нескольких десятках или сотнях коллективов.
И в каждом коллективе, даже в коллективе из двух человек, присутствует согласование фрагментов "дома знания" каждого с некоторым эталоном (зафиксированным в виде текста, изустных правил, обрядов и т.п.).
"Передать знание" во всей его полноте невозможно, но согласовать фрагменты персонального знания с другими со-общниками - вполне доступно. Более того, очень сильно распространено. Например, человечество вполне успешно сгруппировалось в тех, у кого на дорогах в приоритете "помеха слева" и тех, у кого в приоритете "помеха справа". Есть также и другие группы - кому всё равно, кто не в курсе, что это, кто периодически переходит из группы в группу и т.д.
Знание можно описать (формализовать), а вот описания уже можно сравнивать. Математические формулы - вполне себе описание. Как и эмбеддинги (компактные числовые представления фрагментов знаний, удобные для машинного сравнения и поиска). То, что они не передают сами знания - ничего страшного. Эмбеддинги - это инструмент. Как координаты в пространстве. Широта и долгота получают смысл только с географической картой, без неё они - бесполезная абстракция.
Комментатор в целом пытается сказать следующее. Автор статьи, по его мнению, постоянно делает концептуальные подмены и «онтологические скачки»: выдаёт метафоры и инженерные модели (внимание как ресурс, эмбеддинги как «отпечаток смысла», метрики поведения как меру ценности) за строгие описания реальности. Он считает, что это следствие профессиональной деформации: вера в измеримость, алгоритмы и SMM завышает их эпистемический статус. Критик настаивает, что смысл субъективен, не редуцируется к формальным представлениям, а столкновение с «неподходящим» и даже неприятным контентом принципиально важно для мышления. Текст можно критиковать и отвергать, не считая его бессмысленным.
Ну, то есть, комментатор не согласен с позицией автора. Ладно. Спасибо за обратную связь.
P.S.
надо бы и к комментариям сжатие через LLM прикрутить - тоже полезно может быть.
«Думать, что LLM — это „просто ещё один инструмент“, значит фактически утверждать, что ядро защищено от этого. Что, на мой взгляд, глупая позиция. Нет. Глупа ваша позиция. Нет никакого смысла говорить о ИИ-шлаке. Это просто глупо. Почему? Потому что те, кто использует ИИ-шлак, не будут документировать свои патчи как таковые. Это настолько очевидная истина, что я не понимаю, зачем вообще кто-то поднимает тему ИИ-шлака. Так что прекратите эту глупость (So stop this idiocy).
Истина одна для всех, но у каждого своя правда. Похоже, что истина персонально непознаваема, хоть и существует.
Математики ближе всех подобрались к истине (объективности). Они могут через формулы видеть истину, которая одинакова для всех, вне зависимости от типов и настроек их собственных ОС.
Автор правильно начал о процессе построения личного миропонимания. Но потом ушел в "объективность". И даже договорился до "коллектива":)
Коллективы существуют, это реальность. С объективностью сложнее - это уже вопрос настроек персональной ОС. Я различаю "истину" и "правду". Истина одна для всех, но у каждого своя правда. Похоже, что истина персонально непознаваема, хоть и существует.
Поэтому качество системы подготовки имеет огромную роль.
Абсолютно верно. Картину мира можно выстроить самостоятельно, но это будет очень скудная КМ. Даже у детей-магули, выращенных животными она богаче. Начальное образование - это фундамент, согласен.
В конце автор сбивается на попытки формализовать и обобщить (я про эмбеддинги). Он, нмв, забывает о кодировании/декодировании. Кто будет выявлять и идентифицировать оные? В какой модели (у анализируемого чела она одна, у аналитика другая)?
Эмбеддинг - это вектор, рассчитанный по тексту. Он не привязан к человеку, он привязан к тексту. Это просто характеристика текста - его координаты в некотором многомерном пространстве смыслов (мерность зависит от модели, которая считает - 384, 768, 1536, 3072, ... координат). Можно смотреть на это пространство, как на библиотеку.
Так вот, эмбеддинг любого текста - это некоторый адрес этого текста среди всех полок, стеллажей, помещений, этажей, зданий, ... этой библиотеки. Изначально библиотека пустая, мы берём тексты, рассчитываем для них эмбеддинги и помещаем тексты в библиотеку.
Считается, что тексты, близкие по смыслу (токенам), будут находиться близко друг к другу. А это значит, что вне зависимости от принципов аналитики человека, если ему "зашёл" текст с некоторым адресом, ему высоковероятно могут также "зайти" другие тексты, находящиеся рядом. Другое дело, что они могут быть сильно похожи на то, что он и так знает. Это решается увеличением расстояния поиска от начальной точки (понравившегося текста).
Более того, если смотреть, с каких "полок" человек обычно берёт тексты ориентируясь на названия / аннотации / оглавления / предисловия, какие из них он потом читает - можно примерно представлять, зайдёт ли ему новый текст, попавший в библиотеку или нет.
Нормализуется не мышление человека, нормализуются тексты, которые он читает.
Настройте свой комплект входных фильтром и научитесь отсекать этот шум. Будете удивлены, 99,99% упомянутого "избытка инфы" пропадет.
Судя по Вашему комменту, моя публикация фильтр прошла. Лестно.
Вместо того чтобы сразу бросаться в реализацию, мы создаем "Change" - папку с описанием изменений.
Если я правильно понимаю, то разработка идёт путём создания цепочки таких папок (или замещении одной и той же по мере продвижения).
Вот это - выжимка LLM по основным папкам и файлам вашего подхода:
AGENTS.md ← правила мышления агента
openspec/
project.md ← контекст проекта
changes/
<id>/
proposal.md ← зачем
tasks.md ← что
spec(s)/spec.md ← как должно работать
design.md ← (опционально) архитектура
.beads/ ← как и в каком порядке делать
.cursor/commands/
openspec-to-beads.md ← формальный переход WHAT → HOW
Такой вопрос: а где хранится целевой образ проекта в которым мы с агентами работаем? Описание того, что мы должны получить?
Это похоже на движение "отсюда и вперёд", а не "нам надо попасть туда".
Вы не можете хранить весь целевой образ проекта в одном файле project.md - это размывает контекст для каждой рабочей итерации агента. Там можно хранить базовые, глобальные ограничители и инструкции, которые именно что нужны для каждой рабочей итерации агента.
Спецификация держит рамки продукта
Если это про openspec/changes/ , то эта спецификация держит рамки изменения продукта. Рамки самого продукта в этом случае держит лишь код, который агент должен изменять. Со всеми вытекающими.
По-идее, здесь должна помогать иерархия файлов AGENTS.md. По крайней мере Codex пытается выстраивать их в цепочку и создавать корпус инструкций, применяемых по текущему месту работы (нахождению модифицируемого исходника).
Для LLM важен контекст. Даже не так - важны плотность и однородность контекста. Если ваши 300 строчек правил противоречат друг другу, то модель не сможет следовать им всем одновременно. А вот как сделать так, чтобы для каждого исходника у агента был плотный и однородный контекст (причём для различных исходников и для различных сценариев модификаций этих исходников должен быть различный контекст) - вот это уже большой вопрос, на который у Spec Kit пока что ответа нет.
Spec Kit также генерирует дерево папок и файлов, показывающее, что будет создано, изменено или удалено. Этот уровень видимости помогает разработчикам немедленно понять полный объем предстоящих изменений.
Почему "немедленно"-то? Как можно "немедленно понять", что именно хранится в дереве папок и файлов? Это как войти в супермаркет и немедленно понять, где лежит всё, что тебе нужно купить для сегодняшнего ужина, хотя в этом супермаркете ты в первый раз.
Проверяйте сгенерированный план с архитекторами и старшими разработчиками. Убедитесь, что архитектура согласована, не вводятся несанкционированные слои, а точки интеграции точны.
Может просто дать возможность самим "архитекторам и старшим разработчикам" этот план сгенерировать? По мне, так это делегирование ответственности за сгенерённый нейронкой слоп.
Я согласен, что спецификации должны быть частью проекта, если в нём задействованы llm-агенты, но доверять агентам самим генерировать спецификации, которые ты сам не понимаешь? Это зло.
Проверка сгенерированных ИИ Markdown-файлов необходима, но когнитивно утомительна. В отличие от кода или документации, написанный ИИ текст выглядит грамматически правильным и вроде бы разумным, но требует постоянного тщательного изучения на предмет фактической и архитектурной точности.
Но вот чего мы не сказали: чтение текста, сгенерированного ИИ, ментально истощает.
Абсолютная правда! Я это как следует прочувствовал на этой статье.
Заплюсовал за идею - сам двигаюсь в подобном направлении. Но как практик хотел бы увидеть меньше нейрогенерёнки и больше кода или хотя бы скриншотов, на которых видна структура ваших спецификаций. По моему опыту в плоских файлах (типа constitution.md) архитектуру проекта не описать - нужна иерархия каталогов и файлов в них. Так-то можно по коду распихать AGENTS.md и в них хранить спецификации и для /services/, и для /api/client. Мне нейронка выжимку по структуре сделала, но не уверен, что это именно то, что вы имели в виду.
У вас есть собственная устойчивая картина мира - ей и пользуйтесь. Я дал вам возможность посмотреть на мир с моей точки зрения, вы - дали такую же возможность мне.
И что Вам подытожил ChatGPT, если не секрет?
Я же попытался показать в итоге, что (1) нужно создавать механизмы персонализации потоков знаний, основанные на (2) структурировании формы подачи знаний, на (3) автоматической оценке семантики этих знаний через обработку LLM-моделями и на (4) оценке поведенческих реакций потребителей знания.
"Строим Нью-Васюки" - оно как раз про это.
Лет 25 назад я в магазине компьютеров слышал на чисто латышском "Tas ir arī струйный" (это тоже струйный) в адрес принтера (АЦПУ, как его называли в СССР).
Наше основное с Вами различие в этой теме в том, что Вы "знанием" считаете то, что передаётся от человека к человеку, а я - то, что у человека внутри. Я понимаю, о чём Вы говорите, мне не сложно перепривязать то, что у меня внутри, к новой системе знаков, принятой у Вас. Если Вы скажете, как в Вашей системе знаков обозначается индивидуальное и в принципе во всей полноте непередаваемое ощущение, например, любви, ненависти, страха, умиления и т.п., я вообще буду считать, что у нас консенсус :)
У деятельности есть цель (добраться из точки А в точку Б), у поведения её нет или она неосознанная (дыхание, икота, потеря сознания от испуга).
Я не уверен, что "зеркальные нейроны" работают у слепых от рождения людей. Эмпатия - это социальный конструкт. Возможно даже развиваемая и тренируемая способность. Вне общества "зеркальные нейроны" работать не будут.
Никакое новое знание зеркальными нейронами не формируется, это часть сенсорной системы человека, позволяющей обращаться к уже знакомым знаниям.
Лично я отношусь к "дому знаний" (картине мира, персональной ОС) именно как к надзнаковому, неописываемому в принципе концепту. В оригинале было:
Каждый человек получает сигналы в мозг через свою персональную систему сенсоров (нервная система). Нет в мире двух человек с идентичной нервной системой. Нет в мире двух человек с идентичными нейронными сетями, хотя бы в силу разницы опыта (развития, изменения начальной конфигурации под воздействием сигналов с сенсоров).
Знаки (слова, буквы, жесты) - это то, что человек изучает для коммуникации с другими. А "дом знаний" - он строится автоматом. Жарко-холодно, сыто-голодно - человек и слов-то таких может не знать (дети-маугли), но различение состояний присутствует. Переживание "незнания химии" - это не связано с незнанием химии, это связано с незнанием знаковой системы, в которой требуется переживание. Я на суахили ещё и не то могу "не знать".
Кстати, у нас тут в Латвии много билингвов. Я как-то не замечал, что можно обеспечить невозможность "протечки" знания из одной знаковой системы в другую. Просто некоторые вещи удобнее обсуждать в устоявшихся терминах (в разных профессиональных сообществах это хорошо заметно, в IT, например).
🙂🤝 спасибо за Ваше внимание!
Согласен. Истина - одна и она непознаваема, а правда - у каждого своя. Коллективная правда - это согласование персональных правд. Кто не согласовал, тот не член коллектива. Благо, большинство коллективов не требуют от своих членов максимального совпадения персонального "дома знаний" с коллективным. Довольствуются только фрагментами - охотничьи-рыболовные коллективы, актёрские труппы и киногруппы, семья, государство, работа, водители категории B, армия, школа и т.п. Один человек одновременно состоит в нескольких десятках или сотнях коллективов.
И в каждом коллективе, даже в коллективе из двух человек, присутствует согласование фрагментов "дома знания" каждого с некоторым эталоном (зафиксированным в виде текста, изустных правил, обрядов и т.п.).
"Передать знание" во всей его полноте невозможно, но согласовать фрагменты персонального знания с другими со-общниками - вполне доступно. Более того, очень сильно распространено. Например, человечество вполне успешно сгруппировалось в тех, у кого на дорогах в приоритете "помеха слева" и тех, у кого в приоритете "помеха справа". Есть также и другие группы - кому всё равно, кто не в курсе, что это, кто периодически переходит из группы в группу и т.д.
Знание можно описать (формализовать), а вот описания уже можно сравнивать. Математические формулы - вполне себе описание. Как и эмбеддинги (компактные числовые представления фрагментов знаний, удобные для машинного сравнения и поиска). То, что они не передают сами знания - ничего страшного. Эмбеддинги - это инструмент. Как координаты в пространстве. Широта и долгота получают смысл только с географической картой, без неё они - бесполезная абстракция.
Это GPT-выжимка по комменту:
Ну, то есть, комментатор не согласен с позицией автора. Ладно. Спасибо за обратную связь.
P.S.
надо бы и к комментариям сжатие через LLM прикрутить - тоже полезно может быть.
Я один не вижу смысла в этом тексте?
Это вопрос формулировок (модели ОС и её настроек).
Согласен.
Согласен.
Спасибо :)
Математики ближе всех подобрались к истине (объективности). Они могут через формулы видеть истину, которая одинакова для всех, вне зависимости от типов и настроек их собственных ОС.
Коллективы существуют, это реальность. С объективностью сложнее - это уже вопрос настроек персональной ОС. Я различаю "истину" и "правду". Истина одна для всех, но у каждого своя правда. Похоже, что истина персонально непознаваема, хоть и существует.
Абсолютно верно. Картину мира можно выстроить самостоятельно, но это будет очень скудная КМ. Даже у детей-магули, выращенных животными она богаче. Начальное образование - это фундамент, согласен.
Эмбеддинг - это вектор, рассчитанный по тексту. Он не привязан к человеку, он привязан к тексту. Это просто характеристика текста - его координаты в некотором многомерном пространстве смыслов (мерность зависит от модели, которая считает - 384, 768, 1536, 3072, ... координат). Можно смотреть на это пространство, как на библиотеку.
Так вот, эмбеддинг любого текста - это некоторый адрес этого текста среди всех полок, стеллажей, помещений, этажей, зданий, ... этой библиотеки. Изначально библиотека пустая, мы берём тексты, рассчитываем для них эмбеддинги и помещаем тексты в библиотеку.
Считается, что тексты, близкие по смыслу (токенам), будут находиться близко друг к другу. А это значит, что вне зависимости от принципов аналитики человека, если ему "зашёл" текст с некоторым адресом, ему высоковероятно могут также "зайти" другие тексты, находящиеся рядом. Другое дело, что они могут быть сильно похожи на то, что он и так знает. Это решается увеличением расстояния поиска от начальной точки (понравившегося текста).
Более того, если смотреть, с каких "полок" человек обычно берёт тексты ориентируясь на названия / аннотации / оглавления / предисловия, какие из них он потом читает - можно примерно представлять, зайдёт ли ему новый текст, попавший в библиотеку или нет.
Нормализуется не мышление человека, нормализуются тексты, которые он читает.
Судя по Вашему комменту, моя публикация фильтр прошла. Лестно.
Если я правильно понимаю, то разработка идёт путём создания цепочки таких папок (или замещении одной и той же по мере продвижения).
Вот это - выжимка LLM по основным папкам и файлам вашего подхода:
Такой вопрос: а где хранится целевой образ проекта в которым мы с агентами работаем? Описание того, что мы должны получить?
Это похоже на движение "отсюда и вперёд", а не "нам надо попасть туда".
Вы не можете хранить весь целевой образ проекта в одном файле
project.md- это размывает контекст для каждой рабочей итерации агента. Там можно хранить базовые, глобальные ограничители и инструкции, которые именно что нужны для каждой рабочей итерации агента.Если это про
openspec/changes/, то эта спецификация держит рамки изменения продукта. Рамки самого продукта в этом случае держит лишь код, который агент должен изменять. Со всеми вытекающими.Можно глянуть на результат?
По-идее, здесь должна помогать иерархия файлов AGENTS.md. По крайней мере Codex пытается выстраивать их в цепочку и создавать корпус инструкций, применяемых по текущему месту работы (нахождению модифицируемого исходника).
Для LLM важен контекст. Даже не так - важны плотность и однородность контекста. Если ваши 300 строчек правил противоречат друг другу, то модель не сможет следовать им всем одновременно. А вот как сделать так, чтобы для каждого исходника у агента был плотный и однородный контекст (причём для различных исходников и для различных сценариев модификаций этих исходников должен быть различный контекст) - вот это уже большой вопрос, на который у Spec Kit пока что ответа нет.
Почему "немедленно"-то? Как можно "немедленно понять", что именно хранится в дереве папок и файлов? Это как войти в супермаркет и немедленно понять, где лежит всё, что тебе нужно купить для сегодняшнего ужина, хотя в этом супермаркете ты в первый раз.
Может просто дать возможность самим "архитекторам и старшим разработчикам" этот план сгенерировать? По мне, так это делегирование ответственности за сгенерённый нейронкой слоп.
Я согласен, что спецификации должны быть частью проекта, если в нём задействованы llm-агенты, но доверять агентам самим генерировать спецификации, которые ты сам не понимаешь? Это зло.
Абсолютная правда! Я это как следует прочувствовал на этой статье.
Заплюсовал за идею - сам двигаюсь в подобном направлении. Но как практик хотел бы увидеть меньше нейрогенерёнки и больше кода или хотя бы скриншотов, на которых видна структура ваших спецификаций. По моему опыту в плоских файлах (типа
constitution.md) архитектуру проекта не описать - нужна иерархия каталогов и файлов в них. Так-то можно по коду распихатьAGENTS.mdи в них хранить спецификации и для/services/, и для/api/client. Мне нейронка выжимку по структуре сделала, но не уверен, что это именно то, что вы имели в виду.А вы попробуйте просто попросить LLM быть компактнее. Типа, а теперь то же самое, но в одном предложении. Они и в такое тоже умеют.
У вас есть собственная устойчивая картина мира - ей и пользуйтесь. Я дал вам возможность посмотреть на мир с моей точки зрения, вы - дали такую же возможность мне.
"Соловьёв-Шапиро" - это вот.