V únoru letošního roku vydala Esri beta verzi balíčku komponent pro umělou inteligenci v ArcGIS Maps SDK for JavaScript verze 5.0, které vývojářům umožňují vylepšit své vlastní nezávislé webové mapové aplikace. V těchto aplikacích lze tak implementovat několik nových funkcí, na které se zaměříme v dnešním článku.
Komponenta Asistent
Hlavním prvkem tohoto balíčku je komponenta arcgis-assistant. Tato komponenta poskytuje koncovým uživatelům chatové rozhraní pro interakci s webovou mapou prostřednictvím jednoho nebo více tzv. „agentů“. Výhodou je, že uživatelé mohou s asistentem komunikovat ve svém preferovaném jazyce.

Pro začátek stačí importovat verzi 5.0 ArcGIS Maps SDK for JavaScript a do své aplikace přidat tuto komponentu. Aby asistent fungoval, musí odkazovat na webovou mapu a obsahovat alespoň jednoho agenta. Každý agent je nezobrazovaná podkomponenta komponenty arcgis-assistant. Jen upozorním, že uživatelé, kteří přistupují k aplikacím vytvořeným pomocí komponenty arcgis-assistant, budou vždy vyzváni k přihlášení. Chcete-li komunikovat s komponentou a jejími přidruženými agenty, musíte být přihlášeni jako pojmenovaný uživatel k organizaci ArcGIS Online. Komponentu si lze také vyzkoušet na odkaze https://developers.arcgis.com/javascript/latest/sample-code/ai-assistant/
Agenti
Ke komponentě arcgis-assistant musí být zaregistrován jeden nebo více agentů. Agenti zpracovávají vstupy v přirozeném jazyce pomocí velkého jazykového modelu (LLM) a generují odpovědi buď ve formě prostého textu, nebo spuštěním nástroje či akce, která interaguje s mapou. V pozadí agenti žádají LLM o určení záměru uživatele, stanovení parametrů nástroje nebo shrnutí informací. Zatímco volání LLM směřují na server, JS Maps SDK definuje a provádí základní logiku agenta v prohlížeči, což zajišťuje výkonné interakce mezi uživateli a klientskou aplikací. JS Maps SDK poskytuje tři přednastavené agenty pro interakci s webovou mapou:
- Navigační agent
- Agent pro prozkoumávání dat
- Agent nápovědy
Navigační agent
Navigační agent umožňuje procházet webovou mapou. Patří sem přechod na adresu nebo název místa, rozsah vrstev, prvky v rámci vrstvy, záložky webové mapy nebo souřadnice.

Agent pro prozkoumávání dat
Agent pro prozkoumávání dat umožňuje vyhledávat prvky a počítat statistiku na základě atributů a geometrie vrstvy ve webové mapě. Umožňuje také vizuálně filtrovat data v mapě.

Pokud byste se chtěli zapojit do testování a pomoci tak společnosti Esri k vylepšení tohoto modelu, je možné si poznamenat dotazy a vygenerované odpovědi, které se zdají být nepřesné, a následně zaslat zpětnou vazbu na stránce https://developers.arcgis.com/javascript/latest/agentic-apps/ai-faq/#how-can-i-provide-feedback-or-request-features-for-ai-components
Agent nápovědy
Agent nápovědy poskytuje pokyny ohledně funkcí asistenta a agentů, kteří jsou k němu přiřazeni, a dokáže odpovědět na obecné otázky týkající se dat obsažených ve webové mapě.

Vlastní agenti
Kromě nativních agentů Esri mohou vývojáři vytvářet také vlastní agenty, aby rozšířili možnosti komponenty arcgis-assistant. Vlastního agenta lze vytvořit například za účelem specializované analýzy dat, integrace s externími službami nebo podpory doménově specifických dotazů typických pro danou aplikaci.
Nastavení webové mapy
Primárním kontextem agentů dodávaných v základním balíčku jsou vrstvy prvků v rámci webové mapy. Dotazy uživatelů se často zaměřují na data v konkrétních vrstvách. Aby mohli agenti tyto požadavky uživatelů vyřešit, odesílají metadata vrstev do LLM spolu se vstupem uživatele, aby agent věděl, na které vrstvy a pole se má zaměřit. Aby bylo možné pracovat v rámci omezení modelu LLM a zvýšit přesnost odpovědí, musí webové mapy používané v komponentu arcgis-assistant obsahovat vložená vektorová data uložená jako zdroj k položce webové mapy. Tato data se generují v části „Spravovat vložená vektorová data pro AI“ na kartě nastavení položky webové mapy.

Pokud tuto možnost v nastavení webové mapy nevidíte, musíte nejprve povolit AI asistenty pro vaši organizaci ArcGIS Online.
Vektorové reprezentace webových map jsou vektorovými reprezentacemi názvů vrstev a metadat polí pro všechny vrstvy prvků ve webové mapě. To umožňuje agentům určit vrstvy a pole, které jsou nejrelevantnější pro dotaz uživatele v přirozeném jazyce, před odesláním informací do LLM. Jakmile jsou vektorové reprezentace vygenerovány, může být webová mapa použita kterýmkoli z přednastavených agentů.
Metadata vrstvy
Vložení vektorových dat vyžaduje kvalitní metadata vrstvy, včetně aliasů polí a popisů. Manuální tvorba je možná, nicméně vyžaduje dokonalý přehled a znalost o datech. Avšak tato metadata lze také vygenerovat pomocí asistenta „Podrobnosti položky“ (beta).
Závěr
Závěrem mohu říci, že nové AI komponenty v rámci ArcGIS Maps SDK for JavaScript představují významný krok směrem k přirozenější a intuitivnější práci s webovými mapami. Tato integrace pomůže uživatelům komunikovat s mapovými aplikacemi pomocí svého jazyka, což výrazně snižuje bariéru pro práci s prostorovými daty i pro méně technicky zaměřené uživatele
Velkým přínosem je také flexibilita – ať už jde o využití předdefinovaných agentů pro navigaci, analýzu či nápovědu, nebo o možnost tvorby vlastních agentů na míru konkrétním potřebám. Klíčovou roli zde hraje kvalitní příprava dat a metadat, která přímo ovlivňuje přesnost a relevanci odpovědí generovaných pomocí LLM.
Přestože se jedná o beta verzi, potenciál těchto nástrojů je značný. Do budoucna lze očekávat další rozvoj funkcionalit, vyšší přesnost modelů a širší adopci v reálných projektech. Pro vývojáře i organizace pracující s GIS tak AI komponenty otevírají nové možnosti, jak zefektivnit práci s daty a zpřístupnit je širšímu okruhu uživatelů.