В середине сентября компания OpenAI представила новую языковую модель со скромным названием o1. Несмотря на то, что многие уже догадывались о предстоящем релизе и ожидали настоящего фурора в мире искусственного интеллекта, ничего такого не произошло. Разработчик хоть и заявил, что новый продукт способен к рассуждению на уровне экспертов в различных областях, проверить это на практике оказалось не так-то просто. Неожиданно выяснилось, что o1 не только требует особого подхода к промптингу, но и думает заметно дольше, чем ChatGPT-4o. Так что же делает эту модель такой уникальной и какие перспективы на самом деле она открывает для будущего ИИ? Давайте разбираться.
User
По следам Жака Арсака — о программировании игр
Старая книжечка "Программирование Игр и Головоломок" - наверное попадалась многим из нас. Изданная в 1985 в наши дни она смотрится архаично и сподвигнуть кого-то программировать приведённые в ней игры (и подобные им) - затруднительно. А жаль :)
Попробуем немного освежить этот материал. Немного познакомимся с примерами из книжки - и поговорим о реализации таких игр в виде HTML-страничек - либо в виде HTTP-сервера - так что любопытствующие смогут даже попробовать написать код и поиграть против онлайнового злого гения (ну это преувеличение, он далеко не гениален).
Открытие TortoiseORM: Асинхронная ORM глазами Python-разработчика
Недавно я столкнулся с задачей выбора ORM для нового проекта на Python, и мое внимание привлекла TortoiseORM. Скажу честно, я был удивлен тем, насколько эта ORM упрощает работу с базами данных в асинхронных приложениях.
Как разработчик, я привык к таким инструментам, как SQLAlchemy и Peewee. Однако интеграция асинхронности в этих ORM зачастую требует дополнительных настроек и может быть довольно запутанной. TortoiseORM же изначально спроектирована с учетом асинхронности, что сразу облегчает жизнь.
Попробуйте Tauri
Хочу рассказать про один из моих любимых Opensource проектов: Tauri. Это среда для создания десктопно-мобильных приложений на JavaScript, но быстрых и легковесных. С опциональными дополнениями на Rust, а через него и на всех других языках.
Классификация действий на видео (Action Classification)
Данная статья показывает, как можно решить задачу Action Classification, а именно следить за рабочим процессом на производстве, где необходимо определить работает человек или нет.
Для начала необходимо определить проблематику данной задачи. Она состоит в том, что для стандартной задачи классификации изображения мы используем свёрточную сеть, на которую передаем изображение и получаем предсказание. А теперь вопрос на засыпку: можно ли по одному изображению классифицировать действие человека на снимке ниже?
Как запустить свое электронное устройство в «серию» и не остаться без штанов
В общих чертах про разработку электроники, изготовление пластикового корпуса, поиск исполнителей и примерные цены на серийный выпуск.
Создание AI-ассистента с OpenAI Assistants API на Go
Всем привет!
Недавно возникла необходимость создать AI-ассистента, обученного искать и выдавать информацию из базы знаний, предоставленных заказчиком.
В этой статье мы рассмотрим процесс создания MVP такого ассистента. Мы загрузим в него файлы, зададим инструкции, привяжем все к Telegram-боту и будем обрабатывать запросы пользователей.
Для создания ассистента будем использовать функциональность OpenAI Assistants API с помощью сторонних прокси-сервисов.
Все это напишем на Go, а код, готовый к запуску и компиляции, будет доступен в конце статьи.
Приятного чтения!
5 одноплатников для самых разных задач: новинки сентября
В этом месяце появилось несколько интересных одноплатников, о которых стоит рассказать на Хабре. Среди них как универсальные девайсы, так и устройства, которые предназначены для определенного круга задач. Если вдруг мы что-то упустили — рассказывайте в комментариях о тех девайсах, которые понравились именно вам. А если вы с чем-то работаете давно и плотно — делитесь своим опытом! Подробности под катом.
Простой мини-чат на FastApi: Современный интерфейс, вебсокеты и SQLAlchemy с деплоем
Привет, друзья! Сегодня я подготовил для вас увлекательную практическую статью о создании мини-чата на FastApi. Мы погрузимся в мир вебсокетов, узнаем, зачем они нужны и как применяются в реальных приложениях. Также я продемонстрирую работу с асинхронной SQLAlchemy на примере взаимодействия с базой данных SQLite.
Для создания современного интерфейса мы обратимся к интересному и бесплатному сервису Websim.ai, который за пару минут сгенерирует нам интерфейс, включая страничку для входа/регистрации и страницу самого чата.
Чтобы наш чат мог обслуживать множество пользователей одновременно, мы выполним деплой нашего FastApi приложения. Для этого воспользуемся сервисом Amvera Cloud. Нам нужно будет подготовить файлы приложения, написать код, создать файл с настройками (можно сгенерировать на сайте или скопировать мой код), а затем доставить файлы на сервис. Для доставки можно использовать встроенный терминал или GIT, используя стандартные команды PUSH/PULL.
Но прежде чем мы погрузимся в код, давайте кратко обсудим, что такое вебсокеты и как они работают в контексте FastApi.
Эксперименты с фиксированной статистической мощностью: вопрос не в подглядывании, а в том, на что именно смотрят
Иногда до начала эксперимента не удаётся оценить то, какого размера должна быть выборка, способная обеспечить его нормальное проведение. Для решения этой проблемы можно провести последовательный тест или A/A‑тест. Но последовательные тесты обычно отличаются меньшей чувствительностью и оказывают отклоняющее влияние на статистическую оценку эффекта воздействия. A/A‑тесты увеличивают длительность экспериментов, не гарантируя при этом того, что найденный в итоге размер выборки окажется корректным. В этом материале мы представим основные моменты из нашей недавней публикации (Precision‑based designs for sequential randomized experiments, Mattias Nordin, Mårten Schultzberg, 2024), в которой мы представляем альтернативный метод, названный нами «fixed‑power design» (схема эксперимента с фиксированной статистической мощностью). При применении схем с фиксированной статистической мощностью эксперимент начинают, не имея оценки размера выборки. Необходимый размер выборки находят, опираясь на имеющиеся данные о текущих результатах эксперимента. Эксперимент останавливают в тот момент, когда текущий размер выборки оказывается больше необходимого размера выборки. Мы покажем, что эксперименты с фиксированной статистической мощностью можно анализировать, используя стандартные методы без какой‑либо коррекции. Точечные оценки оказываются непротиворечивыми, а доверительные интервалы эффекта воздействия обладают асимптотическим номинальным покрытием. Не все формы «подглядывания» приводят к увеличению частоты появления ложноположительных выводов на основе выборки фиксированного размера.
Проектируем А/Б-эксперименты грамотно
Проектирование A/B-экспериментов может быть сложным процессом, особенно для тех, кто только начинает работать с аналитикой и тестированием в мобильных приложениях. Нередко возникают проблемы с формулировкой гипотез, выбором метрик и определением оптимального распределения аудитории.
На связи Алексей Андриянов, менеджер продукта в RuStore. В этой статье на простом примере мы рассмотрим, как правильно подойти к постановке гипотезы и избежать распространенных ошибок при тестировании изменений в мобильных приложениях.
Почему «Идеальный программист» Роберта Мартина далёк от реальности: критический взгляд
Недавно я прочитал книгу Роберта Мартина «Идеальный программист». Книга, несмотря на свою популярность, оставила у меня много вопросов, касающихся того, насколько её советы применимы в реальной жизни разработчиков. В этой статье я предлагаю обратить внимание на некоторые из них
Moshi: GPT4-O voice mode дома (обзор)
Прежде чем приступать к самому обзору, хотелось бы обозначить отличительные черты подхода, относительно большинства диалоговых систем:
Текущие системы работают в каскадной манере: сначала «активационное» слово, затем аудио переводится в текст (ASR), текст обрабатывается и анализируется, и, наконец, ответ генерируется через TTS. Однако это медленно, теряет эмоции и «живость» разговора, и, что самое важное, все взаимодействие происходит через жесткое чередование говорящих — сначала ты, потом я, и так далее.
Системный аналитик с ЗП 400+. Найти за 30 дней. Часть 2 «Проверка на прочность»
Собеседование на системного аналитика — это проверка теоретической базы, гибкости мышления и способности решать сложные задачи на лету.
Кому предложат ЗП 200-, а кому 400+? Собеседование расставит всё на свои места.
Знакомство и остальные компоненты собеседования описаны в первой части. Сегодня говорим про харды. Итак, сразу к делу.
Приточка на минималках или как сделать дёшево, быстро и качественно одновременно
Вопрос — нужен ли кондиционер в своём доме или на даче в средней полосе России? Странный вопрос, скажете вы — температура летом зашкаливает же за 30 градусов!
Но этот вопрос становится не таким очевидным, когда вспомним, что:
..лето в Подмосковье имеет свои особенности.
Опыт тюнинга Llama3 405B на AMD MI300x
Опенсорсные модели становятся всё объёмнее, поэтому потребность в надёжной инфраструктуре для выполнения крупномасштабного обучения ИИ сегодня как никогда высока. Недавно наша компания выполнила fine-tuning модели LLaMA 3.1 405B на GPU AMD, доказав их способность эффективно справляться с крупномасштабными задачами ИИ. Наш опыт был крайне положительным, и мы с радостью выложили всю свою работу на GitHub в опенсорс.
GPU AMD, и в особенности серия MI300X — это серьёзная альтернатива ИИ-оборудованию NVIDIA, обеспечивающая больше производительности на вложенный доллар. Наша система состояла из одного узла с 8 GPU AMD MI300x, а для fine-tuning мы использовали JAX. В этой статье мы расскажем всю историю fine-tuning LLaMA 405B, в том числе и подробности шардинга параметров и реализации LoRA.
Трассировка OpenTelemetry в 200 строк кода
Разработчики часто воспринимают трассировку как нечто загадочное, и OpenTelemetry — не исключение. Она может казаться еще более сложной из‑за множества новых концепций, с которыми сталкиваешься в базовых примерах.
Ситуация усугубляется тем, что по мере создания стабильной и надежной библиотеки для трассировки сам код усложняется, чтобы учитывать редкие случаи, поддерживать работу в разных окружениях и оптимизировать производительность, минимизируя влияние на приложения. Это особенно заметно при использовании автоматической инструментации, которая может «волшебным образом» оборачивать или изменять код, который изначально для этого не предназначен.
Неудивительно, что многие разработчики воспринимают библиотеки трассировки как «черные ящики». Мы добавляем их в приложения, надеемся на лучшее и полагаемся на них в критические моменты, например, во время инцидентов ночью.
На самом деле, трассировка гораздо проще, чем кажется.
Гипермедийные системы на ASP.NET MVC 5. Часть вторая — продолжение
Продолжение статьи по быстрой разработке гипермедиа-ориентированного веб-приложения с HTMX 2.0.
Вторая часть короткой обучающей статьи по разработке приложений, ориентированных на гипермедиа. В этой части вы можете продолжить создавать свое первое гипермедиа-ориентированное приложение. В этой части будет произведен рефакторинг, будут добавлены несколько новых гипермедийных элементов на страницу ожидания игры и будет создана страница игры.
В статье будет использоваться библиотека Htmx.js вместе с устаревшей серверной платформой ASP.NET MVC 5.
Программирование — это вообще не просто!⠀
Привет, Хабр!
Идея статьи появилась, когда я начал повсюду замечать якобы подтверждения мифа, что «программирование — это просто».
В новостях «восьмилетняя девочка, которая второй раз в жизни занимается программированием, наклепала чат-бота за 45 минут» (ага, да!).
Курсы предлагают мне за 10 месяцев с нуля стать миддл+ (ага, да!).
Но я-то знаю, как оно на самом деле. Мы, программисты, обычно решаем проблемы и двигаемся дальше, но я решил запротоколировать всё как есть, и в течение пары месяцев скрупулёзно записывал всю ту хрень, что происходила со мной и моими коллегами, чтобы показать программирование без прикрас. Поехали!
Приложение, идентичное натуральному: 7 способов прокачать свой pet-проект
Обучение программированию очень похоже на единоборства: это сложный комплексный навык, искусство, если угодно. Есть в программировании и свои «боксёрские мешки» — это pet‑проекты. Но в отличие от единоборств, не совсем очевидно, что свой домашний проект и реальный коммерческий — это не одно и то же. В итоге ребята, старательно разрабатывающие очередное приложение для списка дел и просмотра погоды, рискуют заложить фундамент сомнительного качества, выстраивая цитадель своей профессиональной экспертизы.
Если вы начинающий программист и хотите повысить положительный эффект от работы над pet‑проектом, то эта статья для вас. Мы обсудим, как сделать так, чтобы через свой pet‑проект вы развили навыки, необходимые при работе на коммерческом проекте.
Information
- Rating
- Does not participate
- Location
- Россия
- Registered
- Activity