Как стать автором
Обновить
0
0

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

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

Сгенерированный ИИ код сделает вас плохим программистом

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

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

Для начала уточню, что под использованием сгенерированного ИИ кода я подразумеваю ситуацию, когда ИИ пишет код за вас, а не когда вы используете ИИ как инструмент обучения, чтобы лучше познать тонкости языков программирования и библиотек (по этому поводу у меня тоже есть своё мнение). Но если вы когда-нибудь применяли эти инструменты для того, чтобы ИИ писал код на основании имён методов или комментариев с нечётко описанной функциональностью, или вы используете ИИ для изучения и понимания собственной кодовой базы, чтобы не делать этого самостоятельно, то эта статья — про для вас.
Читать дальше →
Всего голосов 54: ↑51 и ↓3+65
Комментарии170

Полное руководство по обработке ошибок в Python

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

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

  • Когда следует перехватывать исключения, генерируемые вызываемыми вами функциями, а когда этого делать не нужно?
  • Как узнать, какие классы исключений нужно перехватывать?
  • Что нужно делать при перехвате исключений для их «обработки»?
  • Почему перехватывание всех исключений считается порочной практикой, и когда делать это приемлемо?

Вы готовы узнать секреты обработки ошибок в Python? Тогда поехали!
Читать дальше →
Всего голосов 18: ↑17 и ↓1+24
Комментарии5

Пацанский английский. Ленивый способ наконец выучить английский язык: без курсов, без зубрежки, бесплатно

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

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

Наконец случилось чудо. В одну из очередных попыток я нащупал способ, который позволил продолжать развиваться, делать успехи, осознавать их и разжигать мой огонь всё сильнее и сильнее. Сегодня мне сложно представить день, проведенный без английского языка. И мне не хочется говорить без “изучения”, поскольку не сказал бы, что я именно учу. Скорее — постепенно “прошиваюсь” английским, как это обычно происходит с новорожденным детьми, которые постепенно начинают говорить, слушая и наблюдая за своими родителями. В настоящее время мой словарный запас не такой большой: 9 — 12 тысяч слов (зависит от теста). Я свободно смотрю видео на Ютубе разнообразной тематики (видеоуроки, спорт, фитнес, музыка, путешествия, кулинария, обзоры и т.д.), читаю документацию, компьютерную и популярную литературу, публицистику.

Читать далее
Всего голосов 141: ↑132 и ↓9+140
Комментарии290

Скачать русский Windows 11 24H2 IoT Enterprise LTSC или сделать образ с последними обновлениями своими руками

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

На днях Microsoft официально выпустили LTSC версию Windows 11 24H2. В доступные образы встроено обновление KB5043080, версия 26100.1742. Как стало модно в последнее время Россию проигнорировали, LTSC образы доступны на многих языках (ссылки даю не на сайт Microsoft, так как из России загрузки там заблокированы), но русского среди них нет. Хотя синхронно выпущенный Windows Server 2025 той же сборки 26100.1742 имеет поддержку большего количества языков, в том числе и русскую версию (для русской доступно лишь Ознакомительное издание, однако, в серверной ОС из ознакомительного в полное можно перейти просто сменив серийный номер, в том числе на KMS ключ, доступный с сайта Microsoft). Собственно встаёт вопрос добавления русского (или любого другого) языка как второго (или третьего) в установочный образ Windows, чтобы сама установка и интерфейс изначально были доступны на русском.

Именно об этом и пойдёт речь в сегодняшней статье. Рассмотрим, как добавить язык в образ. При этом, раз уж мы будем модифицировать оригинальный образ, то сразу же можем интегрировать последние обновления в него, расскажу где всегда можно взять актуальный список обновлений для разных версий Windows (уже сейчас 26100.1742 не последнее, а статья будет актуальна и после), а для Windows 11 вспомним, как отключать проверку на минимальные системные требования при установке. В конце статьи я дам ссылку на созданный мной образ, в котором добавлен русский язык, включены последние обновления, а также изменена матрица обновлений, так чтобы установка работала поверх любого издания с сохранением всех данных, настроек и приложений. Ссылки в конце статьи, там же можно подписаться и поставить лайк! :)

SPOILER - образа будет два :)

Как сделать или где скачать русский образ
Всего голосов 42: ↑40 и ↓2+49
Комментарии74

Семантический поиск (homemade)

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

Основой семантического поиска может являться ML задача Sentence Similarity, а если быть еще конкретнее, то это Semantic Textual Similarity. Модели, обученные под эту задачу, способны оценивать насколько близки предложения по своему смыслу. Всё, что нам дальше остается, так это засунуть модель в некоторую поисковую систему...

Но тут давайте по порядку
Всего голосов 9: ↑9 и ↓0+14
Комментарии1

1000 мозгов — новая книга о многогранном человеческом интеллекте

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


Привет, Хабр!


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

Совсем недавно появилась поистине революционная теория работы мозга. И придумана она, внимание, бывшим разработчиком популярных КПК, основателем Palm Computing. Неожиданно, верно?  И для того чтобы донести свою новейшую теорию до широкой аудитории, Джефф Хокинс написал книгу. Научно-популярную. И сегодня мы ее разберем по кусочкам! 
Читать дальше →
Всего голосов 49: ↑43 и ↓6+55
Комментарии41

Секреты логических операторов в Python

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

Логические операции играют важную роль в программировании. Они используются для создания условных конструкций и составления сложных алгоритмов. В Python для проведения логических операций используются логические операторы:

not — логическое отрицание

and — логическое умножение

or — логическое сложение

В этой статье мы поговорим о неочевидных деталях и скрытых особенностях работы логических операторов в Python.

Читать далее
Всего голосов 46: ↑44 и ↓2+52
Комментарии37

Как сделать голосовой интерфейс к LLM

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

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

Мы с друзьями из кемпа 19:19, вдохновившись идеей католических исповедален, придумали сделать свой AI Confession Room, где любой желающий мог бы поговорить с искусственным интеллектом.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии7

Как устроен RAPTOR — новый подход для RAG, который понимает контекст сразу всей книги

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

Помните, как на школьных уроках литературы иногда надо было развернуто ответить на вопрос о сюжетной линии героя или каком-то событии книги? Например, объяснить мотивацию и развитие Евгения Онегина. Чтобы ответить на этот вопрос на пятёрку, мало пролистать краткий пересказ романа — придётся прочитать его весь. 

Примерно для этого в 2020 году предложили RAG (retrieval-augmented generation) методы. Есть и другая мотивация для RAG — после обучения LLM на большой базе данных возникает вопрос, что делать с обновлением этой самой базы. Дообучение — не беспроигрышный вариант, так как это не всегда удобно для гигантских объемов данных. В базовом подходе RAG база знаний нарезается на небольшие куски текста, chunks, в 100-1000 слов, которые в виде эмбеддингов хранятся, как правило, в векторной БД, пока не понадобятся. Запросы пользователя дополняются найденными чанками в качестве контекста и выглядят для модели как один большой запрос. 

Так вот, большинство существующих RAG методов способны переварить только небольшое количество достаточно коротких и последовательных чанков. Это ограничивает возможность оперировать крупномасштабным контекстом. Возвращаясь к уроку литературы, если перед тем, как выдать ответ, прочитать несколько последовательных строф романа, этого явно будет недостаточно.  Недавно вышедшая Стэнфордская статья RAPTOR: Recursive Abstractive Processing for Tree-organized Retrieval призвана решить эту проблему. Основная идея заключается в том, чтобы обобщать отдельные куски большого материала, затем обобщать обобщения и так дальше.

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии2

Раскрывая секреты LLM: руководство по основным понятиям больших языковых моделей без хайпа

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

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

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

Читать далее
Всего голосов 25: ↑25 и ↓0+25
Комментарии7

17 продвинутых RAG-техник: как превратить прототип LLM-приложения в готовое решение

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

GenAI стремительно ворвался в нашу жизнь. Ещё вчера мы с опаской смотрели на него, а сегодня уже вовсю используем в работе. Многие эксперты пророчат GenAI большое будущее, считая его предвестником новой промышленной революции.

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

Как метко подметил Мэтт Тёрк: если в 2023 году мы боялись, что GenAI нас погубит, то в 2024-м мечтаем хоть как-то приручить его и запустить в "мелкосерийное производство".

Если вы уже успели создать свои первые LLM-приложения и готовы вывести их на новый уровень, эта статья для вас. Мы рассмотрим 17 продвинутых RAG-техник, которые помогут избежать типичных ошибок и превратить ваш прототип в мощное и стабильное решение.

Пристегните ремни, мы отправляемся в увлекательное путешествие по миру AGI! Вместе мы:

Поймем, как система отличает ценную информацию от информационного шума;

Разберемся, как правильно подготовить данные для LLM;

Выясним, можно ли строить цепочки из нескольких LLM;

Поймем, как направлять запросы через разные компоненты системы.

Приятного прочтения(:

Читать далее
Всего голосов 18: ↑18 и ↓0+19
Комментарии8

Эволюция сервиса классификации

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

Привет, Хабр. Меня зовут Аделина Ямалтдинова, я разработчик технологического сервиса «Классификатор» — одной из частей платформы «Преферентум».

Как вы могли догадаться из названия, сервис нужен для классификации неструктурированной информации — документов, заявок, звонков и т. д. Он применяется для маршрутизации обращений на горячую линию, сортировки входящих документов в СЭД, тематической классификации, выявления негативных отзывов, определения типа и контроля комплектности документации и т. п. Таким образом, «Классификатор» упрощает переход компаний к интеллектуальной автоматизации различных бизнес‑процессов, обогащая используемые системы ИИ.

В статье я расскажу об устройстве нашего «Классификатора» и о том, как мы его улучшаем.

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии0

Идея для языка программирования искусственного интеллекта. Свойство-ориентированный подход

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

В данной статье предлагается новый свойство-ориентированный подход к организации объектной модели в языках программирования. Основная идея - вынести свойство из объекта и сделать понятия свойства и объекта равноправными. Это позволит получить крайнюю гибкость и универсальность описания предметных областей, приблизив это описание к восприятию объектов и свойств человеком.

Свободу свойствам от объектов!

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии22

AI-программирование: как я решил задачу, не написав ни строчки кода

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

Вы что-нибудь слышали об AI-кодерах? Это такие программисты, которые не умеют писать код. Нас ими все пугают, что вот они придут и отнимут нашу работу. Насколько эти опасения оправданы? А вы знаете, что они уже среди нас?

Им пока не просто, им все еще приходится проходить собеседования, притворяясь обычными программистами и заучивая принципы SOLID. Никто из кандидатов в здравом уме не скажет работодателю: "Я не умею писать код, за меня его пишет ChatGPT", и работодатели пока тоже не понимают, что с ними делать, смогут ли они создавать хорошие продукты, они не понимают, как оценивать их работу, сколько они стоят, как их собеседовать.

Я пока тоже отношусь к скептикам, но поскольку я считаю себя человеком с ярко выраженным критическим мышлением, я задался вопросом: а что если?

Я решил провести эксперимент и сделать задачу, не написав ни строчки кода, обладая минимальными техническими знаниями, и вот что у меня получилось. Дабы этот пост влез в рамки 10-15 минутной статьи, я сделал допущение, что проект уже существует, кто-то помог мне развернуть его у себя на машине. У меня стоит PhpStorm, настройки которого были подготовлены старшими товарищами, и я знаю, где находится командная строка, в которую я буду копипастить команды. Задача, которую я буду решать, будет уровня джуниор+.

Читать далееa
Всего голосов 21: ↑10 и ↓11+3
Комментарии71

Как анализировать тысячи отзывов с ChatGPT? Частые ошибки и пример на реальных данных

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

В этой статье я расскажу про свой опыт решения рабочей задачи — анализ отзывов о компании от пользователей. Мы разберем возможные ошибки и посмотрим на пример кода и реальных данных. Гайд будет полезен всем, у кого нет большого опыта в анализе данных или работе с LLM через API.

Читать далее
Всего голосов 20: ↑19 и ↓1+19
Комментарии12

Шпаргалка для создания идеального промпта LLM

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

Большие языковые модели могут производить любую последовательность символов на каком угодно языке в любом формате данных (включая языки программирования, аудио и видео). Соответственно и качество этой последовательности может быть самым разным. Иногда мы получаем многословные запутанные объяснения с галлюцинациями и устаревшими знаниями, а иногда ― элегантную функцию на Python решающую сложную задачу,  идеальное название для бренда, а скоро и первую серию будущего бестселлера. Более того, модель может надёжно и точно ответить на миллионы вопросов ваших клиентов, сопоставить запросы из сотен позиций с многотысячным каталогом, самостоятельно обработать заявки по страховым искам, обучить робота или перебрать новые патентные заявки в поисках конфликтов со старыми. Однако чтобы полностью реализовать потенциал LLM, необходимо научиться мастерски давать им подсказки. А как это делать, я расскажу в этой статье.

Читать далее
Всего голосов 32: ↑32 и ↓0+44
Комментарии18

Flask для начинающих

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

Как начать работать с Flask

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

Вы новичок в программировании и мечтаете о создании собственных веб-приложений? Эта статья — ваш ключ к пониманию Flask, одного из самых доступных и гибких веб-фреймворков на Python. От установки и простых примеров до работы с данными и базами данных — мы покрываем все, что вам нужно для старта.

За 15-20 минут чтения вы получите не только теоретические знания, но и практические советы от опытного разработчика. Присоединяйтесь к миру веб-разработки и откройте для себя, как просто и увлекательно может быть создание ваших первых веб-приложений с Flask!

Читать далее
Всего голосов 14: ↑12 и ↓2+11
Комментарии39

Мега-Учебник Flask, Часть 1: «Привет, Мир!»

Время на прочтение6 мин
Количество просмотров579K
Это первая статья в серии, где я буду документировать мой опыт написания веб-приложения на Python, используя микрофреймворк Flask.

Здесь список всех статей в серии:
Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud

Моя предыстория


Я разработчик ПО с двузначным числом лет опыта разработки комплексных приложений на нескольких языках. Впервые я познакомился с Python для создания привязок к C++ библиотеке на работе. Вдобавок к Python, я писал веб-приложения на PHP, Ruby, Smalltalk и, верите вы или нет, еще на С++. Из всего этого, я нахожу комбинацию Python/Flask самой гибкой.
Я хочу начать это долгое и удивительное путешествие
Всего голосов 63: ↑60 и ↓3+57
Комментарии31

aiogram bot для вуза и куча всего остального

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

Краткий обзор изнутри нашего технологичного помощника в студенческих тяжбах. Проект для студентов, в котором мы помогаем им получать расписание ,отправлять жалобы и еще много всего. А также показано как это все реализовано с любимой асинхронностью, а точнее aiogram, aiohttp, asyncpg .

Читать далее
Всего голосов 8: ↑5 и ↓3+3
Комментарии5

Используем REM для адаптива: комфортная резиновая вёрстка для всех устройств

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

Все верстальщики рано или поздно сталкивались с болью, которая заключается в адаптиве сайта под различные устройства. Существуют разные технологии, упрощающие подгонку размеров под определённые устройства, например, clamp(). Эта функция удобна, так как позволяет минимизировать использование брейкпоинтов, но у неё есть свои недостатки:

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Комментарии8

Информация

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