Как стать автором
Поиск
Написать публикацию
Обновить
-4
0

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

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

DTO в Python. Способы реализации

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

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

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

Из основной функциональности хочу выделить валидацию типов и данных, создание объекта и выгрузку в словарь.

Читать далее

StackLLaMA: практическое руководство по обучению LLaMA с помощью RLHF

Уровень сложностиСложный
Время на прочтение15 мин
Количество просмотров15K

ChatGPTGPT-4 и Claude — это мощные языковые модели, которые дообучают, используя метод, который называется «обучение с подкреплением на основе отзывов людей» (Reinforcement Learning from Human Feedback, RLHF). Благодаря этому такие модели лучше отражают наши ожидания в плане их поведения, они лучше соответствуют тому, как мы собираемся их использовать.

В этом материале мы рассмотрим процесс обучения модели LLaMa c использованием RLHF. Модель будет учиться отвечать на вопросы с сайта Stack Exchange.

Читать далее

Запускаем на телефоне нейронку LLaMa 7B -13B 4 bit от фейсбука с настройкой Alpaca-LoRA

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров18K

Удалось запустить на телефоне пиксель 6 лингво нейронку LLaMa ужатую до 7 (альпака лора была настроена пока именно на 7 миллиардов параметров, и ответы могут быть удачнее именно на ней ) или 13 миллиардов параметров и 4 битных зависимостей. До установки её можно опробовать в гугл колаб.

Читать далее

Как сделать свой AnythingGPT, отвечающий на вопросы так, как вам это необходимо (Python, OpenAI Embeddings, ChatGPT API)

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров19K

Всем привет! Недавно я на практике применил одно интересное решение, которое давно хотел попробовать, и теперь готов рассказать, как своими руками такое можно сделать для любой другой аналогичной задачи. Речь пойдет о создании своей кастомизированной версии ChatGPT, которая отвечает на вопросы, учитывая большую базу знаний, которая по длине не ограничивается размером промта (то есть вы бы не смогли просто добавить всю информацию перед каждым вопросом к ChatGPT). Для этого будем использовать контекстные эмбеддинги от OpenAI (для действительно качественного поиска релеватных вопросов из базы знаний) и сам СhatGPT API (для оборачивания ответов в натуральный человеческие ответы). При этом, также предполагается, что ассистент может отвечать не только на прямо указанные в Q&A вопросы, но и на такие вопросы, на которые смог бы отвечать человек, который ознакомился с Q&A. Кому интересно научиться делать простых ботов, отвечающих по большой базе знаний, добро пожаловать под кат.

Под кат

Python декораторы на максималках. Универсальный рецепт по написанию и аннотированию от мала до велика

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров61K

Декорирование функций - это, наверное, самая сложная среди базовых и самая простая среди продвинутых фич языка Python. С декораторами, наверное, знакомы все джуны (хотя бы в рамках подготовки к собеседованиям). Однако, крайне мало разработчиков пишут их правильно. Особенно принимая во внимания тенденции последних нескольких лет к аннотированию всего и вся. Даже популярные open-source проекты (если основная часть их кода была написана до 2018 года) вряд ли дадут вам примеры декораторов, отвечающих всем современным требованиям к коду.

Так давайте разбираться!

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

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

Давайте разбираться

Создание анимированных графиков с помощью Matlab

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

Анимированные графики помогают представить информацию более красиво и наглядно. Matlab позволяет их создавать с помощью всего пары функций. Как это сделать, читайте в данной статье.

Читать далее

Нейронные сети врываются в медицину

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров12K

Доброго времени суток habr, на связи Николай Иванов, студент-магистр 1 курса Сколтеха факультета Data Science. С почином, так как это моя первая, и, надеюсь, не последняя статья на habr. С того момента как я познакомился с областью Deep Learning прошло уже около двух лет. С самого начала мне была интересна область обработки естественного языка (Natural Laguage Processing, NLP), о некоторых задачах которой и результатах я попробую рассказать в этой статье. В мае 2023 года начался мой путь в Sber AI Lab в замечательном центре медицины. Мой рассказ будет в какой-то степени сравнением того что было сделано до меня и того, какие идеи мы развили, что получилось, а что не получилось. Хочу сослаться на замечательную статью Даниила (https://habr.com/ru/articles/711700/), который использовал модель RuBioBERTa для задач из MedBench. Я же буду использовать другое решение, посмотрим, чем оно лучше, чем хуже и вообще насколько подходит для NLP-задач в медицине.


Немного оффтопа

Я очень рад, что каждый месяц появляются новые, более сложные и интересные архитектуры, реализующие смелые идеи, которые двигают вперёд области Deep Learning, NLP и Computer Vision (CV), но сколько из них реально используются в прикладных задачах? Вот оценка внедрения AI решений по странам (на основании отчёта IBM Global AI Adoption Index 2022):

Читать далее

От «из мха и шишек» до продукта | Постройка электросерфа и гидрофойла

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров7.3K
В прошлых двух статьях были изложены общие моменты и негативный опыт по постройке двухтактного ДВС. Эта статья — более положительный пример, но боли и страданий в ней не меньше.

Поехали.

1. Эмпирическое проектирование.


1.1 Серф


Параллельно с постройкой 2Т ДВС мотора, мы начали делать электричку.

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

image
К- качество.
Читать дальше →

Аннотирование повреждений автомобилей для обучения искусственного интеллекта

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

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

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

Прибытие тензорного поезда. Как достижения мультилинейной алгебры помогают преодолеть проклятие размерности

Уровень сложностиСложный
Время на прочтение6 мин
Количество просмотров9.6K

Привет! Меня зовут Глеб Рыжаков, я научный сотрудник Сколтеха. Я занимаюсь математикой, а точнее, линейной алгеброй, и её приложениями к практическим задачам. Сегодня я расскажу вам о нашем исследовании, которое может помочь справиться с проблемой проклятия размерности, которая возникает во множестве статистических задач, включая машинное обучение.

Понятие «проклятие размерности» появилось в середине прошлого века в пионерской работе Ричарда Беллмана, посвященной методам решения сложных задач путём разбиения их на более простые подзадачи. Сегодня оно понимается в более общем смысле, а именно как экспоненциальный — O(nd) — рост количества необходимых данных и, как следствие, количества памяти, необходимой для их хранения, с ростом размерности пространства d. Когда задачу можно свести к работе с многомерными массивами в общем случае комплексных чисел, удобно говорить о d-мерных тензорах и использовать достижения мультилинейной алгебры. Хорошая новость заключается в том, что там существует такая процедура, как тензорное разложение, которое в ряде случаев может помочь преодолеть проклятие размерности.

Читать далее

10 приёмов, чтобы получить быструю и качественную картинку в Midjourney

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

Меня зовут Андрей Цыган - я предприниматель, управленец и как энтузиаст исследую возможности нейросетей. Я никогда не работал ни с графическими редакторами, ни даже с PhotoShop - но постоянно нуждался в таких услугах. Качественные изображения мне были нужны для презентаций, маркетинговых материалов, соц. сетей.

Из всех сетей генерации изображений мне больше всего понравился Midjourney - оптимальное качество на потраченное время. Я понимаю в самом Midjourney (не говоря про Stabble Diffusion) можно углубиться в детали - но я не дизайнер или AI artist, мои задачи прикладные.

У меня уже сгенерированно более 4000 изображений и я выделил 10 методов, которые позволяют достаточно быстро и качественно получить нужный мне контент.  Они могут использоваться как обложка к посту или лонгриду, или я чаще использую в презентации.
Надеюсь, эта статья сэкономит вам несколько часов!

Читать далее

Определение местоположения в Беспилотных автомобилиях (localization)

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров3.7K

Всем привет, меня зовут Максим Гусев!

Я руководитель проекта в компании по разработке автономного транспорта, а так же студент ATU, Ирландия по Автономным ТС (магистерская степень). Хочу рассказать Вам, как роботы, беспилотники и любой автономный транспорт определяет где именно он находится в текущий момент времени.

Что внутри статьи?

Раздел I - введение и что сейчас происходит на рынке?

Раздел II - локализации на основе GNSS/GPS + Dead Reckoning.

Раздел III - локализация на основе среды (HD карты и 3 основных паттерна связанных с компьютерным зрением)

Разделе IV - современные концепции локализации.

Раздел V - итоги текущего состояния локализации.

Читать далее

Семантическая сегментация на основе архитектуры U-Net и определение расстояния между объектами

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров20K

Всем привет!

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

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

Модель на базе U-Net архитектуры сегментирует различные объекты (кот, стул, стол, тарелка с котлетами итд) и при сближении двух объектов сегментации (кот - тарелка) модель сигнализирует об этом с помощью телеграмм бота.

Отлично, задача поставлена, теперь реализация!

Читать далее

Квантовые компьютеры: когда же, наконец?

Время на прочтение7 мин
Количество просмотров4.9K

Какие инсайты выносит заинтересованный слушатель из выступления визионера? Ключ к решению проблем? Четкое объяснение текущей ситуации? Возможные перспективы? Главное, чему посвящено практически каждое выступление непререкаемого авторитета, – предсказание. В самое ближайшее время, вот-вот, буквально через пару лет, мир изменится до неузнаваемости. Как правило, благодаря “разрушительной силе технологий”, которая положит конец смыслу человеческой жизни. Реже - по другим причинам. 

Проходит несколько лет, и, вспоминая о лекции очередной знаменитости, мы вдруг обнаруживаем ошибки, или что мир не изменился. Нет, появилось много нового, но сам мир как был несовершенным, так и остался. Для успеха по-прежнему требуются знания, а не только навыки гугления. Для личного счастья – любовь. А универсального решения проблем по-прежнему не существует. И не предвидится. А потом мы снова слушаем очередного гуру и снова узнаем, что вот-вот все поменяется.

Читать далее

Гайд по беспроводной связи в кружке робототехники

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров14K

По моим наблюдением, создание управляемых роботов – самая популярная тема во время занятий по освоению Arduino. Ученикам нравится мастерить не просто автоматику – но контролируемые ими напрямую устройства.

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

Читать далее

Обзор бесплатных ботов ChatGPT в телеграме

Время на прочтение5 мин
Количество просмотров261K


Недавно мы писали про бесплатные фронтенды к ChatGPT, созданные главным образом по причине блокировки ОpenAI в РФ. Но технологии не стоят на месте — и сейчас уже в ходу телеграм-боты того же предназначения. Их появление совершенно логично, так как многим людям удобнее работать в привычном мессенджере. А в последние месяцы количество пользователей ChatGPT выросло многократно (и это ещё учебный год не начался).
Читать дальше →

Создание прозрачного окна для рисования поверх всех приложений

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

Шаг 1: Введение

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

В данной статье мы рассмотрим, как создать прозрачное окно для рисования на языке Python, используя библиотеку PyQt5. Мы научимся создавать окно, настраивать его прозрачность и отображать его поверх всех окон на рабочем столе, сохраняя при этом функциональность и удобство использования для пользователей.

Для создания прозрачного окна мы будем использовать мощные инструменты, предоставляемые библиотекой PyQt5.

Шаг 2: Установка необходимых библиотек

Для создания прозрачного окна мы будем использовать библиотеку PyQt5, которая предоставляет мощные инструменты для создания графического интерфейса на основе Qt.

Для установки библиотек можно воспользоваться командой pip:

Читать далее

Как переехать в Европу стартаперам и IT-специалистам

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

Как переехать в Европу без Digital Nomad?

Краткий обзор на 34 визовые программы в Европе для айти-специалистов и предпринимателей, которые ведут к ПМЖ и гражданству.

Читать далее

Arduino AY player с экраном и кнопками

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

Конструируем музыкальный плеер PSG-файлов на чипе AY-3-8910 с OLED-экраном, кнопками управления и дополнительной памятью, а также подключаем выходные и входные сдвиговые регистры и прочие устройства с интерфейсами I2C и SPI к Arduino.

Читать далее

Поиск объектов на изображении. Часть 2

Уровень сложностиСложный
Время на прочтение3 мин
Количество просмотров6.5K

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

Шаг 7: Определение регионов интереса

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

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

Шаг 8: Оптимизация

Мы улучшили метод process_screen класса ScreenCapture, добавив этот функционал. Обновленный код метода выглядит следующим образом:

Читать далее

Информация

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