CoreInfra
رفتن به کانال در Telegram
AI × Verification → Future. Авторы консенсуса и системы репликации БД для крупнейшей социальной сети России. В 2024 года мы создали свою компанию и строим AI. В этом канале мы пишем про компанию, продукт и технологиии. https://coreinfra.ru
نمایش بیشترکشور مشخص نشده استدسته بندی مشخص نشده است
529
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-17 روز
+2730 روز
آرشیو پست ها
529
LLM – не единственный вид AI. Периодически появляются интересные альтернативные (либо дополняющие) парадигмы.
Одна из них – System One модели, плюс конкретная модель, Jev:
https://typesafe.ai/blog/introducing-system-one-models-and-jev
System One models – отсылка к классическому разделению на system one (инстинктивное поведение) + system two (размышление). Вместо авторегрессионной генерации токенов, такие модели очень быстро (70-500мс) и параллельно отвечают на N простых вопросов: классификация, оценка, да/нет – и, что важно, каждый ответ содержит уверенность. На основе этих ответов ваш код принимает решения – т.е. модель дает "fuzzy if" примитив.
На видео выше можно видеть, как можно играть в Doom таким образом. Еще интересный пример – управление умным домом, включая использование LLM при необходимости.
P.S. Хотел начать пост с "пока Гриша дожидается комиссии, ..." – но это было бы неточно, потому что, строго говоря, новость появилась вчера :-)
– @pgregory
529
Repost from Боря программирует
Количество стресса в жизни
Во время решения олимпиадных задач часто применяется техника стресс-тестирования. О ней я уже писал раньше. Когда вы написали сложное решение, а оно почему-то не проходит тесты, можно написать значительно более простое но медленное решение, а потом найти маленький тест, на котором ответы отличаются.
У меня есть репозиторий, в котором я уже пять лет сохраняю все решенные олимпиадные задачи https://github.com/bminaiev/rust-contests
Оказалось, что если построить график того, как часто приходилось писать стресс для решений в разные года, то получается очень понятная закономерность. Видимо, писать код без багов все сложнее и сложнее...
529
С Борей работали вместе ВКонтакте, сейчас он работает в OpenAI и ведет крутой блог.
А идея "стресс-тестов" является ключевой в CoreInfra AT1, с помощью питон драйвера пользователь описывает модель и система используя chaos_theory — библиотеку, которую написал наш CTO, ищет нарушения инвариантов заданной более простой модели и ищет баги в реальной системе.
Код property-based-test библиотеки открыт и лежит на гитхабе.
Из забавных фактов, я также приложил руку к chaos_theory и являюсь контрибьютором. За моим авторством можно найти модуль генерации флотов.
– @tthread
529
Почему процессоры Apple M* такие быстрые?
Есть мнение, что решает техпроцесс. Но кроме техпроцесса, есть и архитектурные хитрости.
Рассмотрим одну из них - выполнение атомарных операций в кэше.
Традиционно в процессоре атомарные операции выполняет ядро, а координирует L2 Cache.
Анимация показывает процесс увеличения счётчика.
Прежде чем ядро сможет это сделать, оно должно получить эксклюзивное право это сделать, вместе со свежей версией счётчика. Протокол работает в единицах кэш-линий (64 или 128 байтов), так что вместо небольших 8-байтных счётчиков по шине приходится передавать огромные кэш-линии.
Также, перед тем как ядро эсклюзивно завладеет кэш-линией, нужно уведомить предыдущего владельца и получить у него последнюю версию кэш-линии.
В новой схеме атомарные операции выполняет не ядро, а сам L2 Cache с помощью своего собственного крошечного арифметического ядра.
Поддерживаются операции плюс, минус, максимум, минимум, логические, безусловный и условный обмен (CAS).
Вместо огромных кэш-линий по шине летают только небольшие значения счётчиков, и не нужно координироваться с другими ядрами.
Ядро просто отправляет команду "увеличь счётчик на X", в ответ летит предыдущее значение.
Это ускорение особенно актуально не для счётчиков, а для примитивов синхронизации - мьютексов, неблокирующихся очередей и других.
Входит в стандарт
Large System Extensions (LSE) Arm v8.1-A, используется и другими производителями процессоров ARM.
@hrissan
529
Немного о том, кто в кадре.
Автор и главный разработчик системы репликации и распределеного консенсуса — BARSiC, система которую мы создавали для баз данных ВКонтакте. Он же со-автор мультитенатной promql-совместимой системы сбора метрик рассчитанной на большую нагрузку – StatsHouse. BARSiC был разработан и внедрен на 10+ тысяч серверов нашей командой еще во времена нашей бытности в крупнейшей соцсети СНГ.
Про BARSiC можно послушать рассказ автора по ссылке.
А StatsHouse мы забрали к себе на Github и продолжаем его активную поддержку и использование. Про него рассказывал в свое время CTO CoreInfra.
+ бонусом небольшой анонс:
теперь за развитием StatsHouse можно следить по адресу: https://github.com/CoreInfraAI/statshouse aka https://statshouse.net
– @tthread
529
+1
Сегодня OpenAI и Anthropic лежали одновременно и довольно долго.
А у нас по этому поводу новая фича.
Легкий выбор ЛЮБЫХ моделей в Claude, Codex и любых других агентах. А также экспериментальная конвертация между разными протоколами.
Зачем, спросите вы? Codex умеет только Responses API, а Claude - только Messages API. А при этом большинство провайдеров предоставляют только Chat Completions. Получаются изолированные миры. А хочется использовать любые модели в любых агентах.
Чтобы это включить в Codex нужно указать в
~/.codex/config.toml
base_url = "https://hub.coreinfra.ai/codex/api/v1"
# Необязательно — только если хотите поэкспериментировать с конвертацией
http_headers = { "X-CoreInfra-CrossProtocol" = "1" }
Чтобы включить это в Claude, нужно добавить в секцию env файла ~/.claude/settings.json:
"ANTHROPIC_BASE_URL": "https://hub.coreinfra.ai/claude/api",
"CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1",
"ANTHROPIC_CUSTOM_HEADERS": "X-CoreInfra-CrossProtocol: 1",
"CLAUDE_CODE_SUBAGENT_MODEL": "claude-gpt-5.6-luna",
"CLAUDE_CODE_SUBAGENT_MODEL_FORCE": "1",
ANTHROPIC_CUSTOM_HEADERS нужен для включения конвертации.
CLAUDE_CODE_SUBAGENT_MODEL и CLAUDE_CODE_SUBAGENT_MODEL_FORCE нужны, чтобы явно указать модель для сабагентов. Без них для сабагентов всегда выбирается Sonnet.
- @razmser529
Продолжая тему про представление, которое находят нейросети:
The Emergent Symbolic Structure of Artificial Neural Networks
Все помнят, что эмбеддинги обладают линейной структурой, king - man + woman = queen и все такое.
Tensor Product Representations, который использовали в этой работе – конкретный способ кодировать богатую символьную структуру в векторном пространстве. Что статья делает: обучает TPR-модель, используя остроумно выбранные представления существующей модели (Gemma 3, GPT-OSS, ...) как референс. Таким образом получается интерпретируемое символьное представление. С которым можно работать – символьно манипулировать! И если в существующих нейронках заменить весь процесс создания представления на сконструированный TPR – поведение сети практически не меняется. Что указывает на использование моделями символьного представления, близкого TPR, внутри.
Очень важная работа с точки зрения понимания механизмов работы LLM, и в каком-то смысле большая победа "символьного" подхода к AI. И просто хорошо написанная статья.
– @pgregory
529
Что хочется отметить сегодня – это то, что с появлением AI нам нужно снова учиться, учиться и учиться, как в свое время предлагал Ленин. Предлагал в похожее, в каком-то смысле, время перемен.
Как перестроить процесс командной работы, как перестроить коммуникацию, как перестроить верификацию программ, как перестроить дизайн и архитектуру, как перестроить личный рабочий процесс – весь самолет надо пересобрать на лету.
В каком-то смысле, мы все сейчас первый раз в первый класс – только без учителей. Hard mode :-)
Ничего непонятно, но крайне увлекательно – общее текущее состояние.
Всех с 1 сентября!
– @pgregory
529
Сегодня вышла GLM 5.3 Flash. Эта модель встает в один ряд с такими дешевыми, но мощными моделями, как GPT 5.6 Luna и DeepSeek v4 Flash Vision.
Она особенно интересна двумя фактами:
1. это первая GLM-модель, которая одновременно умеет vision и хорошо пишет код
2. она работает полностью на китайских чипах
В ближайшие 2 недели она доступна по промоценам. Попробовать ее можно прямо у нас на хабе.
- @razmser
529
Rust 1.100 стабилизирует 🎉 never type AKA !. Очень нишевая, но очень классная штука, которая позволяет явно задать тип для "невозможных" вещей:
// Никогда не возвращаемся
fn exit(code: i32) -> !
// Неудача невозможна
fn always_success() -> Result<T, !>
// Если вышли, то из-за проблемы
fn server_loop() -> Result<!, E>
И, так как это настоящий тип, автоматически работает очень много магии, в т.ч. паттерн-матчинги типа
let Ok(v) = always_success()
Все это время ходила шутка never type is named after its stabilization date – но возможно, обещанный день настал!
Never date: 25.08.2026
– @pgregory529
Математика проходит сейчас через метаморфозы, очень похожие на те, что происходят у нас, в программировании. То, что раньше казалось основной ценностью (создание доказательств/кода), и было в дефиците – автоматизируется, и доступно в избытке. Это заставляет переосмыслить ремесло.
То, что предлагает Теренс Тао для математики – стройно и логично. И, что может быть более интересно – показывает глубокую связь науки с социальными и цивилизационными аспектами, в противовес "сиянию чистого разума". Как следствие (моя интерпретация) – некоторая перспектива на то, что для real AGI необходимы агенты с целями, эмоциями и обществом.
Рекомендую к просмотру всем неравнодушным к философской стороне нашего дела:
https://www.youtube.com/watch?v=M0--ZH1lOzg
– @pgregory
529
Немного разберемся в матчасти и в том, что тарифицируется хабом при использовании API.
Токен – это элементарный блок текста, которым оперирует модель, часто это несколько символов. Упрощенно, на каждом прогоне модели во внутреннем цикле получается один токен, он и является единицей тарификации. Входящий текст разбивается на токены и это процесс называется токенизацией.
Какие бывают токены:
Input – весь входной контекст: системный промпт, история диалога, код, файлы, описания инструментов и результаты их вызовов. Всё, что поступает на вход модели.
Output – сгенерированный моделью ответ или рассуждения, необходимые для его получения.
Базово это все, но, в свою очередь, выделяют ещё дополнительные типы, необходимые для тарификации и аналитики.
Reasoning или thinking – внутренние рассуждения модели. Они входят в output. Что это за токены и откуда они появляются, рассмотрим в другом посте. Считаются отдельно исключительно для аналитики, чтобы понимать, чем агент занимался.
В агентском цикле на вход каждый раз подается весь контекст, и чтобы его не перечитывать, используется кэш, который тарифицируется отдельно. Это очень важно, поскольку в противном случае скорость работы снижается и растет стоимость.
Cache read – часть входного контекста, для которой часть вычислений уже была проведена ранее. Провайдер загружает готовый кэш и не производит часть операций, поэтому такие токены стоят дешевле обычного input.
Cache write – контекст, для которого кэш создается впервые. У некоторых провайдеров, например Anthropic, отдельно учитывается запись на 5 минут и на 1 час. Некоторые провайдеры Cache write не тарифицируют.
Итого стоимость считается так:
Стоимость запроса = (Input × тариф Input + Cache Read × тариф Cache Read + Cache Write × тариф Cache Write + Output × тариф Output) / 1 000 000В CoreInfra AI Hub мы максимально точно считаем и тарифицируем использованные токены и даем детальную аналитику. Мы учитываем все типы кэша и отдаём аналитику с точностью до токена, с гранулярностью в одну минуту. – @tthread
529
DeepSeek V4 Pro вышла из превью (вторая слева). Модель интересна своей крайней дешевизной на фоне близкого к фронтиру интеллекта.
На хабе она доступна под тем же именем, что и ранее.
Кроме того, теперь ею можно пользоваться через Responses API, а значит, и из Codex.
Если вы уже пользовались скриптом настройки Codex, то его нужно перезапустить с флагом --refresh для обновления конфига:
uvx --refresh --from git+https://github.com/CoreInfraAI/setup-codex setup-codex
А для тех, кто хочет попробовать модель, сделали ещё один промокод: COREINFRA_TRY_DEEPSEEK_PRO. Он доступен пользователям, пополнявшим баланс хаба после 6 августа, и действует до вечера понедельника.
- @razmser529
Мне спокойнее использовать Codex, потому что там есть нормальный sandbox в отличие от тех же OpenCode и Pi.
К чему я это. Мы поддержали Responses API для deepseek-v4-flash. И теперь вы можете использовать его прямо из Codex. Для простоты настройки мы сделали скрипт который одной командой настроит codex для работы с CoreInfra AI Hub
uvx --from git+https://github.com/CoreInfraAI/setup-codex setup-codex --api-key <your-token>И в честь этого события мы запускаем промокод
COREINFRA_TRY_DEEPSEEK на 500 рублей. Его можно применить, если вы пополните баланс хаба. Действует до конца понедельника. Количество использований ограничено.
– @razmser529
Две забавные мысли:
Программа : циклы процессора ~= агент : токены.
LLM-ки похожи на фаззеры тем, что и там, и там – мы понимаем механизм, но не понимаем, почему это работает, и в обоих случаях в сердце процесса compute go brrrr.
LLM-ки – это фаззеры мыслительного процесса. Да-да, за таблетками уже иду 🙂
– @pgregory
529
Объяснить и сам могу.(с) Мне очень нравится эта фраза из анекдота. Удивительным образом она применима и к агентам, которые готовы объяснить, что угодно, и не только к ним. Из забавного: любой маркетолог расскажет, как строится рынок, разработает стратегию продвижения и объяснит, почему одно сработало, а другое нет. Но он не сможет что-то
построить, строить и создавать могут только оунеры.
Поэтому маркетологи себя стыдливо называют функцией маркетинга, они-то знают, что -олог – это про объяснить.
Поэтому какой смысл быть подписанным на очередной бигтех канал "инсайдов", который ведет штат пиарщиков с KPI? Господа и дамы, читайте наш канал! Мы пишем от первого лица что происходит у нас в компании, какие технологии нам интересны и что мы задумали сделать еще 😃
– @tthread