Новость
Новость
Новость
13 нояб. 2024 г.
Представляем nFactorial Research!
Представляем nFactorial Research!
Арман Сулейменов
Арман Сулейменов
Летом этого года мы собрали сильную команду разработчиков и создали новую компанию - nFactorial AI.
К концу июля завершили первую версию автономного ИИ-агента, который может с нуля строить и публиковать простые веб-приложения. Это мультиагентная система, которая включает в себя следующих агентов: 1) ИИ-TPM (технический програм-менеджер): берет задачу от заказчика-пользователя, подробно расписывает все технические спецификации, разбивает проект на отдельные майлстоуны, далее присваивает эти задачи ИИ-frontend-разработчику или ИИ-backend-разработчику; 2-3) ИИ-frontend-разработчик и ИИ-backend-разработчик, которые пишут (и дебажат) React и Python-код соответственно; 4) ИИ-код-ревьюер, который анализирует написанный код; 5) ИИ-deployment инженер, который публикует веб-приложение в интернет. В следующем демо (июль 2024г) наш продукт автономно строит и публикует квиз-игру, онлайн-шахматы, посадочную страницу для кофейни, P2P-чат и тайпрейсер-игру для быстрого набора текста на клавиатуре:
После общения и тестирования с потенциальными пользователями в августе мы решили не продолжать работу над ИИ-разработчиком и не выводить его на рынок. На это есть следующие причины: 1) на данный момент автономные агенты в области программирования не способны на более менее сложные проекты для индустрии, они умеют делать простые веб-приложения - не очень ясно, кто является клиентом для подобных инструментов; 2) полсотни профессиональных разработчиков, которых мы проинтервьюировали, хотят больше контроля и требуют того, чтобы ИИ был частью их IDE и привычного воркфлоу. После всех интервью мы осознали, что идея делать продукты для разработчиков нас не сильно зажигает. Мы хотим строить полезные ИИ-продукты для широкой (не обязательно технически подкованной) публики.
В сентябре мы экспериментировали с несколькими идеями, одну из которых запустили на Product Hunt. Мы создали инструмент, который помогает инвесторам подготовиться к Y Combinator Demo Day. Мы проанализировали 255 профилей компаний с сайта YC, все LinkedIn’ы фаундеров, сайты стартапов (включая изображения), YouTube и т. д. С помощью нашего инструмента инвесторы могут получить ответы на следующие вопросы: «Какие стартапы YC S24 были основаны серийными фаундерами?», «Какие стартапы были основаны выпускниками Принстона?», «Какие стартапы уже приносят доход?», «Клиентом каких стартапов является Airbnb?» и т.д.
Далее мы решили углубить свои знания в области мультиагентных ИИ-систем и поставили себе цель добиться первого места в SWE-Bench. Посвятили этому весь октябрь. SWE-bench - де-факто золотой стандарт и главный бенчмарк в мире для измерения умения ИИ-систем решать задачи в области написания кода. Бенчмарк тестирует возможности больших языковых моделей в умении исправлять баги из реальных GitHub-репозиториев. SWE-bench Verified состоит из 500 пар "Issue-Pull Request", взятых из популярных Python-репозиториев на GitHub. Каждая запись в SWE-bench включает описание проблемы (issue) и pull request, который ее решает. Pull request содержит изменения в коде и тесты, которые должны проваливаться до внесения изменений и проходить после них. Системы оцениваются на основе их способности генерировать корректные изменения в коде, которые проходят все тесты после внесения правок. В репозиториях от 1000 до 3000+ файлов. Решение состоит из 2 шагов. Сначала нужно правильно определить все файлы (и фрагменты кода в этих файлах), которые нуждаются в исправлении. Далее нужно сгенерировать патчи, после которых все начинает работать правильно. Говоря по-простому, наш ИИ-агент должен исправить максимальное кол-во багов из 500. Наш последний результат - 49.2% - третье место в мире: https://github.com/swe-bench/experiments/pull/109
Многому научились благодаря SWE-bench. За 4 недели создали 4 решения со следующими результатами: 25.80%, 31.6%, 41.6%, 49.2%. Построили свою кастомную версию LangGraph, позволяющую нам быстро запускать ИИ-агентов. Научились оценивать различные логические пути рассуждений от вопроса до ответа (reasoning paths) для выбора правильного ответа с большей вероятностью. Научились максимально эффективно использовать ограниченное контекстное окно, “читать”, понимать и анализировать большие кодовые базы с 3000+ файлами: https://www.nfactorial.dev/swe-bench
В ноябре вернулись в продуктовую разработку и рады представить Вашему вниманию первую версию нашего нового продукта - nFactorial Research - инструмент для анализа 1000+ Ваших файлов и ссылок. Фактически, это более универсальная версия продукта, который мы создали в сентябре. Кому он может пригодится? Венчурные инвесторы и стартап-акселераторы могут быстро отскринить тысячи заявок от стартапов и понять, какие заслуживают следующего этапа. Рекрутеры могут быстро проанализировать 1000+ резюме, чтобы пригласить лучших кандидатов на Zoom-интервью. Консалтинг-компании могут делать анализ рынка для своих клиентов. Отделы продаж могут категоризировать своих лидов. Ученые могут углубить свои знания, “общаясь” с 1000+ научными статьями из arXiv. Студенты ВУЗов могут готовиться к экзаменам с ИИ-тестами на основе своих конспектов с лекций. Разработчики, которые только присоединились в новую компанию, могут задать любой вопрос по своей кодовой базе для того, чтобы быстрее войти в курс дела. Новые сотрудники компании могут найти ответы на свои вопросы из централизованной корпоративной базы знаний.
Еще много недочетов и огромный бэклог того, что будет частью следующих релизов. Однако, словами известного классика: “Если Вам не стыдно за первую версию, то Вы запустились слишком поздно”. Будем благодарны любой обратной связи!
Попробовать: https://research.nfactorial.dev/
Летом этого года мы собрали сильную команду разработчиков и создали новую компанию - nFactorial AI.
К концу июля завершили первую версию автономного ИИ-агента, который может с нуля строить и публиковать простые веб-приложения. Это мультиагентная система, которая включает в себя следующих агентов: 1) ИИ-TPM (технический програм-менеджер): берет задачу от заказчика-пользователя, подробно расписывает все технические спецификации, разбивает проект на отдельные майлстоуны, далее присваивает эти задачи ИИ-frontend-разработчику или ИИ-backend-разработчику; 2-3) ИИ-frontend-разработчик и ИИ-backend-разработчик, которые пишут (и дебажат) React и Python-код соответственно; 4) ИИ-код-ревьюер, который анализирует написанный код; 5) ИИ-deployment инженер, который публикует веб-приложение в интернет. В следующем демо (июль 2024г) наш продукт автономно строит и публикует квиз-игру, онлайн-шахматы, посадочную страницу для кофейни, P2P-чат и тайпрейсер-игру для быстрого набора текста на клавиатуре:
После общения и тестирования с потенциальными пользователями в августе мы решили не продолжать работу над ИИ-разработчиком и не выводить его на рынок. На это есть следующие причины: 1) на данный момент автономные агенты в области программирования не способны на более менее сложные проекты для индустрии, они умеют делать простые веб-приложения - не очень ясно, кто является клиентом для подобных инструментов; 2) полсотни профессиональных разработчиков, которых мы проинтервьюировали, хотят больше контроля и требуют того, чтобы ИИ был частью их IDE и привычного воркфлоу. После всех интервью мы осознали, что идея делать продукты для разработчиков нас не сильно зажигает. Мы хотим строить полезные ИИ-продукты для широкой (не обязательно технически подкованной) публики.
В сентябре мы экспериментировали с несколькими идеями, одну из которых запустили на Product Hunt. Мы создали инструмент, который помогает инвесторам подготовиться к Y Combinator Demo Day. Мы проанализировали 255 профилей компаний с сайта YC, все LinkedIn’ы фаундеров, сайты стартапов (включая изображения), YouTube и т. д. С помощью нашего инструмента инвесторы могут получить ответы на следующие вопросы: «Какие стартапы YC S24 были основаны серийными фаундерами?», «Какие стартапы были основаны выпускниками Принстона?», «Какие стартапы уже приносят доход?», «Клиентом каких стартапов является Airbnb?» и т.д.
Далее мы решили углубить свои знания в области мультиагентных ИИ-систем и поставили себе цель добиться первого места в SWE-Bench. Посвятили этому весь октябрь. SWE-bench - де-факто золотой стандарт и главный бенчмарк в мире для измерения умения ИИ-систем решать задачи в области написания кода. Бенчмарк тестирует возможности больших языковых моделей в умении исправлять баги из реальных GitHub-репозиториев. SWE-bench Verified состоит из 500 пар "Issue-Pull Request", взятых из популярных Python-репозиториев на GitHub. Каждая запись в SWE-bench включает описание проблемы (issue) и pull request, который ее решает. Pull request содержит изменения в коде и тесты, которые должны проваливаться до внесения изменений и проходить после них. Системы оцениваются на основе их способности генерировать корректные изменения в коде, которые проходят все тесты после внесения правок. В репозиториях от 1000 до 3000+ файлов. Решение состоит из 2 шагов. Сначала нужно правильно определить все файлы (и фрагменты кода в этих файлах), которые нуждаются в исправлении. Далее нужно сгенерировать патчи, после которых все начинает работать правильно. Говоря по-простому, наш ИИ-агент должен исправить максимальное кол-во багов из 500. Наш последний результат - 49.2% - третье место в мире: https://github.com/swe-bench/experiments/pull/109
Многому научились благодаря SWE-bench. За 4 недели создали 4 решения со следующими результатами: 25.80%, 31.6%, 41.6%, 49.2%. Построили свою кастомную версию LangGraph, позволяющую нам быстро запускать ИИ-агентов. Научились оценивать различные логические пути рассуждений от вопроса до ответа (reasoning paths) для выбора правильного ответа с большей вероятностью. Научились максимально эффективно использовать ограниченное контекстное окно, “читать”, понимать и анализировать большие кодовые базы с 3000+ файлами: https://www.nfactorial.dev/swe-bench
В ноябре вернулись в продуктовую разработку и рады представить Вашему вниманию первую версию нашего нового продукта - nFactorial Research - инструмент для анализа 1000+ Ваших файлов и ссылок. Фактически, это более универсальная версия продукта, который мы создали в сентябре. Кому он может пригодится? Венчурные инвесторы и стартап-акселераторы могут быстро отскринить тысячи заявок от стартапов и понять, какие заслуживают следующего этапа. Рекрутеры могут быстро проанализировать 1000+ резюме, чтобы пригласить лучших кандидатов на Zoom-интервью. Консалтинг-компании могут делать анализ рынка для своих клиентов. Отделы продаж могут категоризировать своих лидов. Ученые могут углубить свои знания, “общаясь” с 1000+ научными статьями из arXiv. Студенты ВУЗов могут готовиться к экзаменам с ИИ-тестами на основе своих конспектов с лекций. Разработчики, которые только присоединились в новую компанию, могут задать любой вопрос по своей кодовой базе для того, чтобы быстрее войти в курс дела. Новые сотрудники компании могут найти ответы на свои вопросы из централизованной корпоративной базы знаний.
Еще много недочетов и огромный бэклог того, что будет частью следующих релизов. Однако, словами известного классика: “Если Вам не стыдно за первую версию, то Вы запустились слишком поздно”. Будем благодарны любой обратной связи!
Попробовать: https://research.nfactorial.dev/