Forwarded from эйай ньюз
В Vesuvius Challenge впервые прочитали весь обуглившийся свиток
Из-за того что папирус разлагается за несколько сотен лет, за тысячелетия было утеряно большинство текстов из той эпохи. Геркуланумским папирусам в каком-то смысле повезло — из-за извержения Везувия две тысячи лет назад свитки обуглились и были погребены, что позволило им сохраниться.
Уже в наше время вышло сделать трёхмерные сканы свитков при помощи рентгена и использовать нейросети для их "виртуального разворачивания". Таким образом в 2023 году победителям Vesuvius Challenge удалось прочитать небольшой отрывок из одного папируса, после чего нескольких участников наняли заниматься этим на постоянной основе, что привело к реконструкции содержимого всего свитка.
К сожалению, большая часть PHerc. 1667, расшифрованного свитка, была физически уничтожена во время нескольких попыток открыть его в 19 и 20 веке, так что из 19-24 сантиметров свитка, физически уцелело лишь 8. По нему понятно, что это стоический текст датированный 2 веком до нашей эры, у которого удалось идентифицировать автора — Аристокреона, ученика известного стоического философа Хрисиппа.
Остались ещё сотни свитков которые ждут своего часа, команда и не думает останавливаться. Новый текст из свитков в ближайшие годы станет регулярным событием.
Блогпост
@ai_newz
Из-за того что папирус разлагается за несколько сотен лет, за тысячелетия было утеряно большинство текстов из той эпохи. Геркуланумским папирусам в каком-то смысле повезло — из-за извержения Везувия две тысячи лет назад свитки обуглились и были погребены, что позволило им сохраниться.
Уже в наше время вышло сделать трёхмерные сканы свитков при помощи рентгена и использовать нейросети для их "виртуального разворачивания". Таким образом в 2023 году победителям Vesuvius Challenge удалось прочитать небольшой отрывок из одного папируса, после чего нескольких участников наняли заниматься этим на постоянной основе, что привело к реконструкции содержимого всего свитка.
К сожалению, большая часть PHerc. 1667, расшифрованного свитка, была физически уничтожена во время нескольких попыток открыть его в 19 и 20 веке, так что из 19-24 сантиметров свитка, физически уцелело лишь 8. По нему понятно, что это стоический текст датированный 2 веком до нашей эры, у которого удалось идентифицировать автора — Аристокреона, ученика известного стоического философа Хрисиппа.
Остались ещё сотни свитков которые ждут своего часа, команда и не думает останавливаться. Новый текст из свитков в ближайшие годы станет регулярным событием.
Блогпост
@ai_newz
Forwarded from Node.JS [ru] | Серверный JavaScript
Когда await превращается в троттлинг: микрозадачи, которые убивают latency
Event Loop в Node.js — штука предсказуемая. Цикл фаз: таймеры, I/O, poll, check, close. И между каждой макротаской прогоняются все микротаски, которые накопились. Каждый await создаёт микротаску. В спокойном микросервисе это незаметно, но под нагрузкой очередь микрозадач переполняет Event Loop, вызывая рост латентности без нагрузки на CPU.
Проблема: microtask queue overflow
Представь: async-функция в цикле обрабатывает пачку данных:
Каждая итерация пушит микротаску. Под нагрузкой очередь вырастает до десятков тысяч. Event Loop не успевает делать тики — latency растёт, хотя CPU свободен. Типичная ошибка: думать, что async всегда безопасен, и не замечать накладных расходов.
Диагностика: как найти виновника
Симптомы:
* латентность скачет под нагрузкой, но синхронные операции легковесные
* Event Loop utilization показывает всплески в фазе microtask
* таймеры и сокеты отвечают с задержкой, хотя процессор не на 100%
Для диагностики используй:
*
* логирование времени обработки микротаски через хук
Оптимизация: убираем лишние await
1. Не делай await в цикле, если функция синхронная. Вместо:
Просто:
2. Используй
3. Избегай
4. Тяжёлые операции уноси в фоновую очередь (Bull или BullMQ): не грузи Event Loop тем, что можно сделать отдельно.
Почему это критично в микросервисах?
При 5000 RPS и 20 микрозадачах на каждый запрос очередь вырастает до 100к. Чистка занимает миллисекунды — для highload это вечность. Практический совет: если функция могла быть синхронной — не делай её async. async — это не модно, это накладные расходы.
Вывод:
Диагностируй перегрузку Event Loop через мониторинг задержки, а оптимизируй — удалением лишних await и контролем конкурентности в циклах.
Event Loop в Node.js — штука предсказуемая. Цикл фаз: таймеры, I/O, poll, check, close. И между каждой макротаской прогоняются все микротаски, которые накопились. Каждый await создаёт микротаску. В спокойном микросервисе это незаметно, но под нагрузкой очередь микрозадач переполняет Event Loop, вызывая рост латентности без нагрузки на CPU.
Проблема: microtask queue overflow
Представь: async-функция в цикле обрабатывает пачку данных:
async function processBatch(items) {
for (const item of items) {
await processOne(item);
}
}Каждая итерация пушит микротаску. Под нагрузкой очередь вырастает до десятков тысяч. Event Loop не успевает делать тики — latency растёт, хотя CPU свободен. Типичная ошибка: думать, что async всегда безопасен, и не замечать накладных расходов.
Диагностика: как найти виновника
Симптомы:
* латентность скачет под нагрузкой, но синхронные операции легковесные
* Event Loop utilization показывает всплески в фазе microtask
* таймеры и сокеты отвечают с задержкой, хотя процессор не на 100%
Для диагностики используй:
*
perf_hooks.monitorEventLoopDelay() — если задержка растёт вместе с числом микрозадач* логирование времени обработки микротаски через хук
process.nextTick()Оптимизация: убираем лишние await
1. Не делай await в цикле, если функция синхронная. Вместо:
for (const item of items) await syncFunc(item);
Просто:
items.forEach(item => syncFunc(item));
2. Используй
Promise.all с контролем конкурентности:const CONCURRENCY = 10;
for (let i = 0; i < items.length; i += CONCURRENCY) {
await Promise.all(items.slice(i, i + CONCURRENCY).map(processOne));
}
3. Избегай
await с new Promise(resolve => ...) внутри циклов — отложи resolve, если возможно.4. Тяжёлые операции уноси в фоновую очередь (Bull или BullMQ): не грузи Event Loop тем, что можно сделать отдельно.
Почему это критично в микросервисах?
При 5000 RPS и 20 микрозадачах на каждый запрос очередь вырастает до 100к. Чистка занимает миллисекунды — для highload это вечность. Практический совет: если функция могла быть синхронной — не делай её async. async — это не модно, это накладные расходы.
Вывод:
Диагностируй перегрузку Event Loop через мониторинг задержки, а оптимизируй — удалением лишних await и контролем конкурентности в циклах.
Forwarded from Цифровой геноцид
Свежая книга 2025 года с разбором самых последних или не очень последних атак: что особенно зацепило взгляд - это настоящая классификация мотивации киберпреступника: хулиган, террорист, месть как побудительный мотив, аморальность как свойство, шантаж, саботаж, разведка - и разные теории, которые объясняют ту или иную преступную схему поведения киберпреступника
Кейсы показывают разные истории, например, вот кибератаки на украинские АЭС:
Согласно некоторым сообщениям, один из сотрудников энергосистемы заметил, что курсор на его компьютере начал перемещаться по экрану самостоятельно. Он попытался вернуть контроль над компьютером, но было уже поздно. Его сеанс был завершён, а 225 000 жителей оказались без света.
Атакующие тщательно планировали операцию в течение многих месяцев, сначала проводя разведку, чтобы изучить сети и получить учётные данные операторов, а затем осуществив синхронизированную атаку, напоминающую хорошо отрепетированный танец.
Задолго до событий декабря 2015 года, в течение самого 2015 года, в рамках кампании целевого фишинга (spear‑phishing) атакующие нацелились на ИТ‑персонал и системных администраторов, работавших в различных компаниях по распределению электроэнергии в Украине.
Кампания spear‑phishing заключалась в рассылке выбранным сотрудникам вредоносных писем, и при нажатии на вложение в одном из таких писем появлялось всплывающее окно с просьбой включить макросы для просмотра документа.
Включение макросов приводило к заражению их машин программой под названием BlackEnergy3.
Другие истории еще более интересные - например, пресловутая Кембридж Аналитика на фейсбуке, которая собирала данные пользователей, проблемы Линкендина, который настраивал социальные графы в других соцсетях ("Возможно вы знакомы с")
Все читать вряд ли стоит, но как сборник кейсов или иллюстраций рисков - интересно
Кейсы показывают разные истории, например, вот кибератаки на украинские АЭС:
Согласно некоторым сообщениям, один из сотрудников энергосистемы заметил, что курсор на его компьютере начал перемещаться по экрану самостоятельно. Он попытался вернуть контроль над компьютером, но было уже поздно. Его сеанс был завершён, а 225 000 жителей оказались без света.
Атакующие тщательно планировали операцию в течение многих месяцев, сначала проводя разведку, чтобы изучить сети и получить учётные данные операторов, а затем осуществив синхронизированную атаку, напоминающую хорошо отрепетированный танец.
Задолго до событий декабря 2015 года, в течение самого 2015 года, в рамках кампании целевого фишинга (spear‑phishing) атакующие нацелились на ИТ‑персонал и системных администраторов, работавших в различных компаниях по распределению электроэнергии в Украине.
Кампания spear‑phishing заключалась в рассылке выбранным сотрудникам вредоносных писем, и при нажатии на вложение в одном из таких писем появлялось всплывающее окно с просьбой включить макросы для просмотра документа.
Включение макросов приводило к заражению их машин программой под названием BlackEnergy3.
Другие истории еще более интересные - например, пресловутая Кембридж Аналитика на фейсбуке, которая собирала данные пользователей, проблемы Линкендина, который настраивал социальные графы в других соцсетях ("Возможно вы знакомы с")
Все читать вряд ли стоит, но как сборник кейсов или иллюстраций рисков - интересно
Forwarded from PSD | Дизайн-пространство
Dodo Future Week 2026. Айдентика и оформление мероприятия.
DFW 2026 - ежегодное стратегическое мероприятие, определяющее курс развития компании
Читать на дизайнерс | #кейс
DFW 2026 - ежегодное стратегическое мероприятие, определяющее курс развития компании
Читать на дизайнерс | #кейс
Forwarded from Daily Coding 🔥
🛠 Sugar - модульная библиотека для работы с нативными объектами JavaScript, расширения их прототипов и предоставления разработчикам возможности применять различные полезные функции непосредственно к переменным JS. Методы Sugar используются для самых разных целей, начиная от элементарной математики и заканчивая форматированием даты и проверкой типов.
🌍 Сайт
Daily Coding #инструменты #JavaScript & Max
🌍 Сайт
Daily Coding #инструменты #JavaScript & Max
Forwarded from PSD | Дизайн-пространство
B2B-интерфейсы перестают быть ужасными и скучными
В статье о том, почему сложные корпоративные продукты наконец становятся понятными и приятными в использовании. Продуктовый дизайн в B2B — это не просто «красивая обёртка» поверх бизнес-логики, а способ сделать сложные процессы по-настоящему человеческими.
Читать на дизайнерс | #дайджест
В статье о том, почему сложные корпоративные продукты наконец становятся понятными и приятными в использовании. Продуктовый дизайн в B2B — это не просто «красивая обёртка» поверх бизнес-логики, а способ сделать сложные процессы по-настоящему человеческими.
Читать на дизайнерс | #дайджест
Forwarded from Node.JS [ru] | Серверный JavaScript
«Тихая» утечка дескрипторов в HTTP/2: как она убивает ваш кластер Node.js
Воркер падает с EMFILE или ENOSPC. Место на диске есть,
Скорее всего, это утечка файловых дескрипторов из-за того, что HTTP/2 сессии завершаются неправильно.
В чём дело
HTTP/2 мультиплексирует несколько потоков в одно TCP-соединение. Если клиент обрывает соединение, Node.js не всегда корректно обрабатывает событие
Как найти
Простой скрипт покажет количество открытых FD:
Если число растёт, а нагрузка не меняется — утечка на месте.
Что делать
Ставить таймауты и принудительно закрывать сессию при ошибке потока:
И мониторить FD с перезапуском воркера, если порог превышен:
Без такого мониторинга вы будете гадать, почему воркеры падают без видимой причины. Таймауты, обработка ошибок потоков и перезапуск по лимиту — этого обычно хватает, чтобы проблема не возвращалась.
Вывод:
Утечка дескрипторов в HTTP/2 — системная проблема, решаемая только комбинацией таймаутов, явного закрытия сессий и проактивного мониторинга лимита FD в каждом воркере.
Воркер падает с EMFILE или ENOSPC. Место на диске есть,
lsof ничего подозрительного не показывает. Знакомая картина?Скорее всего, это утечка файловых дескрипторов из-за того, что HTTP/2 сессии завершаются неправильно.
В чём дело
HTTP/2 мультиплексирует несколько потоков в одно TCP-соединение. Если клиент обрывает соединение, Node.js не всегда корректно обрабатывает событие
close у мультиплексора. Пулы Http2Session не очищаются, дескрипторы сокетов и TLS зависают в CLOSE_WAIT. Воркер постепенно съедает лимит — обычно это 1024 или 4096 дескрипторов — и падает.Как найти
Простой скрипт покажет количество открытых FD:
ls /proc/$(pgrep -f node)/fd | wc -l
Если число растёт, а нагрузка не меняется — утечка на месте.
Что делать
Ставить таймауты и принудительно закрывать сессию при ошибке потока:
const http2 = require('http2');
const server = http2.createServer((req, res) => {});
server.on('session', (session) => {
session.setTimeout(30000);
session.on('timeout', () => session.close());
});И мониторить FD с перезапуском воркера, если порог превышен:
const cluster = require('cluster');
const fs = require('fs');
const fdThreshold = 800;
if (cluster.isWorker) {
setInterval(() => {
let fdCount;
try { fdCount = fs.readdirSync(/proc/${process.pid}/fd).length; }
catch (e) { return; }
if (fdCount > fdThreshold) {
console.error(Worker ${process.pid} has ${fdCount} FDs — restarting);
process.exit(1);
}
}, 60000);
}Без такого мониторинга вы будете гадать, почему воркеры падают без видимой причины. Таймауты, обработка ошибок потоков и перезапуск по лимиту — этого обычно хватает, чтобы проблема не возвращалась.
Вывод:
Утечка дескрипторов в HTTP/2 — системная проблема, решаемая только комбинацией таймаутов, явного закрытия сессий и проактивного мониторинга лимита FD в каждом воркере.
Forwarded from Адель и МЛь
OpenAI выкатывают своего Mythos.
GPT-5.6 - новая серия моделей: Sol - флагман, Terra и Luna поменьше и быстрее.
Terra обещают примерно на уровне GPT-5.5, но в 2 раза дешевле.
Sol тренировали с упором на agentic coding, biology/genomics и cybersecurity.
Появляются новые режимы: max reasoning effort для более глубокого reasoning и ultra mode, где модель использует subagents(!) для сложных задач.
Модель стала сильно мощнее, поэтому OpenAI делает поэтапный релиз и более жёсткие safeguards. Но по их оценке Sol не пересекает Cyber Critical threshold.
Доступ пока limited preview в API и Codex для select trusted partners.
Цены за 1M токенов:
Sol $5 input / $30 output
Terra $2.5 / $15
Luna $1 / $6.
И еще Sol на Cerebras до 750 tokens/sec планируют в июле, сначала тоже ограниченно.
https://openai.com/index/previewing-gpt-5-6-sol/
GPT-5.6 - новая серия моделей: Sol - флагман, Terra и Luna поменьше и быстрее.
Terra обещают примерно на уровне GPT-5.5, но в 2 раза дешевле.
Sol тренировали с упором на agentic coding, biology/genomics и cybersecurity.
Появляются новые режимы: max reasoning effort для более глубокого reasoning и ultra mode, где модель использует subagents(!) для сложных задач.
Модель стала сильно мощнее, поэтому OpenAI делает поэтапный релиз и более жёсткие safeguards. Но по их оценке Sol не пересекает Cyber Critical threshold.
Доступ пока limited preview в API и Codex для select trusted partners.
Цены за 1M токенов:
Sol $5 input / $30 output
Terra $2.5 / $15
Luna $1 / $6.
И еще Sol на Cerebras до 750 tokens/sec планируют в июле, сначала тоже ограниченно.
https://openai.com/index/previewing-gpt-5-6-sol/
OpenAI
Previewing GPT-5.6 Sol: a next-generation model
OpenAI previews GPT-5.6 Sol, a next-generation model with stronger capabilities in coding, science, and cybersecurity, paired with its most advanced safety stack.
Forwarded from Сиолошная
В пятницу правительство США сняло блокировку c Claude Mythos 5, разрешив предоставить ее более чем 100 американским учреждениям, включая крупные компании и правительственные агентства — Semafor
Решение, изложенное в письме, направленном в компанию Anthropic в пятницу днем, представляет собой серьезную деэскалацию в конфронтации между администрацией Трампа и компанией Anthropic.
В письме ничего не говорится о Fable 5. Источники, близкие к переговорам, заявили, что стороны также движутся в направлении выпуска Fable, хотя сроки этого пока неясны.
В соответствии с новым соглашением, «лицензия больше не потребуется для экспорта, реэкспорта или передачи внутри страны модели Claude Mythos 5 организациям, указанным в Приложении А к настоящему письму, и их иностранным сотрудникам, а также иностранным сотрудникам компании Anthropic». Так что Andrey Karpathy снова может расчехлять авторисерч на Mythos.
Решение, изложенное в письме, направленном в компанию Anthropic в пятницу днем, представляет собой серьезную деэскалацию в конфронтации между администрацией Трампа и компанией Anthropic.
В письме ничего не говорится о Fable 5. Источники, близкие к переговорам, заявили, что стороны также движутся в направлении выпуска Fable, хотя сроки этого пока неясны.
В соответствии с новым соглашением, «лицензия больше не потребуется для экспорта, реэкспорта или передачи внутри страны модели Claude Mythos 5 организациям, указанным в Приложении А к настоящему письму, и их иностранным сотрудникам, а также иностранным сотрудникам компании Anthropic». Так что Andrey Karpathy снова может расчехлять авторисерч на Mythos.
Forwarded from PSD | Дизайн-пространство