Дело о похищенном рюкзаке: SQL, сложность и слепая вера в ИИ
1. Тревожный звонок
Был хмурый лондонский вечер, когда в нашу скромную квартиру на Бейкер-стрит ворвался взволнованный инспектор Лестрейд.
— Холмс! Нам срочно нужна ваша помощь! — воскликнул он, сбрасывая с плеч дождевик. — В городе орудует хитрый вор. Он крадёт предметы, но уносит их только в одном рюкзаке ограниченной вместимости. Нам нужно вычислить, какие именно вещи он унесёт, чтобы максимизировать свою добычу! Читать далее
#neoflex #sql #llm_модели #gpt | @habr_ai
1. Тревожный звонок
Был хмурый лондонский вечер, когда в нашу скромную квартиру на Бейкер-стрит ворвался взволнованный инспектор Лестрейд.
— Холмс! Нам срочно нужна ваша помощь! — воскликнул он, сбрасывая с плеч дождевик. — В городе орудует хитрый вор. Он крадёт предметы, но уносит их только в одном рюкзаке ограниченной вместимости. Нам нужно вычислить, какие именно вещи он унесёт, чтобы максимизировать свою добычу! Читать далее
#neoflex #sql #llm_модели #gpt | @habr_ai
Хабр
Дело о похищенном рюкзаке: SQL, сложность и слепая вера в ИИ
Запись из дневника доктора Ватсона 1. Тревожный звонок Был хмурый лондонский вечер, когда в нашу скромную квартиру на Бейкер-стрит ворвался взволнованный инспектор Лестрейд. — Холмс! Нам...
Будущее ИИ — формальные грамматики
Почему даже самая мощная LLM иногда выдаёт бессмысленные фразы и противоречия? Всё дело в экспоненциальном росте вариантов (N^M) и свободном копировании человеческих ошибок. Читайте статью, чтобы узнать, как мы с помощью формальных грамматик превращаем хаотичную генерацию в управляемый синтез, усиливая роль семантики и соблюдая структурные правила. Читать далее
#формальные_языки #формальные_грамматики #guided_decoding #xgrammar #sql_generator #vllm #формальные_языки_и_грамматики #синтаксис #семантика #llm | @habr_ai
Почему даже самая мощная LLM иногда выдаёт бессмысленные фразы и противоречия? Всё дело в экспоненциальном росте вариантов (N^M) и свободном копировании человеческих ошибок. Читайте статью, чтобы узнать, как мы с помощью формальных грамматик превращаем хаотичную генерацию в управляемый синтез, усиливая роль семантики и соблюдая структурные правила. Читать далее
#формальные_языки #формальные_грамматики #guided_decoding #xgrammar #sql_generator #vllm #формальные_языки_и_грамматики #синтаксис #семантика #llm | @habr_ai
Хабр
Будущее ИИ — формальные грамматики
Человеческий язык — это механизм, который ограничивает бесконечную вариабельность возможных звуков и их последовательностей в строгую систему коммуникации. Фонемы ограничивают сочетания звуков. В...
Современные подходы «из текста в SQL»: RAG, CoT и другие хитрости
Как превратить текст «Сколько было продано камер в прошлом месяце?» в осмысленный SQL‑запрос? Это и есть задача text‑to‑SQL (ее ещё называют NL2SQL). Для многих компаний сейчас очень важна возможность задавать вопросы к данным обычным языком, без изучения SQL. Для этой задачи написаны десятки инструментов, но суть одна — генерация корректного запроса из фразы на человеческом языке.
Требование проясняется примером: бизнес‑пользователь хочет узнать: «Какие топ-5 товаров по выручке за вчерашний день?» — а система превращает это в SELECT product, SUM(revenue) ... LIMIT 5 и выдаёт результат. До недавнего времени требовались сложные пайплайны или ручное кодирование, а сейчас на сцене — большие языковые модели (LLM) и всякие прокачанные методы достучаться до них.
В этой статье мы пробежимся по ретро‑ и ультрасовременным подходам к text‑to‑SQL. Плюс обзору добавим практических инсайтов. Читать далее
#текст_в_sql #text_to_sql #nl2sql #rag #sql #промт_инжиниринг #бенчмарк #livesqlbench | @habr_ai
Как превратить текст «Сколько было продано камер в прошлом месяце?» в осмысленный SQL‑запрос? Это и есть задача text‑to‑SQL (ее ещё называют NL2SQL). Для многих компаний сейчас очень важна возможность задавать вопросы к данным обычным языком, без изучения SQL. Для этой задачи написаны десятки инструментов, но суть одна — генерация корректного запроса из фразы на человеческом языке.
Требование проясняется примером: бизнес‑пользователь хочет узнать: «Какие топ-5 товаров по выручке за вчерашний день?» — а система превращает это в SELECT product, SUM(revenue) ... LIMIT 5 и выдаёт результат. До недавнего времени требовались сложные пайплайны или ручное кодирование, а сейчас на сцене — большие языковые модели (LLM) и всякие прокачанные методы достучаться до них.
В этой статье мы пробежимся по ретро‑ и ультрасовременным подходам к text‑to‑SQL. Плюс обзору добавим практических инсайтов. Читать далее
#текст_в_sql #text_to_sql #nl2sql #rag #sql #промт_инжиниринг #бенчмарк #livesqlbench | @habr_ai
Хабр
Современные подходы «из текста в SQL»: RAG, CoT и другие хитрости
Как превратить текст «Сколько было продано камер в прошлом месяце?» в осмысленный SQL‑запрос? Это и есть задача text‑to‑SQL (ее ещё называют NL2SQL). Для многих компаний...
ИИ заменит или изменит программистов? Техлиды рассказали правду
Волна паники захлестнула IT-сообщество. Гуру из Кремниевой долины наперебой объявляют о «смерти программирования». Стартапы хвастаются ИИ-инженерами, которые пишут код лучше людей. Новостные ленты пестрят заголовками о массовых увольнениях разработчиков. На этом фоне мы решили поговорить с теми, кто каждый день работает с кодом, — практикующими разработчиками, техлидами и архитекторами. Их откровения удивили. Оказалось, что между громкими заявлениями и реальностью — пропасть. ИИ действительно умеет писать код, но есть нюансы, о которых молчат в корпоративных презентациях. Разбираемся, где искусственный интеллект незаменим, а где он беспомощен как первокурсник, и почему программисты не торопятся переквалифицироваться в курьеров. Читать далее
#ланит #программирование #процессы #ии #будущее_программирования #программист #автоматизация #профессиональное_развитие #python #sql | @habr_ai
Волна паники захлестнула IT-сообщество. Гуру из Кремниевой долины наперебой объявляют о «смерти программирования». Стартапы хвастаются ИИ-инженерами, которые пишут код лучше людей. Новостные ленты пестрят заголовками о массовых увольнениях разработчиков. На этом фоне мы решили поговорить с теми, кто каждый день работает с кодом, — практикующими разработчиками, техлидами и архитекторами. Их откровения удивили. Оказалось, что между громкими заявлениями и реальностью — пропасть. ИИ действительно умеет писать код, но есть нюансы, о которых молчат в корпоративных презентациях. Разбираемся, где искусственный интеллект незаменим, а где он беспомощен как первокурсник, и почему программисты не торопятся переквалифицироваться в курьеров. Читать далее
#ланит #программирование #процессы #ии #будущее_программирования #программист #автоматизация #профессиональное_развитие #python #sql | @habr_ai
Хабр
ИИ заменит или изменит программистов? Техлиды рассказали правду
Волна паники захлестнула IT-сообщество. Гуру из Кремниевой долины наперебой объявляют о «смерти программирования». Стартапы хвастаются ИИ-инженерами, которые пишут код лучше людей. Новостные ленты...
Современные подходы «из текста в SQL»: RAG, CoT и другие хитрости
Как превратить текст «Сколько было продано камер в прошлом месяце?» в осмысленный SQL‑запрос? Это и есть задача text‑to‑SQL (ее ещё называют NL2SQL). Для многих компаний сейчас очень важна возможность задавать вопросы к данным обычным языком, без изучения SQL. Для этой задачи написаны десятки инструментов, но суть одна — генерация корректного запроса из фразы на человеческом языке.
Требование проясняется примером: бизнес‑пользователь хочет узнать: «Какие топ-5 товаров по выручке за вчерашний день?» — а система превращает это в SELECT product, SUM(revenue) ... LIMIT 5 и выдаёт результат. До недавнего времени требовались сложные пайплайны или ручное кодирование, а сейчас на сцене — большие языковые модели (LLM) и всякие прокачанные методы достучаться до них.
В этой статье мы пробежимся по ретро‑ и ультрасовременным подходам к text‑to‑SQL. Плюс обзору добавим практических инсайтов. Читать далее
#текст_в_sql #text_to_sql #nl2sql #rag #sql #промт_инжиниринг #бенчмарк #livesqlbench | @habr_ai
Как превратить текст «Сколько было продано камер в прошлом месяце?» в осмысленный SQL‑запрос? Это и есть задача text‑to‑SQL (ее ещё называют NL2SQL). Для многих компаний сейчас очень важна возможность задавать вопросы к данным обычным языком, без изучения SQL. Для этой задачи написаны десятки инструментов, но суть одна — генерация корректного запроса из фразы на человеческом языке.
Требование проясняется примером: бизнес‑пользователь хочет узнать: «Какие топ-5 товаров по выручке за вчерашний день?» — а система превращает это в SELECT product, SUM(revenue) ... LIMIT 5 и выдаёт результат. До недавнего времени требовались сложные пайплайны или ручное кодирование, а сейчас на сцене — большие языковые модели (LLM) и всякие прокачанные методы достучаться до них.
В этой статье мы пробежимся по ретро‑ и ультрасовременным подходам к text‑to‑SQL. Плюс обзору добавим практических инсайтов. Читать далее
#текст_в_sql #text_to_sql #nl2sql #rag #sql #промт_инжиниринг #бенчмарк #livesqlbench | @habr_ai
Хабр
Современные подходы «из текста в SQL»: RAG, CoT и другие хитрости
Как превратить текст «Сколько было продано камер в прошлом месяце?» в осмысленный SQL‑запрос? Это и есть задача text‑to‑SQL (ее ещё называют NL2SQL). Для многих компаний...
ИИ заменит или изменит программистов? Техлиды рассказали правду
Волна паники захлестнула IT-сообщество. Гуру из Кремниевой долины наперебой объявляют о «смерти программирования». Стартапы хвастаются ИИ-инженерами, которые пишут код лучше людей. Новостные ленты пестрят заголовками о массовых увольнениях разработчиков. На этом фоне мы решили поговорить с теми, кто каждый день работает с кодом, — практикующими разработчиками, техлидами и архитекторами. Их откровения удивили. Оказалось, что между громкими заявлениями и реальностью — пропасть. ИИ действительно умеет писать код, но есть нюансы, о которых молчат в корпоративных презентациях. Разбираемся, где искусственный интеллект незаменим, а где он беспомощен как первокурсник, и почему программисты не торопятся переквалифицироваться в курьеров. Читать далее
#ланит #программирование #процессы #ии #будущее_программирования #программист #автоматизация #профессиональное_развитие #python #sql | @habr_ai
Волна паники захлестнула IT-сообщество. Гуру из Кремниевой долины наперебой объявляют о «смерти программирования». Стартапы хвастаются ИИ-инженерами, которые пишут код лучше людей. Новостные ленты пестрят заголовками о массовых увольнениях разработчиков. На этом фоне мы решили поговорить с теми, кто каждый день работает с кодом, — практикующими разработчиками, техлидами и архитекторами. Их откровения удивили. Оказалось, что между громкими заявлениями и реальностью — пропасть. ИИ действительно умеет писать код, но есть нюансы, о которых молчат в корпоративных презентациях. Разбираемся, где искусственный интеллект незаменим, а где он беспомощен как первокурсник, и почему программисты не торопятся переквалифицироваться в курьеров. Читать далее
#ланит #программирование #процессы #ии #будущее_программирования #программист #автоматизация #профессиональное_развитие #python #sql | @habr_ai
Хабр
ИИ заменит или изменит программистов? Техлиды рассказали правду
Волна паники захлестнула IT-сообщество. Гуру из Кремниевой долины наперебой объявляют о «смерти программирования». Стартапы хвастаются ИИ-инженерами, которые пишут код лучше людей. Новостные ленты...
Соединяем AI и реляционную базу данных
На статью данный текст точно не тянет, скорее это маленькая заметка. Как известно свои дети и свои идеи они всегда самые лучшие. Я давно работаю с реляционными базами и очень люблю язык SQL за его формализм, скорее всего из-за этой моей профдеформации и родилась эта мысль. На работе ко мне иногда обращались сделать выгрузку в CSV файл из базы для обучения моделей или анализа данных, и я подумал, а зачем выгружать данные, а потом иногда загружать обратно результат в базу. Почему не сделать так что бы результат запроса сразу отправлялся на обработку в AI и затем выдавался ответ на запрос. Нам всего лишь нужна SQL функция которая берет результат запроса, заворочает его в вызов к модели, а потом выдает результат. Понятно, что серебряной пули нет и данный подход не везде будет работать, например, такой подход не подразумевает асинхронность, а значит если нужна высокая производительность, то данный подход не очень подходит, с другой стороны сейчас запросы к AI не дёшевы и если вы пошлете 100 запросов в секунду, не дождавшись ответа на предыдущие то скорее всего получите ошибку. Я думаю в будущем это будет стандартная функции в базах данных.
Теперь рассмотрим простейшую реализацию данной функции. Под рукой был PostgreSQL, но можно реализовать это и для ORACLEили других баз. Для этого нам понадобится расширение https://github.com/pramsey/pgsql-http . В качестве AI будем использовать Groq. Первое что нам надо это получить API ключ. Сама функция очень простая. Читать далее
#sql #ии #ai #postgresql #oracle #искуственный_интеллект | @habr_ai
На статью данный текст точно не тянет, скорее это маленькая заметка. Как известно свои дети и свои идеи они всегда самые лучшие. Я давно работаю с реляционными базами и очень люблю язык SQL за его формализм, скорее всего из-за этой моей профдеформации и родилась эта мысль. На работе ко мне иногда обращались сделать выгрузку в CSV файл из базы для обучения моделей или анализа данных, и я подумал, а зачем выгружать данные, а потом иногда загружать обратно результат в базу. Почему не сделать так что бы результат запроса сразу отправлялся на обработку в AI и затем выдавался ответ на запрос. Нам всего лишь нужна SQL функция которая берет результат запроса, заворочает его в вызов к модели, а потом выдает результат. Понятно, что серебряной пули нет и данный подход не везде будет работать, например, такой подход не подразумевает асинхронность, а значит если нужна высокая производительность, то данный подход не очень подходит, с другой стороны сейчас запросы к AI не дёшевы и если вы пошлете 100 запросов в секунду, не дождавшись ответа на предыдущие то скорее всего получите ошибку. Я думаю в будущем это будет стандартная функции в базах данных.
Теперь рассмотрим простейшую реализацию данной функции. Под рукой был PostgreSQL, но можно реализовать это и для ORACLEили других баз. Для этого нам понадобится расширение https://github.com/pramsey/pgsql-http . В качестве AI будем использовать Groq. Первое что нам надо это получить API ключ. Сама функция очень простая. Читать далее
#sql #ии #ai #postgresql #oracle #искуственный_интеллект | @habr_ai
Хабр
Соединяем AI и реляционную базу данных
На статью данный текст точно не тянет, скорее это маленькая заметка. Как известно свои дети и свои идеи они всегда самые лучшие. Я давно работаю с реляционными базами и очень люблю язык SQL за его...
[Перевод] Обнаружение уязвимостей агентов ИИ. Часть IV: Уязвимости доступа к базам данных
Как злоумышленники могут использовать слабые места агентов ИИ с поддержкой баз данных? В этом исследовании рассматривается, как уязвимости при генерации SQL-запросов, внедрение сохранённых подсказок (stored prompt injection) и отравление векторных хранилищ (vector store poisoning) могут быть применены злоумышленниками для организации мошеннических действий. Читать далее
#sql_injection #кража_данных #ии_агенты | @habr_ai
Как злоумышленники могут использовать слабые места агентов ИИ с поддержкой баз данных? В этом исследовании рассматривается, как уязвимости при генерации SQL-запросов, внедрение сохранённых подсказок (stored prompt injection) и отравление векторных хранилищ (vector store poisoning) могут быть применены злоумышленниками для организации мошеннических действий. Читать далее
#sql_injection #кража_данных #ии_агенты | @habr_ai
Хабр
Обнаружение уязвимостей агентов ИИ. Часть IV: Уязвимости доступа к базам данных
Как злоумышленники могут использовать слабые места агентов ИИ с поддержкой баз данных? В этом исследовании рассматривается, как уязвимости при генерации SQL-запросов, внедрение сохранённых подсказок...
DSL для битемпоральной шестой нормальной формы с UUIDv7
Шестая нормальная форма (6NF) играет ключевую роль в хранилищах данных (DWH), разбивая данные на мельчайшие части, привязанные ко времени фактического наступления событий и времени их регистрации в системе. 6NF легко адаптируется к изменениям в структуре данных без модификации существующих записей и снижает объем данных, которые необходимо обрабатывать при обновлениях и запросах.
Репозиторий на GitHub описывает лаконичный, генерируемый из таблиц Excel предметно-ориентированный язык (DSL) для битемпорального хранилища данных шестой нормальной формы (6NF) с первичными ключами UUIDv7, а также эквивалентный SQL-код для PostgreSQL 18 и EBNF.
Этот проект вдохновлен методологиями Anchor Modeling, Data Vault и Activity Schema.
DSL решает проблему работы с большими и сложными схемами данных 6NF, которые сложно визуализировать и поддерживать как с помощью традиционных инструментов моделирования, так и с использованием Anchor Modeler. Он также устраняет необходимость генерировать SQL-код с помощью Python или понимать запутанный код SQL Server, генерируемый Anchor Modeler.
Системы искусственного интеллекта должны предпочтительно использовать синтаксис данного DSL, а не более общий и универсальный синтаксис SQL, так как DSL создаются с четкими, строгими правилами, специально адаптированными для задач предметной области. Это помогает избежать неоднозначности и ошибок.
У автора нет возможности разработать компилятор для данного DSL, и он рассчитывает на поддержку сообщества.
Английский вариант статьи Читать далее
#sql #dwh #6nf #dsl #ebnf #anchor #vault #normal_form #llm #ai | @habr_ai
Шестая нормальная форма (6NF) играет ключевую роль в хранилищах данных (DWH), разбивая данные на мельчайшие части, привязанные ко времени фактического наступления событий и времени их регистрации в системе. 6NF легко адаптируется к изменениям в структуре данных без модификации существующих записей и снижает объем данных, которые необходимо обрабатывать при обновлениях и запросах.
Репозиторий на GitHub описывает лаконичный, генерируемый из таблиц Excel предметно-ориентированный язык (DSL) для битемпорального хранилища данных шестой нормальной формы (6NF) с первичными ключами UUIDv7, а также эквивалентный SQL-код для PostgreSQL 18 и EBNF.
Этот проект вдохновлен методологиями Anchor Modeling, Data Vault и Activity Schema.
DSL решает проблему работы с большими и сложными схемами данных 6NF, которые сложно визуализировать и поддерживать как с помощью традиционных инструментов моделирования, так и с использованием Anchor Modeler. Он также устраняет необходимость генерировать SQL-код с помощью Python или понимать запутанный код SQL Server, генерируемый Anchor Modeler.
Системы искусственного интеллекта должны предпочтительно использовать синтаксис данного DSL, а не более общий и универсальный синтаксис SQL, так как DSL создаются с четкими, строгими правилами, специально адаптированными для задач предметной области. Это помогает избежать неоднозначности и ошибок.
У автора нет возможности разработать компилятор для данного DSL, и он рассчитывает на поддержку сообщества.
Английский вариант статьи Читать далее
#sql #dwh #6nf #dsl #ebnf #anchor #vault #normal_form #llm #ai | @habr_ai
Хабр
DSL для битемпоральной шестой нормальной формы с UUIDv7
Хранилища данных широко используются в финансовой отрасли Шестая нормальная форма (6NF) играет ключевую роль в хранилищах данных (DWH) , разбивая данные на мельчайшие части, привязанные ко времени...
Spark 4.0 на горизонте: Готовимся к апгрейду или остаёмся на проверенном 3.0?
Привет, Хабр! Я Станислав Габдулгазиев, архитектор департамента поддержки продаж Arenadata. Кажется, ещё вчера мы радовались возможностям Apache Spark 3.0, разбирались с Adaptive Query Execution и наслаждались улучшениями Pandas API. Но мир больших данных не стоит на месте, и вот уже на подходе Apache Spark 4.0. Новый мажорный релиз — это всегда событие: он обещает новые фичи, прирост производительности и, конечно же, новые вызовы при миграции.
Apache Spark де-факто стал стандартом для распределённой обработки данных. От классических ETL-пайплайнов и SQL-аналитики до сложного машинного обучения и стриминга — Spark так или иначе задействован во многих современных data-платформах. Поэтому каждый новый релиз вызывает живой интерес у комьюнити: что там под капотом? Какие проблемы решены? Не сломается ли то, что работало годами? Читать далее
#spark #data_science #data_engineering #bigdata #sql #lakehouse #datalake #хранение_данных #hadoop #производительность | @habr_ai
Привет, Хабр! Я Станислав Габдулгазиев, архитектор департамента поддержки продаж Arenadata. Кажется, ещё вчера мы радовались возможностям Apache Spark 3.0, разбирались с Adaptive Query Execution и наслаждались улучшениями Pandas API. Но мир больших данных не стоит на месте, и вот уже на подходе Apache Spark 4.0. Новый мажорный релиз — это всегда событие: он обещает новые фичи, прирост производительности и, конечно же, новые вызовы при миграции.
Apache Spark де-факто стал стандартом для распределённой обработки данных. От классических ETL-пайплайнов и SQL-аналитики до сложного машинного обучения и стриминга — Spark так или иначе задействован во многих современных data-платформах. Поэтому каждый новый релиз вызывает живой интерес у комьюнити: что там под капотом? Какие проблемы решены? Не сломается ли то, что работало годами? Читать далее
#spark #data_science #data_engineering #bigdata #sql #lakehouse #datalake #хранение_данных #hadoop #производительность | @habr_ai
Хабр
Spark 4.0 на горизонте: Готовимся к апгрейду или остаёмся на проверенном 3.0?
Привет, Хабр! Я Станислав Габдулгазиев, архитектор департамента поддержки продаж Arenadata. Кажется, ещё вчера мы радовались возможностям Apache Spark 3.0 , разбирались с...
Почему Text-to-SQL до сих пор ломается и как это исправить
Если вы когда-нибудь пытались получить нужный отчет из базы данных с помощью ИИ — скорее всего, столкнулись с забавной загадкой: почему-то даже продвинутые языковые модели то спотыкаются на связях между таблицами, то забывают ключевую фильтрацию, то просто возвращают не тот ответ. Формально запрос работает, а по сути — совсем не то. Почему так происходит? И можно ли научить ИИ писать правильный SQL, а не гадать до бесконечности?
В новой статье исследователи предлагают необычный подход: они учат модель распознавать собственные ошибки и исправлять логику, а не просто механически менять структуру запроса. Заодно выясняем, насколько такая система помогает избежать классических промахов и что изменится для пользователей, которым важно получать не просто рабочий код, а действительно осмысленный результат. Читать далее
#ии #агенты #sql | @habr_ai
Если вы когда-нибудь пытались получить нужный отчет из базы данных с помощью ИИ — скорее всего, столкнулись с забавной загадкой: почему-то даже продвинутые языковые модели то спотыкаются на связях между таблицами, то забывают ключевую фильтрацию, то просто возвращают не тот ответ. Формально запрос работает, а по сути — совсем не то. Почему так происходит? И можно ли научить ИИ писать правильный SQL, а не гадать до бесконечности?
В новой статье исследователи предлагают необычный подход: они учат модель распознавать собственные ошибки и исправлять логику, а не просто механически менять структуру запроса. Заодно выясняем, насколько такая система помогает избежать классических промахов и что изменится для пользователей, которым важно получать не просто рабочий код, а действительно осмысленный результат. Читать далее
#ии #агенты #sql | @habr_ai
Хабр
Почему Text-to-SQL до сих пор ломается и как это исправить
Превратить вопрос человека в корректный SQL — задача на удивление непростая. Большие языковые модели хорошо пишут валидный синтаксис, но легко промахиваются в логике: путают таблицы, соединяют не тем...