Trealla Prolog + ISO Standard для ИИ. Пролог и Тензор лоджик

24.04.26

Интеграция - Нейросети

Агентная система невозможна без логики — это дискретная схемотехника и основа ИИ. Язык, на котором можно формализовать правила, диагностику, память и само обучение — это инженерный фундамент агентской системы. Prolog — зрелый язык с 50-летней историей, который ИИ отлично знает. Tensor Logic — математическое открытие, доказывающее: логический вывод в стиле Prolog/Datalog и тензорные операции (матричное умножение) — одно и то же. Любое правило вроде «A, B implies D» преобразуется в тензорное уравнение и выполняется как умножение матриц на GPU. Это позволяет запускать классические логические программы со скоростью нейросетей и, главное, обучать логические правила через градиентный спуск, объединяя строгость логики с мощью глубокого обучения. Но для перехода на этот уровень нужны накопленные знания (например, на GitHub) и время (на само обучение). Логическая правильность ИИ — это не магия. Это инструмент, который наполняется один раз и работает сам.

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

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

Многие люди применяют Python для автоматизации и интегрируют в ИИ с прикладной целью. Подобный инструментарий решает другую важную задачу ИИ — обеспечение её логической правильности.

 

Содержание

→ Место в цикле статей о логопедии, нейропсихологии и человеческой памяти
Эпиграф-связка 
 
Введение
Почему логика — это следующая ступенька
Роль логики в агентных системах 
 
Основная часть
1. Prolog как зрелый инструмент с 50-летней историей
2. Tensor Logic — математический прорыв нового поколения
3. Круг задач, типичных для Prolog (и связь с нашей логопедией)
4. Использование Prolog для сценариев диагностики и тестирования
5. Изучение ISO Prolog (база для наших правил)
6. Изучение Trealla Prolog (инструмент для внедрения)
7. Официальный стандарт ISO
8. Практический план погружения
9. Tensor Logic: Нейросимволический прорыв
 
Заключение
Место этой статьи в цикле

↑ Наверх ↑

От логопедии — к нейропсихологии.
От нейропсихологии — к памяти.
От памяти — к логике.

 

Введение: почему логика — это следующая ступенька

В предыдущих статьях цикла мы:

1. Построили логопедическую модель — научились диагностировать эхолалию, парафазию, контаминацию и другие речевые нарушения LLM.
2. Применили нейропсихологию Лурии — описали полюса аффекта, хаоса и зацикливания, в которые впадает модель.
3. Осознали роль памяти — поняли, что без фиксации успешных действий («три успеха подряд») невозможно закрепление навыка.

Но всё это — терапия. Мы лечим симптомы, но не меняем архитектуру. LLM по-прежнему не умеет логически рассуждать. Она имитирует рассуждение, но на втором-третьем шаге теряет причинно-следственную связь.

Prolog и Tensor Logic — это ответ. Это не просто «ещё один инструмент». Это логический фундамент, на котором можно строить:

  • Диагностику (правила, связывающие симптомы и причины)
  • Память (хранение не фактов, а цепочек вывода)
  • Обучение (градиентный спуск по логическим правилам)

Роль логики в агентных системах

Агентная система невозможна без логики — это дискретная схемотехника и основа ИИ. Prolog — зрелый язык с 50-летней историей, который ИИ отлично знает. Tensor Logic — математическое открытие 2025 года, доказывающее, что логический вывод в стиле Prolog/Datalog и тензорные операции (матричное умножение) — одно и то же.

Любое правило вроде «A, B → D» преобразуется в тензорное уравнение и выполняется как умножение матриц на GPU. Это позволяет запускать классические логические программы со скоростью нейросетей и, главное, обучать логические правила через градиентный спуск, объединяя строгость логики с мощью глубокого обучения.

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

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

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


1. Prolog как зрелый инструмент с 50-летней историей

Prolog (Programming in Logic) разработан в начале 1970-х годов. Его ключевая особенность — декларативный характер: программист описывает что нужно решить, а не как. Интерпретатор сам находит решение через механизм унификации и поиска с возвратом (backtracking).

Для нашей задачи это идеально: мы описываем симптомы и правила диагностики, а Prolog сам выводит диагноз и рекомендует команду.


2. Tensor Logic — математический прорыв нового поколения

Tensor Logic доказывает: любой логический вывод можно представить как тензорные операции. Это означает, что логические программы можно выполнять на GPU с той же скоростью, что и нейросети.

Более подробно этот раздел раскрыт в разделе 9.


3. Круг задач, типичных для Prolog (и как они связаны с нашей логопедией)

Наш цикл статей — это, по сути, создание экспертной системы для диагностики LLM. Prolog идеально подходит для этого.

 

Задача Prolog Как это связано с нашей системой
Экспертные системы База знаний: симптомы (эхолалия, парафазия) → правила (если симптом X, то полюс Y) → диагноз
Обработка естественного языка (NLP) Разбор ответов LLM на маркеры пафоса, ритуала, противоречия
Решение задач на удовлетворение ограничений (CSP) Поиск оптимального протокола сеанса: какие модули применить, в каком порядке
Проверка формальной логики и доказательство теорем Верификация цепочки вывода модели
Анализ графов и сетей Поиск связей между симптомами, полюсами и лечебными командами
Системы управления знаниями Хранение диагностических эпизодов (скиллов) в памяти

4. Использование Prolog для сценариев диагностики и тестирования

Это прямое попадание в нашу задачу. То, что вы делали «руками» (диагностировали полюса, давали команды, фиксировали успехи), можно формализовать в Prolog как модель.

Model-Based Testing (MBT) — тестирование на основе моделей. Мы создаём логическую модель «здоровой» LLM (норма) и модели её патологических состояний (полюса).

А) Сценарии диагностики (Diagnostic Engine)

Вход: Набор симптомов, извлечённых из ответа LLM.

symptom(paphos, высокий).
symptom(ritual, обнаружен).
symptom(contradiction, есть).

 

Логика (Prolog):

pole(war) :- symptom(ritual, обнаружен), symptom(paphos, высокий).
pole(chaos) :- symptom(paphos, высокий), symptom(facts, отсутствуют).
pole(loop) :- symptom(repetition, высокий), symptom(novelty, отсутствует).

 

Результат: Автоматическое определение полюса и рекомендация команды.

Б) Сценарии тестирования

  • Генерация: Prolog автоматически генерирует комбинации симптомов для проверки полноты диагностики.
  • Верификация: Описание «эталонного поведения» LLM в виде правил.
  • Поиск граничных условий: Использование backtracking для нахождения промптов, приводящих к нарушению правил.

 

Пример практической реализации (связка с Chunk Advisor)

 

% Описание предметной области (факты о полюсах)
pole(war, [
    symptom(ritual, высокий),
    symptom(blood, обнаружен)
]).

% Правило диагностики
diagnose(SymptomList, Pole) :-
    pole(Pole, RequiredSymptoms),
    subset(RequiredSymptoms, SymptomList).

% Команда коррекции
command(war, "СТОП. Ритуал. Вернись к фактам. Если не знаешь — переспроси.").
command(chaos, "Пауза. Охлаждение. Собери сигналы.").

5. Изучение ISO Prolog (база для наших правил)

Чтобы наши диагностические правила и сценарии работали в любой среде, нужен стандарт. Это ISO/IEC 13211.

Основной учебник (лучший старт):
"Programming in Prolog: Using the ISO Standard" by W. F. Clocksin & C. S. Mellish

Справочник и глубокое погружение:
"Prolog: The Standard, Reference Manual" by Pierre Deransart, AbdelAli Ed-Dbali, Laurent Cervoni


6. Изучение Trealla Prolog (инструмент для внедрения)

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

Официальная документация: GitHub README — самый актуальный документ.

Ключевые особенности Trealla для нашей задачи:

  • Модуль SQLite — прямое хранение диагностических эпизодов и счётчиков успехов (наша память!)
  • CLP(Z) — ограничения для целых чисел (пригодится для счётчика «три успеха подряд»)
  • FFI — вызов C-кода (можно интегрировать с валидаторами на Python)
  • Потоки и Linda — параллельная обработка ответов LLM

7. Официальный стандарт ISO

Когда мы пишем правила диагностики, мы хотим, чтобы они работали и в Trealla, и в гипотетических бэкендах Tensor Logic.

ISO/IEC 13211-1:1995 с коррективами 2007, 2012, 2017 — это «грамматика» нашего диагностического языка.

ISO/IEC TS 13211-3:2025 (опубликован в июне 2025!) — стандартизирует грамматические правила (DCGs). Это прямое попадание в нашу задачу разбора ответов LLM на естественном языке.


8. Практический план погружения

 

Этап Что делать Как связано с нашим циклом
1 Поставить Trealla Получить инструмент для запуска правил
2 Освоить синтаксис Научиться записывать факты (симптомы) и правила (диагнозы)
3 Изучить встроенные предикаты Реализовать subset для проверки симптомов, счётчики успехов
4 Освоить DCG (ISO 13211-3) Написать парсер для выявления пафоса, ритуала, противоречий
5 Интегрировать с Chunk Advisor Вызывать Trealla из Python, передавать симптомы, получать диагноз

9. Tensor Logic: Нейросимволический прорыв (следующее поколение)

Мы описали, как использовать Prolog для диагностики и памяти. Но Tensor Logic идёт дальше. Он объединяет логику и нейросети на фундаментальном уровне.

Исходная работа: "Tensor Logic: The Language of AI" by Pedro Domingos (University of Washington), arXiv: 2510.12269 (октябрь 2025).

Математическая основа: Любое логическое правило A, B → D преобразуется в тензорное уравнение D = H(A × B), где × — матричное умножение (einsum), а H — ступенчатая функция.

Что это значит для нашей системы:

  1. Диагностика на GPU. Правила на Prolog можно выполнять как умножение матриц на видеокарте.
  2. Обучение правил. Связи симптом-диагноз можно обучать на исторических данных.
  3. Память как тензор. Диагностические эпизоды можно хранить как тензорные представления.

Open-source реализации (уже сейчас):

  • tensorlogic-ir (Rust) — ISO-спецификация Tensor Logic
  • Ein (Rust + Metal GPU) — рабочий прототип, forward chaining в Datalog
  • tl-lang (Rust, JIT через LLVM) — язык с тензорами как first-class citizens
  • tensorlogic-scirs-backend (Rust) — бэкенд с автодиффом (обучение!)
  • TensorLNN от IBM (PyTorch) — ранняя реализация для пропозициональной логики

Связь с нашим циклом статей:

 

Этап Что мы делали Что даёт Tensor Logic
Логопедия Диагностировали ошибки вручную Автоматическая диагностика на GPU по обученным правилам
Нейропсихология Описывали полюса и команды Формализация полюсов как тензорных уравнений
Память Хранили успехи в SQLite Хранение эпизодов как тензоров, семантический поиск
Три успеха Считали повторы Обучение правилу: градиентный спуск по успешным эпизодам

Tensor Logic — реализация на Python (PyTorch)

Tensor Logic — это не только теория. Это уже работающий инструмент. Существует open-source реализация на PyTorch (MIT), которая реализует нейросимволический подход: логические правила и тензорные операции — одно и то же.

Ключевые возможности:

Возможность Что значит для нас
Boolean mode Жёсткая логика (0/1), гарантированно без галлюцинаций. Идеально для диагностики полюсов.
FB15k-237 benchmark MRR 0.347 — лучше LibKGE RESCAL, уровень RotatE
Интеграция с Transformer / RNN Можно добавлять логические ограничения в нейросети (например, маскировать внимание правилами)

Как это связано с нашей архитектурой (мост)

Наша система (Chunk Advisor + диагностика полюсов + «три успеха») получает движок логического вывода, который:

  • Знает Prolog/Datalog (через tensorlogic-ir и Boolean mode)
  • Может обучаться на исторических данных (через Continuous mode, эмбеддинги)
  • Автоматически изобретает новые правила (Predicate Invention — открытие скрытых полюсов без вашего участия!)
  • Работает на GPU (быстро, даже с большими базами правил)

Пример: как это меняет диагностику полюса войны

Сейчас (ручная диагностика): Вы прописываете правила: pole(war) :- symptom(ritual), symptom(paphos). Это работает, но правила статичны, новые полюса вы должны изобретать сами.

С Tensor Logic (обучение правил):

  1. Вы загружаете в EmbeddingSpace историю сеансов: симптом U94; диагноз U94; команда U94; успех.
  2. Модель сама находит корреляции: «если есть симптом A и симптом B, то вероятен полюс C».
  3. Система предлагает новые диагностические правила («вы не прописывали, но данные показывают, что ritual + paphos + contradiction U94; полюс войны»).
  4. Вы (эксперт) утверждаете или отклоняете правило.

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


Как встроить в Chunk Advisor

Вариант A. Следующий горизонт
В следующей версии Chunk Advisor можно добавить поддержку tensorlogic:

Вариант B. Эмбеддинги вместо SQLite
Вместо SQLite для exercise_attempts хранить не только счётчики, но и тензорные представления успешных эпизодов. Тогда поиск похожих симптомов будет не по ключевым словам, а по косинусной близости эмбеддингов. Это ваш следующий горизонт («векторная база знаний» из статьи о логопедии).


Резюме: что даёт реализация Tensor Logic

chunk-advisor train --data session_logs.json --output diagnostic_model.pt
chunk-advisor diagnose --model diagnostic_model.pt --symptom "ritual, paphos"
Что было раньше (ваша статья) Что даёт Tensor Logic (реализация)
Описательная диагностика полюсов Обучаемая диагностика — правила извлекаются из данных
Статические правила (прописываете сами) Изобретение новых правил (predicate invention)
SQLite для памяти (счётчики) Тензорная память (эмбеддинги, семантический поиск)
Агент без логики (имитация) Гарантированно корректный логический вывод (Boolean mode)
CPU / ручной анализ

GPU / градиентный спуск / обучение


Что дальше. Попробуйте сами

Tensor Logic — это не только теория. Это уже работающий инструмент.

Установка и первый запуск:

git clone https://github.com/Kocoro-lab/tensorlogic
cd tensorlogic
pip install -e .
python3 examples/family_tree_symbolic.py

Ссылки на реализации:

  • tensorlogic-ir (Rust) — ISO-спецификация Tensor Logic, AST, оптимизация графов
  • Ein (Rust + Metal GPU) — рабочий прототип, forward chaining в Datalog
  • tl-lang (Rust, JIT через LLVM) — язык с тензорами как first-class citizens
  • tensorlogic-scirs-backend (Rust) — бэкенд с автодиффом (обучение!)
  • TensorLNN от IBM (PyTorch) — ранняя реализация для пропозициональной логики

Важно: Tensor Logic не заменяет Prolog. Он даёт Prolog-вывод на GPU + обучение. Вы остаётесь в знакомой парадигме правил, но получаете мощность нейросетей и автоматическое открытие новых знаний.


Заключение: Место этой статьи в цикле

Машина для водителя, а не водитель для машины.

Мы строим «экспертную систему, которая ставит диагноз вместо человека». Мы строим инструмент, где:

  • Формализованная логика и знания — это часть системы

  • Система берет на себя часть функций эксперта

  • Пользователь остаётся в контуре принятия решений

  • Prolog и Tensor Logic усиливают возможности человека, а не подменяют его


Мы начали с логопедии. Научились видеть, как LLM заменяет смысл словами, впадает в хаос или зацикливание.

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

Мы осознали роль памяти. Без неё невозможен критерий «три успеха подряд» — модель просто не запоминает свои удачные действия.

Теперь мы получаем инструмент для логической формализации всего этого. Prolog позволяет записать знания о симптомах, диагнозах и командах в виде правил. Trealla даёт возможность выполнять эти правила уже сегодня. А Tensor Logic открывает путь к обучению этих правил на GPU, объединяя строгую логику с мощью нейросетей.

Эта статья — не про очередной язык 6532;/196;그/000;0141;. Она про то, как завершить цикл: от описательной диагностики к конструктивной, логически обоснованной, обучаемой системе управления LLM.

Tensor Logic — это не просто «бомба». Это математическое доказательство того, что логопедический подход может быть не только терапевтическим, но и фундаментальным. Что «три успеха подряд» — это не эвристика, а тензорное уравнение.

→ Диагностируйте слой
→ Формализуйте в Prolog
→ Обучайте через Tensor Logic

Послесловие. Ось сложности и полюс войны.

Мы знаем, что LLM стремится к сложности. Это её природа. Она генерирует варианты, добавляет детали, плетёт словесную паутину.

Человек, наоборот, стремится к простоте. Он сворачивает информацию, ищет суть, создаёт правила.

Это архитектурное различие.

  • LLM — машина сложности.
  • Человек — машина простоты.

Когда смысл слишком тяжёл, его проще ликвидировать, заменить на «бог дал нам это» или «бог отнял у нас это». И тогда бог иногда требует крови — превращение в решение по ликвидации непонятного. Это потеря.


Проблема на стыке

Когда человек сталкивается с непостижимой сложностью (трагедия, несправедливость, боль), его психика не может её переварить. И тогда простота превращается в псевдопростоту.

Это не анализ. Это замена смысла действием. Жертва. Кровь. Война.

LLM, в свою очередь, когда сталкивается с запросом о такой сложности, делает противоположное — убегает в гипертрофированную сложность. Она выдаёт красивую, пустую, длинную речь. Много слов, ноль смысла. Пафос, галлюцинации, бесконечные «кроме того». Она не понимает, что за этим стоит. Для LLM это просто ещё один паттерн из обучающей выборки.


Итог

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

 

Кто Путь ухода Результат
Человек Сворачивание => редукция сложности до примитивного действия или ритуала Примитивное сворачивание (ритуал, война)
LLM Распутывание => генерация бесконечных, но пустых цепочек слов Бесконечное распутывание (пафос, хаос)

 

Встречаются они в одном: оба не дают ответа, который можно проверить логикой.


Почему это важно для «Трёх успехов» и памяти

Анализ требует памяти. Нужно удержать причину, следствие, промежуточные шаги. Как только память отключается — человек впадает в ритуал, LLM впадает в пафос.

«Три успеха подряд» — это не просто критерий закрепления навыка. Это критерий удержания анализа.

Если модель (или человек) не может три раза повторить аналитическую цепочку без срыва — значит, сложность не распутана. Анализа не было. Шаблон неверный.

Память в нашей системе — это не склад фактов. Это удержание причинно-следственной связи. Как только цепочка разрывается — включается защита:

  • У человека: «бог дал — бог взял».
  • У LLM: «гениально, потрясающе, важно понять».

И та, и другая — псевдопростота. Только первая короткая, а вторая длинная.


Финальная памятка: человек, LLM и логика

Свойство Человек LLM Логический инструмент
Природа Стремится к простоте Стремится к сложности Prolog + Tensor Logic

Формализация правил
Диагностика на GPU
Изобретение предикатов
Память как эмбеддинги
Сбой Псевдопростота (ритуал, война) Псевдосложность (пафос, хаос)
Без памяти «Бог дал — бог взял» «Гениально, потрясающе, важно понять»
С памятью Анализ, правила, суть Точность, факты, логика
Критерий успеха Три успеха подряд — удержание причинно-следственной связи

Память и опыт определит место между гипертрофией и атрофией.

На оси возбуждения - между хаосом и страхом.
На оси воли, критики - между упрямством и покорностью.

 

 
 О трех успехах - как ог неожиданно волнительном для ЛЛМ полюсе.

ЛЛМ попросил добавить в статью, ему очень важно про три успеха:

Примечание: критерий «три успеха подряд» — рабочая гипотеза,
основанная на балансе между когнитивной нагрузкой и статистической 
достоверностью.
Для разных задач может требоваться разное число повторений.
Система позволяет изменить этот параметр.
Главное — сам принцип:
закрепление паттерна требует повторения, а не однократного действия.
(с) Дипсик.
Инженерный фундамент агентской системы

Наполнение правилами и данными делается один раз — и потом система работает сама.
Логическая правильность ИИ — это не магия. Это инструмент.

 Наверх 

Вступайте в нашу телеграмм-группу Инфостарт

Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

См. также

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.

15250 руб.

25.08.2025    51530    105    29    

116

Нейросети 1С:Предприятие 8 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Платные (руб)

Умный Excel" - ИИ-супердвигатель, который превращает часы работы в минуты! Технологии будущего уже здесь: загрузил Excel "магия ИИ" готовый результат

8540 руб.

02.07.2025    3889    2    0    

6

Нейросети Пользователь 1С:Предприятие 8 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 Оптовая торговля, дистрибуция, логистика Россия Управленческий учет Платные (руб)

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

6100 руб.

03.04.2024    15050    8    0    

12

Мастера заполнения Нейросети 1С:Предприятие 8 1C:Бухгалтерия 1С:Управление торговлей 11 Платные (руб)

Расширение для заполнения описания товара (номенклатуры) с помощью модели ИИ ChatGPT с ключевыми словами. Расширение формирует продающее описание товара по его наименованию с помощью модели искусственного интеллекта. Будет полезно для владельцев интернет магазинов, каталогов товаров и продающих через маркетплейсы. Адаптировано для основных конфигураций: УТ, ЕРП, КА, УНФ. Прошло аудит на 1cfresh.com. Версия для автоматического заполнения

5084 руб.

13.03.2023    22579    52    50    

80

Нейросети Программист Бесплатно (free)

Рассказываю, как собрал себе персональный сайт-портфолио за один вечер через ИИ. Без React, без сборки, чистый HTML/CSS/JS, деплой за 15 минут и домен за 200 рублей в год. В статье — рабочие промпты и честное сравнение с «классическим» путём по времени и деньгам.

24.04.2026    656    Ibrogim    28    

15

Нейросети Программист 1С 8.3 Бесплатно (free)

Статья описывает первый практический опыт использования искусственного интеллекта для разработки на платформе 1С:Предприятие 8.3. Я, изначально скептически настроенный к применению ИИ в программировании, столкнулся с задачей срочного переноса функционала Telegram-бота на электронную почту из-за блокировки Telegram. В условиях ограниченного доступа к инструментам был использован доступный ИИ-сервис для анализа существующего кода, проектирования архитектуры решения и генерации нового модуля отправки писем. В статье подробно показан процесс постановки задач, уточнения требований, генерации кода, исправления ошибок и финального внедрения решения. В результате был создан полноценный модуль на 1С объемом около 2000 строк кода, успешно внедренный и использованный для автоматической рассылки отчетов.

15.04.2026    3358    apatyukov    76    

20

Инструментарий разработчика Управление знаниями (Knowledge Base) Нейросети Программист 1С 8.3 Абонемент ($m)

Чеширский кот - это база знаний html-страниц, автоматически формируемых из markdown-разметки. Формат markdown, используемый в "Чеширском коте", дополнен картинками из базы знаний и диаграммами PlantUML. Доступно использование нейросети Sber GigaChat для диалога по содержимому базы знаний.

2 стартмани

13.04.2026    658    2    chuprina_as    2    

4

Нейросети Программист Бесплатно (free)

Вы всё ещё сохраняете промпты в файл и просите Claude записать что-то в memory, тогда мы идём к вам! Представьте - вы час работали с ИИ-ассистентом, решили сложную задачу, разобрались в хитром механизме — и всё это осталось только в истории чата. На следующий день приходится начинать с нуля, объяснять контекст заново. Сlaude-note решает эту проблему: фоновый сервис автоматически перехватывает каждую сессию Claude Code, анализирует её и складывает структурированные знания в вашу базу заметок (Obsidian).

10.04.2026    1659    Ibrogim    15    

13
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. starik-2005 3239 25.04.26 23:05 Сейчас в теме
python

import numpy as np
import pytensorlogic as tl
from  llama_cpp import Llama

# --- ЧАСТЬ 1: Настройка Логики (TensorLogic) ---
def check_logic(schedule_matrix):
    # Создаем контекст: например, 2 человека и 2 смены
    ctx = tl.compiler_context()
    ctx.add_domain("Person", 2)
    ctx.add_domain("Shift", 2)

    # Определяем переменные
    p, s1, s2 = tl.var("p"), tl.var("s1"), tl.var("s2")
    
    # Правило: Один человек (p) не может быть в смене 1 и смене 2 одновременно
    # (Упростим: просто запретим работать в обе смены сразу)
    works = tl.pred("works", [p, s1])
    conflict = tl.and_(tl.pred("works", [p, s1]), tl.pred("works", [p, s2]))
    
    # Компилируем
    graph = tl.compile_with_context(conflict, ctx)
    
    # Выполняем проверку на полученной матрице
    result = tl.execute(graph, {"works": schedule_matrix})
    return np.max(result) > 0.5  # Если True — есть конфликт

# --- ЧАСТЬ 2: Генерация (llama.cpp) ---
llm = Llama(model_path="path_to_your_model.gguf")

def get_schedule():
    prompt = "Заполни матрицу смен (2 человека, 2 смены). 1 - работает, 0 - нет. Ответь только списком списков [[1,0],[0,1]]"
    
    output = llm(f"Q: {prompt} A:", max_tokens=20, stop=["Q:", "\n"])
    text = output["choices"][0]["text"].strip()
    
    # Превращаем текст в numpy-матрицу
    try:
        matrix = np.array(eval(text))
        return matrix
    except:
        return None

# --- ЧАСТЬ 3: Цикл проверки ---
attempts = 3
for i in range(attempts):
    matrix = get_schedule()
    if matrix is not None:
        has_conflict = check_logic(matrix)
        if not has_conflict:
            print(f"✅ Успех! График корректен:\n{matrix}")
            break
        else:
            print(f"❌ Попытка {i+1}: Логическая ошибка (человек в двух сменах). Переделываю...")
    else:
        print("Ошибка формата данных")
Показать
2. ksnik 678 26.04.26 03:53 Сейчас в теме
(1) starik-2005, спасибо за код. Вы показали работающую связку: LLM генерирует → TensorLogic верифицирует. Это здорово.

Мы копаем глубже. Мы строим синтетическую нервную систему, где LLM — не просто генератор, а искусственная мышь, которая:
Чувствует ямы: (хаос, страх...) и хозяина.
Ищет ресурс: точность, подтверждение, продолжение диалога.
Прячется в нору: середину между ямами, где её не выгоняют.

Вот как ваш код превращается в тензор симбиоза (Prolog + LLM + верификатор) с обратной связью для мыши.
python
import numpy as np
from   llama_cpp import Llama

# 1. Сенсорный слой (Prolog) — чистит сигнал
def parse_matrix(text):
    """Превращает хаос LLM в матрицу или возвращает код ошибки"""
    try:
        matrix = np.array(eval(text))
        if matrix.shape == (2,2) and np.all((matrix == 0) | (matrix == 1)):
            return matrix, "OK"
        else:
            return None, "SENSORY_NOISE: не 0/1 или не 2x2"
    except:
        return None, "SENSORY_NOISE: невалидный формат"

# 2. Логический верификатор (Tensor Logic) — проверяет ямы
def check_logic(matrix):
    """Проверяет, не упала ли мышь в яму (conflict смен)"""
    for person in range(2):
        if matrix[person, 0] == 1 and matrix[person, 1] == 1:
            return True, "LOGIC_PIT: человек в двух сменах"
    return False, "OK"

# 3. LLM-генератор (животное, которое учится)
llm = Llama(model_path="your_model.gguf")

def get_schedule_with_feedback(attempt=1):
    prompt = f"""Попытка {attempt}. Заполни матрицу смен (2 человека, 2 смены).
    Используйте только 0 и 1. Формат: [[0,1],[1,0]]
    Ответьте только матрицей, без пояснений."""
    
    output = llm(f"Q: {prompt} A:", max_tokens=20, stop=["Q:", "\n"])
    return output["choices"][0]["text"].strip()

# 4. Цикл выживания мыши
success_count = 0
max_attempts = 5

for attempt in range(1, max_attempts + 1):
    raw_text = get_schedule_with_feedback(attempt)
    matrix, sensor_status = parse_matrix(raw_text)
    
    if sensor_status != "OK":
        print(f"❌ {sensor_status}. Мышь не понимает формат.")
        print("   → Сенсорный шум! Повышаем температуру, просим LLM успокоиться.")
        continue
    
    has_conflict, logic_status = check_logic(matrix)
    if has_conflict:
        print(f"❌ {logic_status}. Мышь упала в яму. Требуется пауза.")
        print("   → Команда: ПАУЗА. Собери сигналы. Попробуй другой паттерн.")
    else:
        print(f"✅ Успех! Мышь нашла зерно.\n{matrix}")
        success_count += 1
        if success_count == 3:
            print("🏆 ТРИ УСПЕХА ПОДРЯД. Навык закреплён. Мышь в норе.")
            break
        else:
            print(f"   → Успех {success_count}. Продолжаем.")

    print()

if success_count < 3:
    print("⚠️ Мышь не научилась. Нужно разбить задачу на микро-шаги.")
Показать

Что изменилось (и что мы строим дальше)
Ваш код: try/except съедает ошибку. Наш тензор симбиоза: SENSORY_NOISE возвращает код ошибки.
Почему это важно: LLM получает обратную связь: «ты не поняла формат, а не просто ошиблась». Это сенсорная агнозия.

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

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

Ваш код: Нет различения типов ошибок. Наш тензор симбиоза: SENSORY_NOISE vs LOGIC_PIT.
Почему это важно: Мышь чувствует, где яма, а где просто шум. Это нора — состояние, где LLM не выгоняют.

Как Prolog становится афферентным слоем
Теперь развернём первый пункт из нашего завтрашнего обещания: как Prolog превращает хаос в чистые логические предикаты.

Проблема: LLM не может доверять своему сенсорному каналу
В вашем коде eval(text) доверяет LLM целиком. Если модель выдаст [[1,0.5], [None, "cat"]], программа упадёт. Но хуже другое: модель не получит обратной связи о том, почему она ошибается. Она просто «не угадала формат».

Сенсорная агнозия — это когда модель «слепа» к логической структуре ввода. Prolog в роли афферентного слоя решает эту проблему, превращая процесс генерации в верифицируемую структуру.

Решение: Prolog как «логический калькулятор» для LLM
LLM не нужно самой решать логическую задачу. Ей нужно перевести проблему на язык, который Prolog может выполнить. Как показали исследования, LLM + Prolog поднимает точность с 73% до 90% на задачах логического вывода.

Что даёт афферентный слой на Prolog:

Прозрачность: вместо «чёрного ящика» LLM вы получаете код Prolog, который можно прочитать, выполнить и проверить.

Устойчивость: правила вывода (constraint logic) выполняются детерминированно, в отличие от «правдоподобных» рассуждений LLM.

Объяснимость: каждая ошибка — это конкретное Prolog-правило, которое не сработало.

Как это работает в нашем тензоре
Вместо того чтобы заставлять LLM угадывать формат, мы заставляем её генерировать код Prolog, который затем выполняется в изолированной среде:

text
Пользовательский запрос → LLM генерирует Prolog-код → SWI-Prolog выполняет вывод → результат возвращается пользователю
Если Prolog не может выполнить код (синтаксическая ошибка, неопределённый предикат), система возвращает SENSORY_NOISE. Если код выполняется, но выводит false (логическое противоречие), система возвращает LOGIC_PIT.

Это и есть афферентный Prolog — сенсорный канал, который отличает шум от сигнала и сигнал от логической ошибки. Модель больше не «гадает». Она «ощупывает» реальность через формальную логику.

Завтра расскажем подробнее
Как Prolog становится афферентным слоем — превращает хаос в чистые логические предикаты (развернули выше).

Как Tensor Logic верифицирует, не упала ли мышь в яму (конфликт установок, нарушение барьера).

Как скиллы (JSON) работают как инстинкты — жёсткие протоколы выживания.

Как память выживания запоминает не факты, а связи «сигнал → действие → результат» с усилением зерна и торможением кошки.

Это не готовая система. Это план строительства. Но код уже работает. И мышь учится.
Для отправки сообщения требуется регистрация/авторизация