TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #247 · 11.03

Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе. Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода. Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу". С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой. Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого. Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :) Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие. #dev

Hashtags

Резултати

Намерени 2 подобни публикации

Търсене: #kvcache

当前筛选 #kvcache清除筛选
Machinelearning

@ai_machinelearning_big_data · Post #8027 · 11.07.2025 г., 12:05

🌟LMCache: умное кэширования для LLM-инференса. LMCache - проект, который предлагает решение по сохранению KV-кэша на CPU, диске или даже в специализированной памяти NIXL. По сути, это инструмент, который превращает одноразовые вычисления в многократно используемые блоки, экономя время и ресурсы. Представьте, что в чат-боте пользователи часто ссылаются на один и тот же системный промпт или историю диалога. Обычно модель заново обрабатывает эти данные, но LMCache просто загружает готовый кэш. Выгрузка KV-кэшей освобождает GPU для новых задач, уменьшая TTFT (время до первого токена) вплоть до 10 раз. 🟡LMCache гибкий. Кэши можно не только выгружать, но и делиться между разными инстансами LLM. Проще говоря, если два пользователя одновременно обращаются к разным копиям модели с одинаковым запросом, система не будет дублировать работу: результаты одного prefill’а станут доступны всем. Это работает даже для неполных префиксов, например, при частичном совпадении входных данных. 🟡LMCache умеет в раздельную предобработку. Prefill и decode, которые обычно выполняются на одном GPU, теперь могут быть разнесены: первый этап обрабатывается на мощных узлах, а второй на оптимизированных для генерации. Для распределенных систем такая техника повысит пропускную способность. Тесты разработчиков проекта показывают, что в реальных задачах задержка снижается в 3–10 раз, а GPU-циклы экономятся на повторных вычислениях. Проект тесно интегрируется с vLLM, в репозитории есть большой набор с примерами, документация и советы по установке и настройке. ⚠️Калькулятор KV-кеша с выбором модели, ее типа данных и количества токенов, который поможет прикинуть, сколько VRAM можно сэкономить. 📌Лицензирование: Apache 2.0 License. 🖥Github @ai_machinelearning_big_data #AI#ML#LLM#LMCache#KVCache#Github

Machinelearning

@ai_machinelearning_big_data · Post #8010 · 10.07.2025 г., 11:37

⚡️ Китайские исследователи из Shanghai Jiao Tong и Zhejiang University представили MemOS — первую в мире "операционную систему памяти" для ИИ. Обычные LLM быстро забывают информацию, а дообучать их — долго и дорого. В новой работе предлагают радикально другой подход: MemOS превращает память в часть операционной системы. 🟢Память как файлы: Модель может *записывать, перемещать и удалять* знания, как будто работает с файлами, и делать это прямо во время работы, а не только на этапе обучения. 🟢MemCube — контейнер знаний: Каждое знание упаковывается в кубик с метками времени и авторства. Планировщик сам решает, где хранить этот "куб" — в тексте, GPU‑кэше или в виде маленького патча весов. 🟢Умная экономия: MemOS работает с 1500 токенами памяти, но достигает такой же точности, как если бы модель загружала весь контекст. При этом скорость — как у облегчённых моделей. 🟢Мгновенная подгрузка: На тестах с Qwen2.5‑72B переключение нужных "кубов" в кэш снижает задержку первого токена на 91.4%, *без изменения ответа*. 🟢Результаты: MemOS набрал 73.31 балла по LLM‑Judge на LOCOMO-бенчмарке — почти на 9 баллов больше ближайшего конкурента. Особенно хорошо работает на сложных задачах с несколькими шагами и временными зависимостями. 💡 Итог: память как ОС — это не просто удобно, это ускоряет модель, повышает точность и даёт контроль над знаниями. Установка: pip install MemoryOS 🟠GitHub 🟠Проект @ai_machinelearning_big_data #MemoryOS#agentmemory#rag#kvcache