Rechercher dans le blog

Les nouveautés de la version 2.2.0 de l'API Python d'ArcGIS

L'API Python d'ArcGIS vous permet d'automatiser votre SIG web, que vous soyez utilisateur d'ArcGIS Online ou ArcGIS Enterprise.
Avec la mise à jour de fin septembre 2023, la version 2.2.0 se concentre principalement sur la résolution de bugs, mais introduit également un certain nombre de nouveautés que je vous propose de découvrir dans cet article.

Prise en charge d'Experience Builder

La 2.2.0 inclus un module entier dédié au concepteur d'application Experience Builder. En utilisant la classe WebExperience, vous pouvez maintenant réaliser plusieurs opérations sur des expériences du portail ou des expériences locales : création, sauvegarde, publication,suppression, clonage, aperçu, et plus. Vous pouvez en apprendre davantage dans ce guide.

Core API

Comme de nombreuses bibliothèques de l'écosystème Python, l'API Python d'ArcGIS repose sur de nombreuses dépendances. Dans cette version, plusieurs de ces dépendances ont été améliorées pour renforcer la sécurité et les performances globales de l'API. Par exemple, la mise à jour vers Pandas 2.0.0 rend l'API compatible avec tous les pandas dtypes, incluant les dtypes Numpy peu demandeurs en mémoi, rendant les indices des DataFrames plus efficaces.
La prise en charge des version 3.9 à 3.11 de Python a été ajoutée, permettant de profiter des améliorations de vitesse et de performance du langage Python de base lors de l'utilisation de l'API. Notez cependant que pour l'instant, le module arcgis.learn servant au Deep Learning supporte uniquement Python 3.9.

Administration

Des nouvelles classes, méthodes et propriétés vont permettre aux administrateurs SIG de continuer à toujours plus automatiser et simplifier leurs opérations.
Pour les déploiements ArcGIS Enterprise on Kubernetes, les administrateurs peuvent désormais exporter les logs de l’organisation avec les paramètres désirés pour faciliter le dépannage avec la méthode export(), et gérer l'accès au contenu externe grâce à l'objet ExternalContentManager.
Les administrateurs ArcGIS Online peuvent maintenant utiliser DataStoreMetricsManager pour obtenir les informations d'utilisation d'une ressource ainsi que différentes statistiques sur le feature data store.
Il est aussi désormais possible de dupliquer l'apparence entière de l'organisation avec la méthode clone() ajoutée à la classe UX, permettant la mise en place immédiate ou hors ligne d'organisations sans avoir à configurer individuellement les paramètres.
De nombreuses autres mises à jour sont disponibles pour les administrateurs, que vous pouvez découvrir dans le sous-module admin (arcgis.gis.admin) des notes de version.

Gestion de contenu

L'API Python d'ArcGIS permet également de gérer rapidement et efficacement le contenu de votre SIG web. Avec cette mise à jour, cette capacité est renforcée par de nouvelle fonctionnalités.
La migration de contenu est améliorée dans cette version : les enquêtes Survey123, les StoryMap, les Dashboards, les scènes web et les Experience Builder sont désormais pris en charge par la méthode clone_items(). En plus de ça, la nouvelle propriété "favoris" (favorite) pourra vous aider à organiser et à accéder à vos contenus les plus utilisés. 
Pour les personnes utilisant l'API pour des traitements rasters, de nouvelles capacités ont été ajoutées pour travailler avec des datasets STAC avec les méthodes RasterCollection.from_stac_api() et Raster.from_stac_item().

Services SIG

La version 2.2.0 ajoute la prise en charge de nouveaux types de données introduits récemment dans le système ArcGIS : les BigInteger, TimeOnly, DateOnline et Timestamp Offset.
L'ajout d'une classe PlacesAPI permet de  prendre en charge le service Place (permettant d'accéder à une grande variété de points d'intérêts), disponible en bêta depuis mai 2023. De nouvelles fonctions et méthodes devraient être ajoutées à cette classe une fois que le service sortira en version de production.

Analyse et Data Science

Les Spatially Enabled DataFrame (SeDF) permettent de convertir facilement des couches d'entités, classes d'entités, shapefiles, GeoJSON, etc. en pandas Dataframes, créant un pont puissant entre ArcGIS et l'écosystème de data science Python. Dans cette nouvelle version de l'API, il est possible de comparer et de tester l'égalité entrer deux SeDF en utilisant la fonction DataFrame.eq() ajoutée à la classe GeoAccessor. Cela peut servir à des tâches telles que la comparaison d'une copie d'un SeDF par rapport à une version principale, pour vérifier si une nouvelle version d'un SeDF contient des valeurs de cellules mises à jour, de nouvelles lignes ou de nouvelles colonnes. L'intégration SeDF / big data a également été élargie via l'ajout des classes GeoDaskSpatialAccessor et GeoDaskSeriesAccessor, qui donnent accès à des capacités de traitement parallélisés issus des Dask DataFrames aux SeDF.
Le côté GéoAI (Machine Learning et Deep Learning) se voit enrichi de nouvelles fonctionnalités au sein du module arcgis.learn. Celles-ci incluent :
  • La prise en charge de l'architecture LSTM (Long Short-Term Memory) dans les modèles de séries temporelles ;
  • Une nouvelle fonction estimate_batch_size(), qui vous aide à choisir le nombre approprié d'échantillons d'entraînement (mini taille du lot) en fonction de la capacité de votre GPU, de la taille du modèle et de la taille de vos données ;
  • L'ajout des modèles MMDetection3D pour la détection d'objets en 3D ;
  • La prise en charge de l'aprentissage automatique multimodal (vecteur/tabulaire + texte + imagerie) ;
  • L'introduction d'options traiter l'équité dans les systèmes d'apprentissage automatique.

Support des graphes de connaissance (Knowledge Graph)

Il est désormais possible d'automatiser la gestion des graphes de connaissance avec l'API Python d'ArcGIS. Les utilisateurs peuvent désormais effectuer une multitude d'opérations lorsqu'ils se connectent à leurs serveurs de graphes de connaissance, notamment ajouter/modifier/supprimer des entités et des relations, modifier le modèle de données et effectuer des requêtes avancées à l'aide de paramètres de liaison. Pour en apprendre plus sur la manipulation des graphes de connaissance avec l'API, vous pouvez vous renseigner dans ce guide en 3 parties.

Documentation, guides, extraits de code et communauté

L'API Python d'ArcGIS est soutenue par une documentation très complète. Celle-ci a été renforcée avec les éléments suivants :
  • Des nouveaux Notebooks d'exemple pour des flux de travail d'administration SIG et de gestion de contenu ;
  • De nouveaux guides montrant des workflow bout-à-bout avec ArcGIS Knowledge ;
  • De nouveaux guides pour ArcGIS Hub ;
  • Une mise à jour du guide sur le travail avec des webmaps déconnectées pour montrer comment créer, lister et mettre à jour des zones hors-ligne ;
  • Une mise à jour du guide pour accéder à et gérer des utilisateurs en tenant compte des différence de déploiement ArcGIS Online / ArcGIS Enterprise.

L'API possède également une grande communauté, alors n'hésitez pas à utiliser la page Esri Community consacrée à l'API Python d'ArcGIS pour poser des questions, soumettre des idées d'amélioration, et entrer en contact avec d'autres utilisateurs. Vous pouvez également utiliser le repo Github public de l'API pour soumettre des bugs ou des requêtes d'amélioration.

Enfin, n'hésitez pas à consulter les notes de version complètes pour la liste exhaustive de toutes les fonctionnalités introduite avec cette version. 

Envie d'utiliser cette nouvelle version ? Les packages sont téléchargeables ici : Anaconda et Pypi.

Aucun commentaire:

Enregistrer un commentaire