Pull to refresh
0
0
Send message

Нотация моделирования архитектуры С4 — примеры диаграмм и инструменты

Level of difficultyMedium
Reading time19 min
Views131K

Если возникает вопрос об описании архитектуры системы, то есть несколько основных решений где и как это сделать. Среди популярных нотаций для визуализации схемы архитектуры можно выбрать C4, разработанную Саймоном Брауном.

В этой статье я хочу показать пример применения нотации C4, который вы сможете использовать как ориентир в своей работе, а также инструменты для её создания. В частности, выделяю Structurizr.

Статья полезна для системных аналитиков, архитекторов, разработчиков, менеджеров проектов и тех, кто участвует в создании и принятии решений по организации архитектуры проекта.

Читать далее

AsyncAPI — Swagger для брокеров сообщений и не только, или Если хочется иметь структурированную доку по асинхрону

Level of difficultyEasy
Reading time12 min
Views13K

В мире интеграций REST API на сегодняшний день занимает по праву свое почетное, королевское место. Сегодня мало какой проект или продукт обходится без стандартных HTTP-методов и документации к ним.

Но если для REST API уже всемирную славу приобрел Open API со своей Swagger-документацией, которая внедряется практически повсеместно и является по праву, так сказать, золотым стандартом, то для брокеров сообщений и, в целом для асинхронного взаимодействия, в большинстве случаев дела обстоят далеко не так однозначно.

В данной статье я хотел бы подробнее остановиться на довольно молодом типе спецификации для асинхронного взаимодействия - AsyncAPI, который, на мой взгляд, имеет огромный потенциал и все шансы на массовое применение в будущем.

На некоторых порталах, в том числе и здесь, уже косвенно поднималась тема AsyncAPI и вызывала у авторов, как правило, смешанные чувства. Описывали преимущества и недостатки, приводили некоторые примеры. Справедливо отметить, что AsyncAPI, конечно же, не идеален.

Но если посмотреть на это с другой стороны: удобно ли будет разработчику читать ТЗ и другую документацию касаемо разработки интеграции по асинхрону, слепленную из кусков текста, таблиц, рисунков, непонятных ссылок и т.д.? Одно дело, если разработчик находится на проекте с самого начала и знает все тонкости и может сам что-то додумать. Но если человек придет на проект уже через один, два или более лет после начала проекта и увидит тонны макулатуры, которую как-то нужно читать и анализировать, то вот тут начинаются трудные времена.

Читать далее

Полное руководство по оценке компонентов системы RAG: что необходимо знать

Reading time10 min
Views4.5K

Системы дополненной генерации (RAG) были разработаны для улучшения качества ответа крупной языковой модели (LLM). Когда пользователь отправляет запрос, система RAG извлекает релевантную информацию из векторной базы данных и передает ее в LLM в качестве контекста. Затем LLM использует этот контекст для генерации ответа для пользователя. Этот процесс значительно улучшает качество ответов LLM с меньшим количеством «галлюцинаций».

Читать далее

Архитектура RAG: часть вторая — Advanced RAG

Level of difficultyHard
Reading time7 min
Views18K

С момента написания моей прошлой статьи прошло не так много времени, но прогресс не стоит на месте и произошло несколько важных изменений. Раньше про RAG можно было услышать из холодильника, теперь же ситуация изменилась. Каким образом - читайте дальше.

Читать далее

Промптинг: действительно полезное руководство

Level of difficultyMedium
Reading time11 min
Views24K

Промпт-инженеринг - это не просто наука, это настоящее искусство, требующее практики и постоянного совершенствования. Вооружившись знаниями из этого руководства и регулярно применяя их на практике, вы сможете создавать более эффективные промпты и получать именно те результаты, которые вам нужны.

Читать далее

Построение базы знаний компании и поиска документов на LLM и RAG

Level of difficultyEasy
Reading time16 min
Views21K

Наиболее распространенный случай использования ИИ в бизнесе в данный момент— это поиск ответов в имеющихся у компании данных для принятия решений или создание красиво оформленных, но совершенно бесполезных отчетов, чтобы топ-менеджмент мог оправдать свои огромные бонусы. Все это, конечно, очень важные и легитимные кейсы.

Проблема тут если вы один из этих топ-менеджеров или просто не являетесь экспертом в области. Ваш отдел аналитики данных и ИИ, если он у вас есть, вероятно, говорит на своем инопланетном наречии и не может дать связного ответа, почему у нас столько данных, но мы все еще не можем ответить на довольно тривиальные вопросы (что, конечно, задерживает получение бонусов, а новый БМВ сам себя не купит).

Я разделяю вашу боль, давайте разберемся, о чем они говорят.

Читать далее

Разрабатываем первое AI приложение

Level of difficultyMedium
Reading time13 min
Views9.6K

Эволюция языка сыграла значительную роль в развитии человечества. Она дает нам возможность делиться знаниями и работать вместе. Благодаря этому большая часть нашего опыта продолжает сохраняться и передаваться через разные письменные тексты.

За последние двадцать лет было предпринято много усилий для цифровизации информации и процессов. Большинство из них сосредоточено на накоплении данных в реляционных базах. Этот подход позволяет традиционным аналитическим методам машинного обучения обрабатывать и анализировать данные.

Тем не менее, несмотря на наши попытки структурировать все больше информации, мы по-прежнему сталкиваемся с трудностями в полном понимании и обработке всего нашего знания.

Читать далее

Машинное обучение: общие принципы и концепции

Level of difficultyEasy
Reading time10 min
Views12K

В этой статье я рассказываю про основные концепции, типы обучения, типы задач в машинном обучении и также делаю постановку задачи машинного обучения (МО). Все это я рассказываю в своем стиле и понимании.

Посмотреть статью

Генерация дополненного извлечения (RAG): от теории к реализации LangChain

Reading time7 min
Views4.6K

От теории из оригинальной академической статьи до ее реализации на Python с OpenAI, Weaviate и LangChain

Читать далее

Основы промптинга и математические возможности моделей Llama

Level of difficultyEasy
Reading time10 min
Views9K

Меня зовут Грибанов Никита, я Data Scientist в отделе R`n`D&ML компании Raft Digital Solutions, и сегодня я расскажу о больших языковых моделях. На данный момент в мире их существует уже более 39 тысяч! Далее буду называть их хайповым названием LLM (Large Language Model).

В этой статье вы сначала узнаете новые или освежите в памяти уже известные вам основы общения с языковыми моделями. Затем разберёте пару реальных примеров настройки запросов и увидите математические возможности Llama 3.2 3B в сравнении с Llama 3.1 8B.

Для достижения хороших результатов при решении различных задач с помощью LLM, с ними как и с людьми, нужно уметь правильно общаться. Как же это сделать?

Читать далее

ИИ-агенты: от теории к практике

Level of difficultyMedium
Reading time10 min
Views32K

Два наиболее интересных похода в создании AI‑систем в 2024 — это агенты (agents, agentic AI systems) и мультиагентность (multi‑agent systems)

Ключевая черта, отличающая агентов от других AI‑систем — это автономность

То есть мы можем говорить что имеем дело с Агентом, если наша система обладает автономностью в решении задачи. Степень автономности может быть разная: от выбора действий в рамках заданных шагов и инструментов до самостоятельного определения плана и последовательности выполнения.

Большинство гайдов по агентам ограничиваются теорией и супер-абстрактными примерами, игнорируя реальные проблемы, которые возникают в процессе разработки.

Сегодня мы решим задачу, приближенную к реальности и актуальную для многих бизнесов — сделаем агента-ассистента для сбора данных.

Читать далее

Как LLM меняют архитектуру систем: от простых дата-пайплайнов к интеллектуальным автономным агентам

Level of difficultyMedium
Reading time11 min
Views5.1K

На каждой технической конференции в последнее время обязательно звучит слово «агенты». Они преподносятся по разному: и как следующая ступенька после RAG, и как серебряная пуля для решения всех проблем, и как абсолютная замена всех классических пайплайнов. А кто еще не использует агентов — безнадежно отстал от прогресса.

Но так ли это на самом деле? Данная статья вдохновлена видением компании Anthropic на применение LLM в процессах и на построение автономных агентов, поэтому давайте попробуем во всем разобраться.

Поговорим про Data Pipelines, LLM Workflows и LLM Agents, а так же сравним их между собой.

Читать далее

Nvidia Triton Inference Server: строим production ML без разработчиков

Level of difficultyEasy
Reading time10 min
Views7.1K

Привет, Хабр! Меня зовут Антон, я DevOps-инженер в команде Data/ML-продуктов Selectel. В этой статье расскажу про наш новый продукт — Inference-платформу Selectel, а также вызовы, с которыми мы столкнулись при ее разработке без разработчиков.

Почему без разработчиков? Рынок ML все еще молодой. В его российском сегменте не так много решений, связанных с Inference‑платформами. Перед началом создания полноценного продукта наша команда сначала проверяет технологические гипотезы, не растрачивая существенные ресурсы на разработку. Все делается силами небольшой команды Ops‑инженеров. Мы используем сервисы с открытым исходным кодом на базе инфраструктуры облака Selectel — тем самым достаточно быстро и недорого тестируем предположения, а в случае успеха легко масштабируем до готового продукта. Дальнейшее развитие уже определяется обратной связью от наших клиентов.
Читать дальше →

Хватит называть контейнеризацию виртуализацией

Reading time5 min
Views22K

Привет, Хабр! Меня зовут Матвей Мочалов, я — компьютерный инженер и один из авторов корпоративного блога cdnnow! Как-то мы уже обсуждали особенности Docker на разных системах, а сегодня я хочу копнуть глубже — поговорить о том, как наша индустрия поймала саму себя в ловушку Джокера и умудрилась запутать всех, выдавая контейнеризацию за виртуализацию.

Продолжим об этом ниже в посте.

Читать далее

О векторных базах данных простым языком

Level of difficultyMedium
Reading time6 min
Views25K

Представьте, что управляете онлайн-магазином, предлагающим тысячи товаров.

Чтобы помочь пользователям находить нужные позиции, вы добавили строку поиска. Теперь посетители могут вводить интересующие их запросы, на что вы будете показывать им подходящие результаты.

Например, когда пользователь вводит «лето», вы можете показывать предметы вроде шортов, платьев, панам и пляжных зонтов.

Как бы вы реализовали такую систему?
Читать дальше →

Идентификаторы в БД: INT vs UUID

Level of difficultyEasy
Reading time4 min
Views8.2K

Привет! Меня зовут Женя, я бэкенд-разработчик, и в этом посте хотела бы кратко обсудить плюсы и минусы разных вариантов идентификаторов в базе данных.

Читать далее

Разница между прямым прокси, обратным прокси и балансировщиком нагрузки

Level of difficultyEasy
Reading time5 min
Views29K

Привет! Вы когда‑нибудь задумывались, как некоторые из крупнейших веб‑сайтов одновременно обрабатывают запросы миллионов пользователей без сбоев, или передают ваши данные, направляя вас на правильный сервер? В этой статье для начинающих сетевиков мы углубимся в три важнейших веб‑компонента: прямой прокси, обратный прокси и балансировщик нагрузки. Разбёрем эти концепции простым и понятным языком.

Читать далее

Что такое Retrieval-Augmented Generation (RAG) в языковых моделях и как оно работает?

Level of difficultyEasy
Reading time8 min
Views16K

В контексте разговоров о больших языковых моделях (LLM) все чаще возникает аббревиатура RAG – Retrieval-Augmented Generation, или если переводить на русский язык, то «поисковая дополненная генерация». В этом тексте попробуем в общих чертах разобраться, как работает RAG, и где он может быть применим на практических задачах.

Читать далее

Операции машинного обучения (MLOps) для начинающих: полное внедрение проекта

Level of difficultyMedium
Reading time21 min
Views7.2K

Разработка, развёртывание и поддержка моделей машинного обучения в продакшене может быть сложной и трудоёмкой задачей. Здесь на помощь приходит Machine Learning Operations (MLOps) — набор практик, который автоматизирует управление ML-процессами и упрощает развёртывание моделей. В этой статье я расскажу о некоторых основных практиках и инструментах MLOps на примере реализации проекта от начала до конца. Это поможет вам эффективнее управлять ML-проектами, начиная с разработки и заканчивая мониторингом в продакшене.

Прочитав эту статью, вы узнаете, как:

— Использовать DVC для версионирования данных.
— Отслеживать логи, артефакты и регистрировать версии моделей с помощью MLflow.
— Развернуть модель с помощью FastAPI, Docker и AWS ECS.
— Отслеживать модель в продакшене с помощью Evidently AI.

Читать далее

Information

Rating
Does not participate
Registered
Activity