La vie un an après l'introduction des robots: alors que l'égalité n'est pas demandée

Montée des robots. Cela semble être quelque chose d'incroyable. Et même si c'est probable, cela arrivera bientôt. Cependant, cela vaut la peine d'être considéré - le personnel de robots de nos partenaires a augmenté de 22 voitures en un an. Et ils ne vont clairement pas s'arrêter. Et soudain, la prochaine mise à niveau ne se déroulera pas comme prévu et le robot l'abandonnera. Ou dire qu'il était fatigué de travailler en comptabilité. Plus de détails sous la coupe!



Bouton - back office pour les entrepreneurs. Nous effectuons la comptabilité, résolvons les problèmes juridiques et supprimons la routine.

Cet article est une continuation de ceci: Rise of the Machines: Comment les robots ont capturé la comptabilité .

Je donne la parole à l'auteur.

Combien de robots et pourquoi ont-ils besoin de nous


Désormais, 64 robots sont régulièrement lancés. Nous avons besoin de robots non seulement pour le travail intellectuel, mais aussi pour la combustion quotidienne de pots. Par exemple, pour collecter des statistiques, pour surveiller les informations de 1C pour notre application. Les robots aident à facturer et même à nettoyer les déchets après d'autres robots.

Pour automatiser le travail d'un comptable, nous travaillons en étroite collaboration avec les bases de données en 1C. Nous essayons différentes options pour cela. Nous le dirons plus en détail.

Interopérabilité via COM. Historiquement, c'est la première façon dont nous avons réussi à établir une interaction. Nous avons obtenu un travail fiable sur l'écriture dans la base de données 1C, mais nous avons rencontré les inconvénients:

  • Les connexions sont établies depuis longtemps, gèlent parfois ou se rompent de façon inattendue.
  • Vous devez vous connecter à chaque base 1C séparément, contourner toutes les bases peut prendre des heures.

Interaction via la base de données postgreSQL à l' aide d'un traducteur. Cette approche nous a donné une image générale de l'état des bases de données 1C de chaque client. Par exemple, existe-t-il des contreparties en double ou des documents incorrectement enregistrés.

Avantages:

  • La connexion à la base de données est très rapide.
  • Vous pouvez travailler immédiatement avec tout un cluster de bases de données 1C, ce qui augmente la vitesse de traitement par ordre de grandeur.

Inconvénients:

  • Il ne fonctionne que sur la lecture de la base de données. Théoriquement, un travail d'enregistrement peut également être effectué, mais pour cela, vous devez répéter toute la logique 1C - ce n'est pas pratique.
  • Le développement prend plus de temps et la prise en charge des processus est plus compliquée que dans la méthode COM.

Interaction via OData. Je l'ai essayé récemment.

Avantages:

  • Aucun problème avec les gels ou les connexions interrompues

Inconvénients:

  • La première opération prend sensiblement plus de temps que les suivantes, bien que la connexion soit rapidement établie.
  • Des investissements dans l'infrastructure d'interaction sont nécessaires pour l'utiliser aussi facilement que dans le cas de COM.
  • Des efforts supplémentaires sont nécessaires pour administrer 1C, en particulier lors de la mise à jour de la configuration.

Interaction via les services Web. Cette approche a été testée relativement récemment.

Avantages:

  • Cela fonctionne rapidement et sans délai.

Inconvénients:

  • Nous avons besoin de développement au sein de la plate-forme 1C, l'environnement pour nous n'est pas standard, donc il n'y a toujours pas assez de compétences et une infrastructure supplémentaire est nécessaire pour mettre en œuvre complètement CI.
  • Comme dans le cas de COM et OData, les tâches ne peuvent être résolues que dans une seule base de données 1C.

Les robots doivent être contrôlés


Les robots sont imparfaits. Comme leurs créateurs, ils trébuchent, tombent et se brisent. Les raisons peuvent être très différentes: configuration incorrecte des services, erreurs dans le code, problèmes de niveau matériel - pannes matérielles. Il est important pour nous de le savoir dès que possible. Parce qu'il existe de nombreux processus d'entreprise liés aux robots. Nous avons créé des robots de surveillance pour suivre tout le monde.

Nous surveillons le dernier démarrage du robot. Si nous savons qu'il devrait commencer une fois par heure, mais qu'il se repose depuis 3 heures, c'est l'occasion de le stimuler.

Il arrive qu'un robot fasse semblant de fonctionner, mais en fait il est gelé. Pour attraper cela, nous regardons dans le journal, que le robot écrit sur son travail. Si les entrées n'apparaissent pas assez longtemps, vous devez le redémarrer.



Il existe des robots dans lesquels les conséquences d'erreurs et de plantages ne sont pas immédiatement perceptibles. Afin de remarquer que quelque chose n'allait pas dans le temps, nous avons créé des mesures qui se concentrent sur les résultats du travail. Nous contrôlons donc les robots les plus importants.

Par exemple, un conducteur de robot est important pour nous. Il s'assure que les documents entrants sont correctement pris en compte dans 1C. Le robot fait un tour de toutes les bases 1C en 3-4 heures - une demi-journée de travail. Rappelons que nous desservons 1300 entrepreneurs. À chaque tour, le robot n'entre dans aucune base. Très probablement, seulement le lendemain, le comptable remarquera que le robot n'a pas examiné une base spécifique.

Ce robot a travaillé à évaluer dans une base de données spécifique - une tâche sérieuse distincte pour un comptable qui, en plus de conduire des documents, a d'autres tâches de comptabilité et de conseil aux clients. Par conséquent, en réalité, cette erreur ne peut être constatée qu'après une semaine, voire un couple. Et avec le temps, des documents ratés - une taxe mal calculée.

Par conséquent, nous avons configuré le robot afin qu'il enregistre les bases sur lesquelles il a tourné et quand, et dans ce cas, nous voyons combien, quelles bases le robot n'a pas contourné et pendant combien de temps. En conséquence, nous attirons l'attention du comptable là où cela est nécessaire et au bon moment.



Les robots doivent être changés


Dans les rêves d'un avenir robotique, on peut espérer qu'un robot brillant qui vient de quitter la chaîne de montage fera son travail pour toujours, et nous pourrons faire quelque chose de plus intéressant. Dans la vraie vie, ce n'est pas le cas. Le temps passe et ce qui semblait hier un travail tout à fait adéquat, aujourd'hui n'est plus satisfait. La qualité du résultat n'est pas que cela fonctionne trop lentement, ni même ce qui n'a pas de sens dans la situation changée. Les robots vieillissent et doivent être mis à niveau.

Consolidation de robots


Certains robots sont engagés dans des tâches connexes, mais leurs actions ne sont pas coordonnées ou ils s’attendent longtemps. Nous démontons de tels robots et en assemblons un qui est engagé dans toutes les tâches connexes.

Nous gardons toujours des robots qui travaillent sur une tâche avec une personne, «en service» en prévision du travail qu'ils reçoivent d'une personne.

Prenons, par exemple, le processus de conversion de numérisations de documents papier en documents enregistrés en 1C. Auparavant, plusieurs robots faisaient cela ensemble:

  • Un épouvantail décompresse les archives dans des fichiers séparés, et le pdf avec plusieurs pages se transforme en plusieurs images.
  • Le robot trieur examine les images, les classe et les organise dans des dossiers.
  • Ensuite, le robot de reconnaissance fait son travail.

Après leur travail, le comptable principal est connecté pour vérifier et corriger le robot, si nécessaire. Après la personne, un robot est connecté, qui enregistre les documents en 1C, puis un robot conducteur qui les conduit. Tous ces robots ont été configurés en mode interrogation. Ils ont commencé selon leur propre horaire de temps en temps et ont cherché à voir s'il y avait du travail. S'il y en a, ils l'ont exécuté, puis se sont endormis à nouveau.

Il y a beaucoup de robots, donc des retards ont été ajoutés au calendrier de chaque robot. Il s'est avéré qu'à partir du moment où nous avons vu le document, que nous l'avons réalisé en tant que tel, que nous avons commencé à travailler avec lui avant que le document terminé n'apparaisse dans la base de données 1C, cela peut prendre une demi-heure, voire une heure. Afin d'informer le client du taux d'imposition actuel sur les documents disponibles, le comptable a dû attendre longtemps. Alors comment voulez-vous répondre au client en ligne.

Pour une nouvelle solution, nous avons démonté les robots pour les pièces et assemblé deux nouveaux. Le premier transforme les archives et les fichiers pdf en documents qui peuvent déjà être envoyés à 1C. Ensuite, la personne vérifie le travail, si nécessaire - quelque chose de règles. Le deuxième robot récupère immédiatement le document après vérification, l'enregistre et le conserve dans 1C.

Maintenant, le travail est configuré dans le modèle d'événement: les robots sont toujours en mode veille et réagissent immédiatement lorsqu'une personne a terminé sa partie.

Amélioration du robot


Après avoir réduit le temps de conservation d'un document en 1C, nous avons rencontré un autre problème. Nous avons enregistré des cas de perte de documents de notre côté. J'ai dû à nouveau les demander au client, ce qui est extrêmement désagréable. Il suffit de résoudre ce problème maintenant. Et il semble que nous allons démonter et assembler à nouveau de nouveaux robots.

Nous avons également recyclé les réseaux de neurones pour classer et transformer les documents en plus de neurones et de maillages. Cela a donné une augmentation de précision de 1%. Quelques centaines de pages supplémentaires par semaine ne nécessitent plus d'attention humaine.

Mise à niveau du robot en raison d'un changement de plate-forme


La dernière fois, nous avons expliqué pourquoi nous avons décidé de passer de Java à Dotnet et comment c'était. Il y a un an, il y avait encore beaucoup de code Java. Nous avons inlassablement scié ce poids d'or. Et ce n'est qu'en mars qu'ils ont pu éteindre complètement les serveurs sur lesquels Java s'exécutait. Avec elle, une partie des robots est également partie dans un autre monde.

De nouveaux robots


Tegun


Les clients nous écrivent sur diverses questions. Pour que ces questions trouvent leur artiste, nous les classons par balises. Au début, les gens l'ont fait, mais nous avons décidé de faciliter leur travail et avons écrit un robot. Et ils l'ont appelé - テ 軍 (Daegun).

La première version était très simple. Le travail dans notre application est organisé sous forme de correspondance avec les succursales. Il peut y avoir plusieurs tâches dans une même branche. Le robot a catégorisé - mettez une étiquette, basée sur quelle étiquette était dans cette correspondance. Évidemment, dans les nouvelles branches où il n'y a pas encore de tag, le robot n'a rien fait. Dans une telle implémentation, le robot a traité 40% du travail des personnes, alors qu'il s'est trompé dans 10% des cas.

Pour que le robot puisse déterminer l'artiste dans de nouvelles branches, nous lui avons appris à lire. Pour ce faire, nous avons utilisé la régression logistique et l'augmentation du gradient pour la prédiction, en combinaison avec tf-idf et WordToVec pour la lecture. La dernière version du robot permettait de prendre 60% du travail des personnes. La connaissance, c'est le pouvoir! Bien que le robot ait commencé à faire des erreurs dans 15% des cas, les tâches ont quand même commencé à arriver plus rapidement aux interprètes.

Envoi de rapports


L'intelligence n'est pas toujours requise pour effectuer le travail nécessaire et utile. Les programmeurs et les comptables savent que la routine peut prendre jusqu'à 80% du temps. Par exemple, pour envoyer le rapport SZV-M, le comptable de la paie doit ouvrir la base de données 1C, appuyer sur une dizaine de boutons, entrer des données dans les intervalles, attendre que 1C dise "tout va bien" et fermer la base de données.

Chacune de ces opérations prend 5 minutes. Un peu. Mais pour faire cela pour tous les clients de boutons qui ont besoin d'un rapport (il y en a environ 600), vous devrez dépenser 5 * 600/60/8 = 6 jours ouvrables de travail mécanique continu. Plusieurs robots clones qui font à peu près la même chose font le travail en une journée. Rappelons qu'un tel rapport doit être soumis chaque mois, et les jours ouvrables dans un mois - 20. Un tiers du temps de travail d'un comptable ne serait consacré qu'à l'envoi continu du rapport.

Synchronisation avec 1C


Une autre classe importante de robots qui sont apparus au cours de la dernière année sont les synchroniseurs.
Notre application contient des documents et des relevés bancaires qui sont étroitement liés aux données des objets 1C. Il est important pour nous que l'état de l'application corresponde le plus possible à la situation dans 1C. Nous l'utilisons pour rechercher des doublons, pour rechercher facilement des objets et pour afficher les données correctes pour les clients. En utilisant l'interaction via la base de données postgreSQL, nous avons pu suivre les changements qui se produisent dans 1C et les refléter rapidement dans la base de données d'application. À l'heure actuelle, l'écart de temps ne dépasse pas 5 minutes.

Les robots bénéficient-ils


Nous ne pouvons plus refuser les robots. Ils automatisent une partie importante de la routine, à tel point que cela nous a permis de croître dans la clientèle, sans augmenter proportionnellement le personnel des comptables. Si nous éteignons nos robots, quelque part nous perdrons immédiatement 2 heures de temps de réponse, et quelque part nous commencerons à faire des erreurs ou à sauter des erreurs.

Nos comptables sont déjà largement concentrés sur des métriques qui montrent le résultat d'un robot particulier. Cela nous permet de «répéter le reporting» un mois avant le véritable reporting. Planifiez en temps réel le temps dont nous avons besoin pour pouvoir générer des rapports et les livrer à temps. Il s'agit d'une étape énorme vers la transparence et la fiabilité du processus comptable pour le client.

Pourtant, les robots sont encore peu nombreux, vous avez besoin d'un homme. Parce que les robots tombent en panne et doivent être réparés. Les robots peuvent faire des erreurs, ils doivent être vérifiés et formés. Une autre difficulté est la création d'une interaction efficace entre les robots et les humains. D'une part, il est nécessaire de créer des robots adaptés aux humains, et d'autre part, de pouvoir apprendre aux gens à les utiliser.

Merci pour l'article de Vasily Chernoyvan.

Source: https://habr.com/ru/post/fr413019/


All Articles