Русский
Русский
English
Статистика
Реклама

Голос

Перевод Программирование голосом. Передовые рубежи разработки ПО

06.04.2021 12:11:10 | Автор: admin

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


Работа в Serenade

Технологическая основа


Мы все больше и больше взаимодействуем с гаджетами через речь. Наши старые виртуальные помощники вроде Alexa и Siri теперь объединяются с автомобильными ассистентами, например Apple CarPlay и Android Auto, а также с приложениями, работающими с голосовой биометрикой и командами. Но что, если саму технологию можно было бы создавать при помощи голоса?

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

Однако программирование голосом оказывается не столь простым и кроет в себе несколько слоев сложной технологии. К примеру, в Serenade используется движок преобразования речи в текст, созданный специально для работы с кодом, в отличие от аналогичного API Speech-to-text, спроектированного Google для разговорной речи. После того, как инженер проговаривает код, движок Serenade передает его в слой обработки естественного языка, в котором специально обученные модели машинного обучения (МО) распознают и переводят стандартные программные конструкции в синтаксически верный код.

Существует две основных платформы, предлагающих различные подходы к задачам рецитирования кода компьютеру. Одна из них, Serenade, выступает в качестве цифрового помощника, позволяя описывать вводимые в коде команды без необходимости проговаривать каждую инструкцию дословно. Другой инструмент, Talon, предоставляет более тонкий контроль над каждой строкой, что также требует более тщательного понимания каждой программируемой в машину задачи. Ниже вы видите простой пример пошагового руководства в Serenade и Talon по генерации кода Python, выводящего на экран слово hello.




Технология против офисного синдрома


Компания Serenade, собравшая $2.1 миллиона на этапе начального финансирования в 2020 году, родилась в силу необходимости, после того, как одному из ее основателей, Мэтту Уитхоффу, в 2019 году бы поставлен диагноз хроническая травма от повторяющегося напряжения. Я бросил работу разработчиком ПО в Quora, потому что просто перестал с ней справляться, говорит Мэтт. В качестве альтернативы можно было заняться деятельностью, не требующей такого количества набора текста, либо искать другой выход.

Тем же путем в 2017 году пошел Райан Хайлман, оставив свое постоянное место работы программистом, после того как годом ранее у него возникли сильные боли в руке. Тогда Тайлман занялся разработкой Talon, платформы для написания кода без использования рук. Он говорил: Задача Talon полностью заменить клавиатуру и мышь для любого человека.

С этой целью в ней реализовано три программных компонента: распознавание речи, отслеживание глаз и распознавание звука. Движок распознавания речи основан на разработанной Facebook автоматической системе Wav2letter, которую Тайлман расширил командами для программирования. При этом функция отслеживания глаз и распознавания звука симулирует управление с помощью мыши. Курсор перемещается по экрану вслед за перемещением взгляда, а клики совершаются в ответ на издаваемый ртом звук, напоминающий откупоривание шампанского. Как говорит Райан: Издать такой звук легко. Он не требует особых усилий и распознается очень быстро, что представляет более быстрый невербальный способ реализации щелчков мыши, не вызывающий голосового напряжения.

Написание кода с помощью Talon звучит подобно инопланетному языку, как это продемонстрировала Эмили Ши, инженер и практик данной техники, выступавшая на конференции в 2019 году. Предложенное ей видео наполнено командами типа slap (Ввод), undo, spring 3 (перейти к третьей строке файла) и phrase name op equals snake extract word paren mad (дает такую строку: name = extract_word(m)).

С другой стороны, при написании кода с помощью Serenade, команды проговариваются более естественным образом. Можно сказать delete import, чтобы удалить инструкцию импорта в начале файла или build, чтобы выполнить пользовательскую команду сборки. Также можно сказать add function factorial для создания функции, вычисляющей факториал, например, в JavaScript. В этом случае приложение полностью возьмет на себя синтаксис, включая ключевое слово function, скобки и фигурные скобки, избавив вас от необходимости явно проговаривать каждый элемент.

Для программирования голосом требуется хороший микрофон, особенно если вы хотите устранить фоновый шум. Тем не менее модели Serenade обучены на аудио, получаемом с микрофонов ноутбуков. Если же вы хотите использовать Talon с функцией отслеживания движения глаз, то также потребуется соответствующее оборудование. Хотя Talon отлично работает и без него. Открытые платформы для написания кода голосом, такие как Aenea и Caster, хоть и бесплатны, но обе опираются на движок распознавания речи Dragon, который пользователь должен приобретать отдельно. При этом Caster предлагает поддержку Kaldi, открытого набора инструментов для распознавания речи, а также Windows Speech Recognition, поставляемого с ОС Windows по умолчанию.

По словам сооснователя Serenade Labs, Томми МакУилльям, результаты говорят сами за себя: Описать желаемое действие становится намного проще. Ведь куда легче просто сказать move these three lines down или duplicate this method вместо того, чтобы печатать все эти инстуркции или даже использовать горячие клавиши.

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

Написание кода с помощью речи, помимо прочего, снижает барьер входа в разработку ПО. МакУилльям по этому поводу говорит так: Если человек сможет представить код, который он хочет написать, логически и структурированно, то остальное можно будет поручить алгоритму МО, который переведет мысли разработчика в синтаксически правильный код.

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

Подробнее..

Новый интерфейс банкоматов Сбера

20.05.2021 16:23:11 | Автор: admin
В прошлом посте я рассказывала про дизайн новых банкоматов. Они сильно поменялись по железу, в частности, их экраны стали куда больше, а процессоры позволяют показывать больше графики и анимации без тормозов. Вы много спрашивали про изменения интерфейсов, поэтому я хочу рассказать о работе в этом направлении.

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

Прежде чем я покажу конкретные примеры, хочу, чтобы вы обратили внимание на следующее:

  1. Речь про интерфейсы новых банкоматов, которые пока что введены в Москве, Санкт-Петербурге и Хабаровске в небольшом количестве, и мы будем их вводить в эксплуатацию по всей России в этом году. Важно помнить, что в нашей сети много предыдущих моделей устройств с прежней версией интерфейса. На всех устройствах мы обновили иллюстрации и анимации в новом бренде и сделали интерфейс чище, убрав основной шум. Но полностью новый интерфейс с обновлёнными сценариями и новым дизайном выкатили только на банкоматах нового поколения.
  2. Текущий интерфейс решает главную задачу упрощение работы с банкоматом. Это означает уменьшение количества шагов внутри операций, более короткие и понятные тексты, реалистичные анимации, привязанные к расположению оборудования в банкомате и персонализацию под частые действия конкретного пользователя.
  3. Это не адаптация текущего интерфейса: мы с нуля разработали новый, проектируя от актуальных потребностей пользователя, то есть тех, что появляются с появлением запросов со стороны клиентов.

И да, мы вынесли самые популярные услуги (снять, внести, оплатить) на экран приветствия, т. е. на тот экран, который пользователь видит в момент, когда ещё не приложил/не вставил карту. А кнопку баланса на главный экран который появляется после авторизации человека в устройстве (приложил или вставил карту, ввёл ПИН-код).

Как шла работа


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

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

image
Под экраном посередине находится ридер.

image

Убрали объёмные руки, которые раньше показывали, как и что нужно делать (кроме экрана со вводом ПИН-кода, там прикрывать рукой клавиатуру важно).

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

Примеры



image
Сократили операцию на один шаг, а также добавили анимацию пересчёта денег.

image

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

image

image

Много работали с контрастом:

image

Из-за того, что экран банкомата сделан так, чтобы обеспечивать минимальный угол обзора (чтобы сзади из очереди не было видно), нужно довольно сильно повышать контраст элементов интерфейса. Кроме того, важно было повысить контраст для людей, которые плохо видят.

Голос и биометрия


На главном экране внизу находится кнопка голосового ввода. Чтобы не искать операцию и не вводить что-то на сенсорной клавиатуре, можно просто сказать голосом. В связке с биометрической авторизацией это позволит сделать очень много в плане нового UX. Например, голосовой ввод и биометрическая идентификация позволят открыть сразу персональный экран, не вводить какие-либо реквизиты, быстро добираться до нужной услуги. Пока мы только в начале пути, но ожидаем, что получится обеспечить тот же опыт, который пользователь ждёт от голосового помощника дома. Это и быстрое распознавание речи, и NLP, и качественный синтез речи. Единственный момент многие вещи помощник не проговаривает, а выводит на экран, как, например, тот же баланс.

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

Новый движок голоса не связан со старым голосовым интерфейсом он больше похож на наши домашние решения с NLP. Голосовой интерфейс предыдущей версии был ограничен, новый будет давать полный сервис, аналогичный GUI.

image

Другие языки


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

Коды ошибок были цифрами как приходили, так и отображались. Сто лет назад поменяли.

Где смотреть


Первая партия новых банкоматов появилась в новом офисе Сбера на Цветном бульваре, в Agile Home Сбера на Кутузовском проспекте, а также в офисе на Вавилова, 19. Недавно ещё несколько устройств установили в новых точках в Москве в ТЦ Европейский и ТЦ Авиапарк, а также в Санкт-Петербурге и Хабаровске в нескольких офисах Сбера. Скоро новые устройства появятся по всей стране. Новый банкомат выглядит так:

image

Соответственно, в полной мере наши задумки реализованы в его интерфейсе. Мы знаем про многие боли старых интерфейсов (на других устройствах) и где-то можем их решить, где-то уже нет, увы, из-за, например, восьмикнопочного интерфейса. Но что касается нового интерфейса мы понимаем, что это не финал, и готовы быстро релизить улучшения. Конечно, мы открыты для обратной связи и предложений.
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru