Klynt.net

Le républicrats (@Paris Popathon 2014)

Raphaël, qui a récemment rejoint l’équipe Klynt en tant que développeur web, détaille ici son expérience de création de robots virtuels ! Comme toujours lorsque vous assistez à un Hackathon, vous ne savez jamais ce qu’il vous attend avant d’avoir commencer. Pour cette seconde édition du Parisian Popathon, 5 d’entre nous @ l’équipe Klynt ont assisté aux 2 jours de l’évènement avec une idée en tête : explorer de nouveaux horizons.

Il est difficile d’expliquer comment viennent les idées. Pour ce poste, j’ai essayé montrer pas à pas notre processus créatif pour inventer notre “Republicrat Bot”. Le projet est venu pendant ce magnifique week end de Mars 2014.

Escaliers des bureaux de Mozilla à Paris

 

1) Récolter les idées

Après que tous les participants du Popathon aient écrit leurs idées sur environ 30 post-it différents et les aient collé sur un tableau, elles furent regroupés par intérêt afin de créer des potentiels projets. L’un des post-it se résumait principalement par 3 concepts : le hasard, l’intelligence artificielle et l’interaction humaine. C’étaient des concepts très intéressent et complexes qui pouvaient nous offrir des d’opportunités pour lancer dans ce nouveau projet.

2) Créer une équipe

Le fait d’avoir écrit l’un des post-it, a eu pour résultat d’être désigné comme leader du futur projet. Certaines personnes qui montraient un intérêt particulier pour le projet rejoignirent le groupe. L’objectif était de créer une équipe équilibré avec des qualités variées.

3) Déterminer le projet

Nous étions très enthousiaste à propos du sujet que nous avions choisit. La difficulté à ce point était de créer un projet qui s’associait avec le concept que nous avions choisit. Nous entrions dans ce qu’on appelle le brain storming. Pour commencer, chacun d’entre nous donna son point de vu sur ce que le projet pouvait être. Je ne liste pas toutes les idées, mais au fur et à mesure de la discussion nous nous rapprochions d’un nouveau concept sur lequel nous sommes tous tombé d’accord. Le concept de serendipity ou ce que nous considérons être “fortuitous happenstance” ou “pleasant surprise”. Au même moment, nous avons beaucoup parlé d’IA, et Philo eu l’idée d’un Bot. Un bot est un logiciel qui exécute des tâches en suivant un certains nombre de règles (imitant un comportement humain), c’est l’équivalence digital d’un robot. Nous savons que Twitter est une source importante de contenu en temps réel, nous soulevions donc des questions du type : un bot peut il automatiquement générer un nouveau contenu, basé sur quelque chose existant comme les tweets ?”, “Un bot peut il se comporter comme un vrai utilisateur de twitter ?”. Après avoir fait des recherches, nous avons découvert que c’était déjà le cas, beaucoup de compte twitter sont gérés par des bots. Alors faites attention la prochaine fois que vous répondez à des tweets. Vous pouvez trouver des exemples de bots sur twitter juste en dessous :

Nous avions le média que nous voulions utiliser pour notre aventure (un compte twitter), mais nous avions toujours besoin d’un contexte. Après des discutions entre nous pour trouver un sujet, nous commencions à parler des élections municipales françaises (qui s’est déroulé pendant le week end du Popathon). La politique était un bon sujet, et nous pouvions réunir beaucoup de contenu grâce aux différents parties français qui tweet constamment. Pourquoi ne pas mélanger tous ces tweets pour en créer un nouveau ? et peut être que ce twitter pourrait être le représentant d’un nouveau partie politique, au croisement de plusieurs déjà existants ?   Nous avions l’idée principale, mais les deux principales difficultés pour ce projet avec les parties politiques français étaient : – La quantité de parties politiques en France, qui créer un paysage politique très compliqué qui serait encore plus complexe à comprendre hors de France. – Qui se soucis de la politique française hors de France ?

Philo mélangeant nos idées

Nous voulions réellement que notre Bot soit un succès et qu’il obtienne de nombreux “followers” (twitter), c’est alors que nous nous sommes posé la question : quel pays démocratique dans le monde a un environnement politique suivit hors de son propre territoire ? Avec un grand intérêt ? La réponse était facile : les États-Unis d’Amérique. L’autre avantage d’utiliser la politique des États-Unis est que c’est un pays à système bipartite et donc deux parties principaux : les Républicains et les Démocrates, ce qui simplifiait vraiment notre prototype et le rendait plus simple à comprendre. Mais avant de se lancer dans notre projet, nous avions besoin d’un nom de code pour notre bot. Le violet est le résultat du mélange du rouge (Républicains) et du bleu (Démocrates), il fût appelé “purple bot”.

En cas de manque d’inspiration

4) La manière de travailler

L’objectif principale pour les “storytellers” et les desingers du groupe était de créer un personnage, une personnalité qui donnerait l’illusion d’être un vrai politicien. Ils devaient régler un compte twitter, trouver un nom, une description ainsi qu’une image de profil. Il y fallait aussi une liste de tous les sujets sensibles qui remuent l’environnement politique américain (la santé, l’immigration, le terrorisme, etc.), afin de filtrer les différents tweets des Républicains et des Démocrates. Pour ce qui est de la technique, nous avions une manière de travailler très précise pour créer le bot :

  • Récupérer les comptes twitter des différentes figures politiques américaines
  • Récupérer les tweets récents de ces comptes (filtrés avec des mots clés)
  • Rassembler ces tweets par parties politiques
  • Créer un nouveau tweet basé sur des tweets existant des Républicains et des Démocrates

Pour faire cela, Philo et moi avons décidé de travailler avec le langage Python. Nous utilisions également une “freebase” (une large base de donnée colaborative, voir http://www.freebase.com/) et pour twitter nous utilisions API et Tython (la libraire de Python) pour récupérer les tweets correspondant. Et enfin,  pour mélanger les tweets, nous avons créé un algoritme basé sur la chaine de Markov.

De gauche à droite : Simon, moi & Philo

5) Notre présentation

Après deux jours de travail, nous avons obtenu un prototype fonctionnel, capable de d’appliquer notre manière de travailler, et ce avec une nouvelle identité. “Purple bot” fût renommé en “Republicrats”, qui est un mélange entre Républicains et Démocrates, son image est également devenu un mélange des logos et emblèmes utilisés par les deux parties : l’éléphant des Républicains, et l’âne des Démocrates.

 

Voici quelques exemples des tweet de RepublicratsBot :

  • “meeting with the dire consequences of #Russian military presence & activities on #immigration reform.”
  • job-creating wind energy tax incentives Read at Q & A about his most violent action movie to date.”
  • “those who believe in the octagon, no holds barred, for the new show “Amazing America” by @VCURamNation.”

RepublicratsBot travail désormais indépendemment, libre de toute influence, même celle de ses créateurs, libre de grandir et vivre dans le monde de twitter. Nous vous invitons donc à le visiter et peut être le “follow” à https://twitter.com/RepublicratsBot. J’ai cru entendre qu’il avait même des idées pour les élections américaines de 2016.