Снимка на Mpho Mojapelo в Unsplash

AI API: Какво представляват те и как да ги използвате

Набор от по-добри практики за API на изкуствен интелект

Любопитни ли сте за API на реч в текст, превод на език или разпознаване на изображения? Имате късмет! Има много услуги, които ви позволяват да направите това, а също и много причини да използвате API за изкуствен интелект (AI) във вашите приложения. В тази статия ще опишем някои от случаите на използване за AI API, а след това ще поговорим за по-добрите практики, които да се възприемат при използването им.

Ако бързате, бързайте към TL; DR в долната част.

Първият въпрос преди да внедрите външна услуга, която трябва да си зададете, е „имам ли нужда от това“? Когато става дума за API-базирани на изкуствен интелект, отговорът може да се усложни! За да ви помогнем да вземете решение, нека да разгледаме две от най-често използваните услуги и кога трябва (или не трябва) да ги използвате.

Използвайте случай №1: Реч в текст

Много приложения днес използват възможности за говор в текст - и вероятно вече сте използвали такова, което го прави. Всички го използват Siri, Google Assistant, Bixby или Alexa, но това не е всичко. Използва се и от приложения за съобщения (напр. WhatsApp) и търсачки (напр. Лентата за търсене на Google).

Може би се чудите къде е AI там. Това не е ли просто транскрипция на реч?

Основата на всеки API за реч в текст наистина е да приема речево аудио като вход и да го преписва в текст, макар че тук няма да спре и това се случва, когато се случва магията на изкуствения интелект. За повечето API, които са налични там, ще:

  • променя предишната транскрипция въз основа на контекста
  • идентифицирайте различни говорители
  • да може да търси конкретни ключови думи
  • позволяват персонализиране на модела (полезно за регионални акценти)

Използвайте това: за конкретни случаи на използване, като например по време на синтез на реч по време на изпитание, където контекстът, използваните думи и текущият говорител имат значение много.

Не използвайте това: ако очаквате само един говорител или за обикновени текстови съобщения. В този случай повечето клавиатури за смартфони вече включват възможност за разпознаване на говор, която може да се използва, а за уеб приложение можете да използвате API за SpeechSynthesis.

Използвайте случай №2: Разпознаване на изображения

В сравнение с Speech-to-Text, в днешно време се използват само няколко приложения, които използват разпознаване на изображения и повечето от тях са доста специфични (например PlantNet, който идентифицира растенията, с които правите снимка). Макар че започваме да виждаме някаква обща употреба от него, по-специално с:

  • Google обектив: анализира какво е на вашия екран (снимка или не) и ще се опита да идентифицира адреси, места, неща и препоръчва резултати въз основа на него
  • Виждане на AI: приложение за хора със зрителни увреждания, което описва какво има около тях (въз основа на посоката на камерата на телефона)
Използване на Google обектив за разпознаване на място

Както вече сте разбрали, магията тук е да вземете изображение като вход и да се опитате да идентифицирате какво е в споменатата картина. За повечето доставчици има два начина за това:

  • Използване на предварително обучени модели: това включва общи класове (храна, места, хора, цвят ...)
  • Използване на персонализирани класификатори: те позволяват на потребителите да обучават свои собствени класове (както се вижда от PlantNet по-горе)

Въпреки че някои устройства с Android и iOS имат вградени възможности за разпознаване на изображения, като програмист не винаги можете да ги питате от приложението си. Следователно, докато вашият случай е подходящ, тогава трябва да го използвате.

Използвайте случай №3, №4…

Има много други AI APIs там. В тази публикация няма да ги разгледаме, но ако мислите да използвате някой от тях и не сте сигурни дали вашият случай отговаря на нуждите или не, оставете коментар или се свържете директно с мен. Ще се радвам да помогна!

Вече сте решили да използвате един, два или дори повече (в този случай, тук е статия за вас) AI API в приложението си. В този раздел ще видим няколко по-добри практики, които да приложим, преди да мислим за използването им в производството.

Опитайте преди да купите

Както при всеки API на трети страни, има параметри, които трябва да се вземат предвид - цена, използваемост, наличност ... но що се отнася до изкуствения интелект, има и фактор за надеждност, който влиза в игра. Надеждността не е двоично съображение и е спечелена " t процент 0 или 1. Всъщност това ще бъде нещо между 0 и 1, както ще видим в следващия раздел!

Всички основни доставчици на облак предоставят собствен набор от AI API и всички те имат или демонстрационна страница, или безплатна пробна версия. Възползвайте се от това, опитайте сами и изберете този, който ще постигне най-добри резултати!

  • IBM Watson
  • Google Cloud AI
  • Когнитивни услуги на Microsoft
  • AWS AI услуги

Има и платформи за конкретни услуги като Clarifai (Vision API), SAP Conversational AI (Chatbots) или просто вмъкване - вашето любимо-търсачка тук.

Пример за обаждане на услугата Watson Assistant с помощта на Пощальон

Изкуственият интелект се римува с увереност

Както беше казано в предишния раздел, всеки път, когато получавате отговор от AI API, той също ще съдържа ниво на доверие, вариращо от 0 до 1, което съответства на процента на сигурност, че е разпознал нещо.

Нека вземем пример с API за визуално разпознаване, когато изпращате следното изображение:

Кредити: Getty.com

Ето отговора на JSON. Премахнах някои класове за четене.

[{"classifier_id": "по подразбиране", "име": "по подразбиране", "класове": [{"клас": "шина", "резултат": 0.797}, {"клас": "механично устройство", " резултат ": 0.506}, {" class ":" индийски червен цвят "," резултат ": 0.799}]," дисплей ":" Общ модел "," описание ":" Бързо разбиране на обекти, действия, сцени и цветове в изображение." }]

В този случай имаме клас, който се идентифицира заедно с оценка за доверие. Отчитането на този резултат е от ключово значение. Обикновено препоръчвам минимален резултат от 95%. Този резултат трябва да се повишава с течение на времето, тъй като вие или вашият доставчик на API добавяте (и) повече данни за обучение към моделите.

Говорейки за данни за обучение, друго нещо, което ще искате да помислите е дали искате да разрешите данните, изпратени от вашето приложение, да се използват за подобряване на общите модели на вашия доставчик. Ако искате да го разрешите, трябва да уведомите изрично потребителите си.

TL; DR:

  • Преди да използвате AI API, преценете дали наистина имате нужда от него
  • Ако го направите, опитайте различни доставчици и изберете този, който най-добре отговаря на вашия случай на използване
  • Уверете се, че имате праг, достатъчно висок за достоверност, за да избегнете фалшиви положителни резултати

Забавлявайте се, вливайки AI във вашите приложения!