Рад встрече! Ускорение адаптации разработчиков с помощью LLM и разблокировки

Рад встрече! Ускорение адаптации разработчиков с помощью LLM и разблокировки

10 января 2024 г.

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

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

Привлечение старших разработчиков также требует времени и ресурсов.

С появлением программ LLM кажется, что их использование в вашем коде, документации, чатах и ​​системах обработки заявок имеет смысл. Возможность общаться с LLM, обученным на правильном наборе данных, подобна добавлению члена команды, который может позаботиться о том, чтобы никто не увяз в обмене чем-то, что уже задокументировано. Я подумал, что стоит попробовать новую услугу под названием Unblocked, которая делает именно это.

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

Источники данных

Если вы следили за разговорами о разработке LLM, то знаете, что они хороши настолько, насколько хороши данные, к которым у них есть доступ. К счастью, Unblocked позволяет вам подключить множество источников данных для обучения вашего LLM.

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

Настройка довольно проста благодаря множеству интеграций с инструментами разработчика. После регистрации учетной записи вам будет предложено подключиться к источникам, которые поддерживает Unblocked.

Integration

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

Начало работы

Я попробовал изучить некоторые возможности Unblocked. Хотя существует веб-панель, с которой вы будете взаимодействовать большую часть времени, я рекомендуем также установить приложение Unblocked Mac. Приложение запустится в строке меню и позволит вам задать вопрос Unblocked из любого места. Есть множество других функций для товарищей по команде, взаимодействующих с Unblocked. Возможно, я напишу об этом позже, но сейчас мне просто нравится, что он дает мне универсальный ярлык (Command+Shift+U) для доступа к разблокированному режиму в любое время.

Еще одна особенность приложения строки меню macOS — быстрый способ установки плагинов IDE<. /strong> на основе того, что я установил на свой компьютер. Конечно, вам не обязательно устанавливать их таким образом (Unblocked сделает эту установку за вас), но об этом придется задуматься.

Installing IDE Plugins

Задавать вопросы

Поскольку я работаю над кодовой базой, которая уже находится в режиме «Разблокировано», мне не нужно ничего ждать после настройки учетной записи на платформе. Если вы настроите свой код и документацию, вашим новым разработчикам тоже не придется ждать.

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

Я начал с вопроса о настройке интерфейса.

Setting up a frontend

Этот ответ выглядит довольно хорошо! Этого достаточно, чтобы я мог работать в локальной среде, не связываясь ни с кем из моей команды. Функция «Разблокировка» позволяла всем остальным «разблокировать» их работу и сама по себе указывала мне правильное направление.

Я решил спросить, как настроить среду разработки локально. Посмотрим, что скажет Unblocked, если я спрошу об этом.

Setting up a development environment locally

Это не тот ответ, на который я надеялся… но я могу щелкнуть ссылку README и обнаружить, что на самом деле это не вина Unblocked. Моя команда просто не обновила README для серверного приложения, и Unblocked обнаружил неверные стандартные инструкции по настройке. Теперь, когда я знаю, где взять код, я просто обновлю его после того, как завершу настройку серверной части самостоятельно. А пока я сообщу Unblocked, что он не дал мне ответа, на который я надеялся.

Incorrect boilerplate

Поскольку бот не виноват в своих ошибках, я постарался объяснить это в своем отзыве.

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

Further questions

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

Просмотр кода

Я фактически клонировал репозитории внешнего и внутреннего интерфейса моего приложения на свой компьютер и открыл их в VS Code. Давайте посмотрим, как Unblocked работает с репозиториями.

Как только я открываю плагин Unblocked во время просмотра внутреннего репозитория, мне предоставляются рекомендуемые сведения, задаваемые другими членами моей команды. Есть также некоторые ссылки на запросы на включение, разговоры в Slack и задачи Jira, которые бот считает актуальными, прежде чем я открою один файл.

Browsing the code

Это полезно. Когда я открываю различные файлы, предложения также меняются в зависимости от контекста.

Просмотр компонентов

Плагин VS Code также выявил некоторые обнаруженные темы о приложении, которое я тестирую. Я нажал на тему Backend и попал на следующую страницу:

Browsing components

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

Если я перейду на страницу «Компоненты» на веб-панели, я увижу список всего, что Unblocked считает важным в этом приложении. Это также дает мне быстрое представление о том, с кем я могу поговорить на эти темы. Нажав на любой из них, я получаю небольшой обзор, и эксперты системы могут управлять им по мере необходимости. Опять же, все это было создано автоматически.

Managing components

Заключение

Это было отличное начало Unblocked. Я с нетерпением жду возможности в следующий раз опробовать это на некоторых вещах, над которыми я активно работал. Поскольку платформа не собирается раскрывать какие-либо мои секреты другим командам, меня совершенно не беспокоит использование ее даже в самых секретных из моих проектов, и я ожидаю, что позже смогу рассказать больше о других вариантах использования.< /п>

Unblocked находится на стадии общедоступной бета-версии и бесплатен.

:::информация Также опубликовано здесь.

:::


Оригинал