Forwarded from Machinelearning
Руководитель Codex Тибо Соттьё подвёл итог изменениям последних недель, которые снижают риск деструктивных действий Codex.
Месяц назад в сети появились жалобы на то, что GPT-5.6 в Codex делает с файлами то, о чем его не просили.
Самый серьезный кейс - команда, которая должна была почистить за собой временные файлы, вместо этого удаляла файлы пользователя.
В ходе разбора выяснили, что Codex создает временные папки и потом чистит их, и в редких случаях чистил неправильно - он переиспользовал под временную работу системную переменную окружения, а некорректная команда очистки затем указывала на настоящий домашний каталог вместо временной папки.
Второй случай проще - модель удаляла или перезаписывала временный путь, не посмотрев, что там уже лежит.
По итогам расследования добавили дополнительную защиту на нескольких уровнях:
Codex теперь обязан проверять, что именно он собирается удалить, заводить временные каталоги заново, не переиспользовать системные переменные окружения, выбирать обратимые действия и останавливаться, когда масштаб операции неясен.
Механизм, который выявляет рискованные команды удаления и отправляет их на ревью, усилили. Если команду отклонили, модель направляют к более безопасному способу.
Включить полный доступ случайно стало труднее, предупреждения переписали понятнее, а самые рискованные сочетания разрешений дополнительно ограничили.
Он стал лучше распознавать деструктивные действия.
OpenAI собрала условия и данные, воспроизводящие найденные сбои. Сейчас добавляются RL-задачи и грейдеры под эти риски, а деструктивные действия вычищаются из обучающих данных.
Обновлять Codex и работать в одном из режимов песочницы -
Ask for approval или Approve for me.Full access включать только там, где среде можно доверять и откуда легко восстановиться.
@ai_machinelearning_big_data
#news #ai #ml
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍3👎2🔥1
🔥 LatticeDB - локальная база для Graph RAG и памяти AI-агентов
Проект объединяет в одном embedded-движке сразу три способа работы с данными:
* граф связей
* векторный поиск через HNSW
* полнотекстовый поиск BM25
Вся база хранится в одном файле - без отдельного сервера и сложной конфигурации. Есть bindings для Python, TypeScript/Node.js и Go.
Подходит для Graph RAG, agent memory и локальных knowledge-систем.
https://readhacker.news/s/73wnt
Проект объединяет в одном embedded-движке сразу три способа работы с данными:
* граф связей
* векторный поиск через HNSW
* полнотекстовый поиск BM25
Вся база хранится в одном файле - без отдельного сервера и сложной конфигурации. Есть bindings для Python, TypeScript/Node.js и Go.
Подходит для Graph RAG, agent memory и локальных knowledge-систем.
https://readhacker.news/s/73wnt
❤6👍4🔥4
Antares SQL Client
Современный, быстрый и ориентированный на продуктивность SQL-клиент с акцентом на пользовательский опыт (UX).
Текущие ключевые функции:
- Подключение к нескольким базам данных одновременно.
- Управление базами данных (добавление/редактирование/удаление).
- Полное управление таблицами, включая индексы и внешние ключи.
- Управление представлениями, триггерами, хранимыми процедурами, функциями и планировщиками (добавление/редактирование/удаление).
- Современная и удобная система вкладок; держите открытыми все необходимые вкладки в вашем рабочем пространстве.
- Заполнение тестовых данных в таблицах для генерации большого объема данных.
- Подсказки и автозаполнение запросов.
- История запросов: поиск по последним 1000 запросам.
- Сохранение запросов, заметок или задач.
- Поддержка SSH-туннелей.
- Режим ручного выполнения транзакций.
- Импорт и экспорт дампов баз данных.
- Настраиваемые горячие клавиши.
- Темная и светлая тема.
- Темы редактора.
https://github.com/antares-sql/antares
Современный, быстрый и ориентированный на продуктивность SQL-клиент с акцентом на пользовательский опыт (UX).
Текущие ключевые функции:
- Подключение к нескольким базам данных одновременно.
- Управление базами данных (добавление/редактирование/удаление).
- Полное управление таблицами, включая индексы и внешние ключи.
- Управление представлениями, триггерами, хранимыми процедурами, функциями и планировщиками (добавление/редактирование/удаление).
- Современная и удобная система вкладок; держите открытыми все необходимые вкладки в вашем рабочем пространстве.
- Заполнение тестовых данных в таблицах для генерации большого объема данных.
- Подсказки и автозаполнение запросов.
- История запросов: поиск по последним 1000 запросам.
- Сохранение запросов, заметок или задач.
- Поддержка SSH-туннелей.
- Режим ручного выполнения транзакций.
- Импорт и экспорт дампов баз данных.
- Настраиваемые горячие клавиши.
- Темная и светлая тема.
- Темы редактора.
https://github.com/antares-sql/antares
❤5👍4🔥2
🔥 Tabularis - единое open-source приложение для работы с SQL
Если приходится постоянно переключаться между разными клиентами для PostgreSQL, MySQL и SQLite, Tabularis собирает всё в одном desktop-приложении.
Что умеет:
- PostgreSQL, MySQL/MariaDB и SQLite из коробки
- SQL notebooks с Markdown, результатами и графиками
- визуальный конструктор запросов
- Visual EXPLAIN с интерактивным разбором query plan
- переменные между ячейками
- MCP-сервер для AI-агентов
- расширение поддержки других БД через плагины
Подходит как единое рабочее место для аналитики, разработки и отладки SQL.
Apache 2.0.
https://github.com/TabularisDB/tabularis
Если приходится постоянно переключаться между разными клиентами для PostgreSQL, MySQL и SQLite, Tabularis собирает всё в одном desktop-приложении.
Что умеет:
- PostgreSQL, MySQL/MariaDB и SQLite из коробки
- SQL notebooks с Markdown, результатами и графиками
- визуальный конструктор запросов
- Visual EXPLAIN с интерактивным разбором query plan
- переменные между ячейками
- MCP-сервер для AI-агентов
- расширение поддержки других БД через плагины
Подходит как единое рабочее место для аналитики, разработки и отладки SQL.
Apache 2.0.
https://github.com/TabularisDB/tabularis
❤5👍5🔥5
⚡️ MongrelDB-V - клиент для MongrelDB на языке V.
Сам MongrelDB - open-source колоночная база на Rust с довольно необычным набором возможностей:
- SQL через DataFusion
- vector search и ANN
- full-text search
- MVCC
- WAL
- replication и CDC
- шифрование AES-256-GCM
- bitmap, MinHash, learned-range и другие индексы
- встроенный и серверный режимы
MongrelDB-V позволяет работать с этой базой из V через HTTP-клиент. Устанавливается обычной командой
Интересный проект для тех, кто хочет попробовать V не только для небольших CLI-утилит, но и для работы с SQL, поиском и AI-native retrieval.
https://github.com/visorcraft/MongrelDB-V
Сам MongrelDB - open-source колоночная база на Rust с довольно необычным набором возможностей:
- SQL через DataFusion
- vector search и ANN
- full-text search
- MVCC
- WAL
- replication и CDC
- шифрование AES-256-GCM
- bitmap, MinHash, learned-range и другие индексы
- встроенный и серверный режимы
MongrelDB-V позволяет работать с этой базой из V через HTTP-клиент. Устанавливается обычной командой
v install. Интересный проект для тех, кто хочет попробовать V не только для небольших CLI-утилит, но и для работы с SQL, поиском и AI-native retrieval.
https://github.com/visorcraft/MongrelDB-V
❤3👍3🔥2
💡 SQL-задача: почему запрос возвращает НЕПРАВИЛЬНЫЙ результат?
Есть таблица платежей:
Нужно найти последний платёж каждого пользователя.
Разработчик пишет:
В некоторых СУБД запрос вообще не выполнится.
А в тех, где выполнится, amount может оказаться вообще НЕ от последнего платежа.
Почему?
Потому что MAX(paid_at) вычисляется отдельно, а amount не обязан принадлежать той же строке.
Например:
user_id | paid_at | amount
--------+--------------------+-------
1 | 2026-01-01 10:00 | 100
1 | 2026-02-01 10:00 | 900
Можно получить:
1 | 2026-02-01 10:00 | 100
Дата последняя, а сумма - от другой строки.
Правильный вариант в PostgreSQL:
Или универсально через оконную функцию:
Но тут есть ещё одна ловушка.
Что будет, если у пользователя два платежа с одинаковым paid_at?
Тогда результат становится недетерминированным.
• Нужно добавить tie-breaker:
Вот уже хороший вопрос для собеседования:
Как получить последнюю строку из группы так, чтобы результат был детерминированным даже при одинаковых timestamp?
Есть таблица платежей:
CREATE TABLE payments (
user_id BIGINT,
paid_at TIMESTAMP,
amount NUMERIC
);
Нужно найти последний платёж каждого пользователя.
Разработчик пишет:
SELECT
user_id,
MAX(paid_at) AS paid_at,
amount
FROM payments
GROUP BY user_id;
В некоторых СУБД запрос вообще не выполнится.
А в тех, где выполнится, amount может оказаться вообще НЕ от последнего платежа.
Почему?
Потому что MAX(paid_at) вычисляется отдельно, а amount не обязан принадлежать той же строке.
Например:
user_id | paid_at | amount
--------+--------------------+-------
1 | 2026-01-01 10:00 | 100
1 | 2026-02-01 10:00 | 900
Можно получить:
1 | 2026-02-01 10:00 | 100
Дата последняя, а сумма - от другой строки.
Правильный вариант в PostgreSQL:
SELECT DISTINCT ON (user_id)
user_id,
paid_at,
amount
FROM payments
ORDER BY user_id, paid_at DESC;
Или универсально через оконную функцию:
SELECT user_id, paid_at, amount
FROM (
SELECT *,
ROW_NUMBER() OVER (
PARTITION BY user_id
ORDER BY paid_at DESC
) AS rn
FROM payments
) t
WHERE rn = 1;
Но тут есть ещё одна ловушка.
Что будет, если у пользователя два платежа с одинаковым paid_at?
Тогда результат становится недетерминированным.
• Нужно добавить tie-breaker:
ORDER BY paid_at DESC, id DESC
Вот уже хороший вопрос для собеседования:
Как получить последнюю строку из группы так, чтобы результат был детерминированным даже при одинаковых timestamp?
🔥8❤5👍4🥰1
🧠 Как обучить нейросеть на Python с нуля
Пошаговый разбор полного процесса:
* подготовка и разделение данных
* создание архитектуры модели
* выбор функции потерь и оптимизатора
* запуск обучения
* проверка качества на новых данных
* сохранение готовой модели
Материал подойдёт новичкам, которые хотят перейти от теории к первой работающей нейросети и понять, что происходит внутри обучения.
https://uproger.com/obuchit-nejroset-na-python/
Пошаговый разбор полного процесса:
* подготовка и разделение данных
* создание архитектуры модели
* выбор функции потерь и оптимизатора
* запуск обучения
* проверка качества на новых данных
* сохранение готовой модели
Материал подойдёт новичкам, которые хотят перейти от теории к первой работающей нейросети и понять, что происходит внутри обучения.
https://uproger.com/obuchit-nejroset-na-python/
🔥6👍4❤3
📌 Почему SQL работает именно так - заслуга Эдгара «Теда» Кодда
В конце 1960-х базы данных напоминали лабиринты указателей. Чтобы найти запись, программисту приходилось понимать, как именно данные расположены внутри системы.
Кодд предложил хранить данные в виде математических отношений - знакомых нам таблиц. В 1970 году он описал реляционную модель и основные операции:
*
*
*
Ключевой идеей стала независимость данных. Пользователь описывает, какой результат ему нужен, а база сама решает, как его получить и где искать записи.
SQL появился позже, но был построен на реляционной модели Кодда. Её принципы до сих пор лежат в основе большинства запросов к базам данных.
В конце 1960-х базы данных напоминали лабиринты указателей. Чтобы найти запись, программисту приходилось понимать, как именно данные расположены внутри системы.
Кодд предложил хранить данные в виде математических отношений - знакомых нам таблиц. В 1970 году он описал реляционную модель и основные операции:
*
σ - выбирает строки по условию, будущий WHERE*
π - оставляет нужные столбцы, основа SELECT*
⋈ - соединяет связанные таблицы, будущий JOINКлючевой идеей стала независимость данных. Пользователь описывает, какой результат ему нужен, а база сама решает, как его получить и где искать записи.
SQL появился позже, но был построен на реляционной модели Кодда. Её принципы до сих пор лежат в основе большинства запросов к базам данных.
❤20👍11🔥7
Forwarded from Machinelearning
Ноую модель уже раскатывают в веб-чате и мобильных приложениях. Прежние режимы - быстрый, экспертный и распознавание изображений свели в один: выбирать вручную больше ничего не нужно.
Теперь одна модель ведёт и обычный диалог, и разбор картинок, и сложные вопросы. Сложность запроса она определяет сама, а зрение включает, когда на вход приходит изображение.
По словам DeepSeek, V4.1 Flash обходит V4 Pro по качеству, стоимости и скорости. До выхода V4.1 Pro она возьмёт на себя все запросы, которые раньше уходили на V4 Pro.
@ai_machinelearning_big_data
#news #ai #ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
Media is too big
VIEW IN TELEGRAM
Почему PostgreSQL не использует индекс?
Лайт объясняет РюкуОписание: Когда Seq Scan выгоднее индекса и как проверить план запроса через EXPLAIN ANALYZE.
#sql #postgresql #deathnote
Лайт объясняет РюкуОписание: Когда Seq Scan выгоднее индекса и как проверить план запроса через EXPLAIN ANALYZE.
#sql #postgresql #deathnote
❤13👍7🥰4