Обновить
0
0

Пользователь

Отправить сообщение

Обзор на Model Context Protocol (MCP) от Anthropic

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели7.9K

На заре появления LLM пользователям приходилось просто копировать свой код в текстовое окно, чтобы ИИ могла его обработать. Естественно, такой подход быстро всех утомил, и разработчики начали искать свои способы загрузки данных в модель. У этого подхода была серьезная проблема — каждому приходилось изобретать велосипед заново.

Именно поэтому появился протокол MCP (Model Context Protocol) — универсальный способ дать искусственному интеллекту доступ к нужным данным, неважно где они хранятся — на компьютере пользователя или же в интернете.

Читать далее

Replit Agent программиста не заменит! Или как мы пробовали писать код с помощью нейросети

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели2.4K

Привет, Хабр! Это компания Raft и я — руководитель AI продуктов Евгений Кокуйкин. А на фото выше — троица из нашей команды — техлид Саша Константинов, AI Project Manager & QA Lead Толя Разумовский и Data scientist Арсений Пименов на конференции Олега Бунина AIConf. Недавно в сети появился Replit Agent с многообещающими заявлениями. Мол, этот инструмент пишет код лучше программистов и скоро их заменит. Хотя в Raft мы и пишем код по старинке — вручную, но следим за технологиями и стремимся использовать новшества там, где это может быть полезно. Решили испытать Replit Agent в деле и даже устроили внутри команды мини-хакатон. Делимся впечатлениями.

Читать далее

Обзор уязвимостей для LLM. Часть 1. Атака

Время на прочтение7 мин
Охват и читатели2.7K

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

Привет, Хабр! Меня зовут Евгений Кокуйкин и я — руководитель AI-продуктов в Raft. Запускаю лабораторию AI Security в AI Talent Hub/ИТМО.

Читать далее

Разбираемся в AI проектах OWASP: обзор для разработчиков и ИБ-специалистов

Время на прочтение12 мин
Охват и читатели2.4K

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

На первый взгляд в глаза бросается обилие проектов, документов и рекомендаций. Материалы в отчётах пересекаются и запутаться в инициативах OWASP — легко. Связано это с тем, что проекты ведут разные команды и лидеры. В OWASP более 1000 человек только в slack-канале и около 100 активных участников.

Надеюсь, эта статья поможет вам разобраться в специфике каждого гайда, и облегчит  выбор подходящего документа под ваши потребности. Начнём с главного документа по AI от OWASP. Меня зовут Евгений Кокуйкин и мы в AI Security лаборатории Raft изучаем прикладные аспекты безопасности GenAI-систем. В OWASP я веду один из стримов, про которые пойдёт речь ниже.

Читать далее

15 примеров задач по SQL на собеседовании по вакансии системного аналитика

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели96K

Привет, Хабр! Если вы читаете этот материал, скорее всего, вы готовитесь к собеседованию. Важным аспектом работы системного аналитика (СА) является умение эффективно работать с базами данных, и SQL — это ключевой инструмент для этого. Будьте готовы, что на техническом собеседовании вас могут попросить назвать операторы SQL, написать запросы для извлечения, обновления или удаления данных, создания новых таблиц и многого другого. Давайте посмотрим на некоторые примеры таких заданий.

Читать далее

Логистическая и Softmax-регрессии. Основная идея и реализация с нуля на Python

Уровень сложностиСложный
Время на прочтение9 мин
Охват и читатели22K

Начнём с более простого. Логистическая регрессия — линейный бинарный классификатор, основанный на применении сигмоидальной функции к линейной комбинации признаков, результатом которого является вероятность принадлежности к определённому классу. Обычно порог устанавливается 0.5: если вероятность меньше порога — класс относится к 0, а если больше — к 1. В принципе, условия определения логистической регрессии такие же как и у линейной за исключением бинаризации таргета.

Читать далее

Про fine-tuning моделей простыми словами

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели37K

Вы, наверное, уже не раз слышали о тонкой настройке (fine-tuning) моделей. На самом деле, в нашей компании мы настраиваем модель каждые 10 секунд. До написания этой статьи я даже настроил свой завтрак, на всякий случай, потому что, как мы все знаем, все лучше, когда хорошо настроено.

Но что это на самом деле? Это просто другой модный термин или в нем есть смысл? ? Давайте выясним.

Читать далее

Ускоряем Nginx за 5 минут

Время на прочтение5 мин
Охват и читатели312K
image
Попытайтесь повторить это сами

Как правило, настроенный должным образом сервер Nginx на Linux, может обрабатывать 500,000 — 600,000 запросов в секунду. Но этот показатель можно весьма ощутимо увеличить. Хотел бы обратить внимание на тот факт, что настройки описанные ниже, применялись в тестовой среде и, возможно, для ваших боевых серверов они не подойдут.

Минутка банальности.

yum -y install nginx

На всякий пожарный, создадим бэкап исходного конфига.

cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.orig
vim /etc/nginx/nginx.conf

А теперь можно и похимичить!
Бдыжь-бдыжь

Разработчикам, аналитикам и архитекторам: рецензия на книгу «Проектирование архитектуры API»

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели8.8K

Сегодня представляем на Хабре очень интересную книгу — переводное издание «Проектирование архитектуры API» («Mastering API Architecture») издательства O'REILLY. Это руководство по разработке и реализации API (программных интерфейсов приложений). Разобраны базовые вопросы обмена информацией в микросервисной архитектуре, обработка запросов на сайтах и в веб‑приложениях (парадигма REST). Бонусами к статье — промокод «SSPSOFT» на русское издание и ссылка на оригинальный текст книги (бесплатная копия книги в PDF).

Читать далее

Метрики качества ранжирования

Время на прочтение7 мин
Охват и читатели158K
В процессе подготовки задачи для вступительного испытания на летнюю школу GoTo, мы обнаружили, что на русском языке практически отсутствует качественное описание основных метрик ранжирования (задача касалась частного случая задачи ранжирования — построения рекомендательного алгоритма). Мы в E-Contenta активно используем различные метрики ранжирования, поэтому решили исправить это недоразуменее, написав эту статью.

Метрики качества ранжирования


Читать дальше →

Как с помощью BERT организовать поиск похожих текстов

Время на прочтение5 мин
Охват и читатели8.4K

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

Читать далее

Определение части речи слова на PHP одной функцией

Время на прочтение3 мин
Охват и читатели41K
Прочитав пост http://toster.ru/2410/, я написал функцию, которая определяет из строки слов их части речи. Определение, конечно не 100%, но можно легко дорабатывать.

Функция возвращает массив значений групп:
  • 1. прилагательное
  • 2. причастие
  • 3. глагол
  • 4. существительное
  • 5. наречие
  • 6. числительное
  • 7. союз
  • 8. предлог


Пример вызова функции:
print_r(chastrechiRUS('В небе летит красивый сверкающий самолёт'));


Результат работы функции (массив):
Array ( [0] => 8 [1] => 4 [2] => 3 [3] => 1 [4] => 2 [5] => 4 )


Читать дальше →

Устройство поисковых систем: базовый поиск и инвертированный индекс

Время на прочтение24 мин
Охват и читатели37K

Под капотом почти каждой поисковой строки бьется одно и то же пламенное сердце — инвертированный индекс. Именно инвертированный индекс принимает текстовые запросы и возвращает пользователю список документов, а пользователь смотрит на всё это дело и радуется котиками, ответам с StackOverflow и страничкам на вики.

В статье описано устройство поиска, инвертированного индекса и его оптимизаций с отсылками к теории. В качестве подопытного кролика взят Tantivy — реализация архитектуры Lucene на Rust. Статья получилась концентрированной, математикосодержащей и несовместимой с расслабленным чтением хабра за чашкой кофе, осторожно!
Читать дальше →

Как построить полнотекстовый поиск с помощью нейронных сетей

Время на прочтение8 мин
Охват и читатели16K

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


Читать дальше →

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

Время на прочтение12 мин
Охват и читатели6.1K


Привет, друзья!


В этой заметке я хочу рассказать о двух вещах:


  1. Сканере предварительной загрузки (теоретическая часть).
  2. Пропуске невидимого контента (практическая часть).

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


Теоретическая часть представляет собой адаптированный и дополненный перевод этой статьи. Практическая часть — это небольшой эксперимент по применению новых свойств CSS, о которых рассказывается в этой статье (перевод).


Если вам это интересно, прошу под кат.

Читать дальше →

Shadow Dom в fullstack

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели6.4K

Shadow DOM – это нечто вроде дополнения к обычному DOM, позволяющее инкапсулировать стили и разметку компонентов, скрывая их от основного дерева документа. Это механизм, который позволяет упаковать HTML-структуру, стили и скрипты в изолированные компоненты.

Shadow DOM обеспечивает инкапсуляцию — значит, CSS и JavaScript могут работать в рамках конкретного компонента, не влияя на остальную часть страницы. Это решает проблему "глобальной области видимости", с которой сталкиваются многие разработчики, и позволяет создавать более предсказуемые и устойчивые веб-приложения.

Читать далее

Пережевывая Матрицу Несоответствий — Confusion Matrix

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели29K

Понятие Confusion Matrix является довольно простым в объяснении, но при этом начинающим Data Scientist-специалистам бывает порой нелегко разобраться в отношениях True Positive (TP), False Positive (FP), True Negative (TN), False Negative (FN) — кирпичиками, составляющими данную матрицу. Цель этой статьи познакомить читателя с альтернативным представлением Матрицы Ошибок. Данный способ, по мнению автора, является наиболее наивным методом графического восприятия самой Матрицы Несоответствий, не предполагающий запоминания самой таблицы матрицы. Данный подход позволит легко ориентироваться в выводах, основанных на комбинации элементов Confusion Matrix, глубже понять проблему дисбаланса классов в задачах классификации.

Читать далее

Computer Science или что должен знать программист?

Время на прочтение5 мин
Охват и читатели108K

Программисты бывают разные. Мобильные разработчики на Kotlin и Swift, веб-программисты, использующие PHP, Python, Ruby, хардкорные электронщики на Си и Assembler. Главным их отличием является сфера, в которой они работают и используемый язык. Однако не редки случаи, когда, например, веб-разработчики уходят в mobile, электронщики в gamedev и т.д. А конкретно язык программирования вообще можно переучить за пару месяцев. Пропорции условны, а границы размыты. Языки и технологии меняются, и если всё так подвижно и непостоянно, что же объединяет всех этих людей? А объединяет их умение программировать в целом, не зависимо от языка, платформы и технологии...и знание английского языка, пока не поздно учи английский (вставка из «Криминальное чтиво»)

Умение же программировать складывает из практического навыка написания программ и теоретической базы из различных областей Computer Science. Какие алгоритмы нужно знать программисту, нужно ли ему разбираться в компьютерах, системах счисления, делить в уме столбиком и что вообще должен знать программист в широком смысле этого слова. На эти вопросы вам сегодня постарается ответить Макс. Один из автора YouTube-канала PyLounge, Поехали!

Читать далее

Читаем EXPLAIN на максималках

Время на прочтение19 мин
Охват и читатели99K

Многим, кто работает с MySQL, известно, что команда EXPLAIN используется для оптимизации запросов, получения информации об использованных и возможных индексах. Большинство разработчиков и администраторов СУБД этой информацией и ограничивается. Я же предлагаю изучить команду EXPLAIN максимально подробно.

Читать далее

Meilisearch — организация поиска в связке с Laravel

Уровень сложностиСложный
Время на прочтение8 мин
Охват и читатели12K

Hola, Amigos! Меня зовут Евгений Шмулевский, я backend-разработчик на Laravel в агентстве продуктовой разработки Amiga. В статье описываю организацию поиска через Meilisearch и нюансы использования в связке с Laravel.

Читать далее

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность