De : Marius Le Chapelier <marius.le-chapelier@inria.fr>
English version (French version below)
Internship position in NLP : development of an embodied conversational agent
Desired start date : Winter 2024 /2025
Location : Paris
Institution : Inria Paris, https://www.inria.fr/fr/centre-inria-de-paris
Inria team : Almanach, https://www.inria.fr/fr/almanach
Contact : Marius Le Chapelier, marius.le-chapelier@inria.fr
* Project description
This internship is part of the "Son-of-Sara" project (continuation of the "Sara" project from Articulab, member of the ALMAnaCH project-group at Inria Paris - see here for more details: ), which aims to develop a new kind of LLM-based embodied conversational agent (embodied chatbot), comprising Natural Language Processing (NLP) modules that understand and create language, and a Unity virtual agent module that adds nonverbal behaviors of the face and body to the language, leading to an embodied chatbot capable of interacting in a natural way with a human user. In the context of our project, this means using machine learning models to process, analyze and generate multimodal information (text, audio and video body behaviors) in real time that is then realized by the human body animation. The system will be equipped with a microphone and a camera used to perceive the user (voice, gestures, facial expressions, etc.), it will process and analyze these data to extract precise info!
rmation,
and then generate a vocally, verbally and visually adapted response via its agent (voice, gestures, facial expressions, etc.).
* Assignment
Within this project, several internship topics are possible, and the intern will focus on the development of one of the following aspects of the conversational agent :
- Turn-Taking :
A fundamental component of a dialogue system is the ability to speak, and to let the interlocutor speak, at the right moments. This ability is called turn-taking. Indeed, the realistic nature of dialogue depends on the fluidity of turn transitions between interlocutors, and therefore on the system's turn-taking performance. One of the possible topics of the internship is thus to integrate a turn-taking module into the current system, based on a predictive deep learning model which, from textual or audio data, predicts when will the user end his turn and stop speaking (and therefore, when the agent can start speaking).
- Gesture generation :
Numerous articles support the importance of the role played by non-verbal behaviors (facial expressions, eye movements, gestures, etc.) in dialogues between two individuals. These non-verbal behaviors can serve a number of purposes, such as making exchanges more fluid by marking a brief understanding or misunderstanding (e.g. nodding when listening), or supplementing the information provided by the voice with additional, non-redundant information (arm and hand gestures when speaking). All this non-verbal information is lost in a verbal-only interaction (phone call) or a text-only interaction (chat). It's precisely to avoid this impoverishment of interaction that the agent we're developing must be able to generate these non-verbal behaviors, and therefore have a high-performance gesture generation model.
* Content of the internship
The internship will include :
- Bibliographic research on the state of the art.
- Development of the module.
- Integration of the module in the current system (with the help of Marius).
* Necessary skills
- Python, deep learning and NLP libraries (Hugging Face, Transformers, scikit-learn, etc).
- Experience with training and evaluating deep learning and NLP models.
- Experience with the dialogue domain (oral interactions, audio data).
- Language : Fluent English speakers with a French level of at least B1, or fluent French speakers with an English level of at least B1 are both invited to apply
(This list of skills is provided as a guide only. We encourage you to apply, even if you have only most of them).
* Contact
In order to apply for this internship, please fill up the following form :
https://docs.google.com/forms/d/e/1FAIpQLSeTV3GxqXwukNbioPrvixaMjMSxI70uA_cNPJv-4B6A9U1Bsg/viewform?pli=1
________________
French version
Stage en TAL : développement d’un agent conversationnel incarné
Date de prise de fonction souhaitée : hiver 2024 / 2025
Localisation : Paris
Établissement : Inria Paris, https://www.inria.fr/fr/centre-inria-de-paris
Équipe Inria : Almanach, https://www.inria.fr/fr/almanach
Contact : Marius Le Chapelier, marius.le-chapelier@inria.fr
* Description du projet
Ce stage s’inscrit au sein du projet “Son-of-Sara” (suite du projet “Sara” de l’Articulab, membre du groupe-projet ALMAnaCH de l'Inria Paris - plus de details ici : ), dont l’objectif est le développement d’un nouvel agent conversationnel incarné, basé sur l’utilisation de Large Language Models (embodied chatbot). Il comprend des modules de Traitement Automatique du Langage (TAL) pour la compréhension et la génération de langage, et un module agent virtuel Unity qui ajoute au langage les comportements non verbaux du visage et du corps, conduisant à un agent conversationnel incarne capable d’interagir, de manière naturelle, avec un utilisateur humain. Dans le cadre de notre projet, cela signifie qu’il va utiliser des modèles de machine learning pour traiter, analyser et générer, en temps réel, des informations multimodales (texte, audio et comportements corporels vidéos), qui sont ensuite réalisés par les animations de son corps virtuel. !
En effet,
le système disposera d’un microphone et d’une caméra qui permettront de percevoir l’utilisateur (voix, gestes, expressions faciales, etc), le traitement et l’analyse de ces données lui permettront d’extraire des informations précises, puis de générer une réponse vocalement, verbalement, et visuellement adaptée via son agent (voix, gestes, expressions faciales, etc).
* Mission confiée
Au sein de ce projet, plusieurs sujets de stage sont possibles, et le stagiaire se focalisera sur le développement de l’un des aspects de l’agent conversationnel parmi les suivants :
- Turn-Taking :
Une composante fondamentale d’un système de dialogue est la capacité du système à prendre et laisser la parole à l’utilisateur aux bons moments. Cette capacité est appelée turn-taking. En effet, le caractère réaliste des interactions dépend de la fluidité des échanges de tours de parole entre les interlocuteurs et donc de la performance du turn-taking du système. Un des sujets possibles de stage est donc d’intégrer au système actuel un module de turn-taking basé sur un modèle prédictif de deep learning qui, à partir de données textuelles ou de données audio, prédit quand l’utilisateur va terminer son tour de parole (et donc quand l’agent peut prendre la parole).
- Génération de gestes :
De nombreux articles appuient l’importance du rôle que jouent les comportements non-verbaux (expressions faciales, mouvement des yeux, gestes, etc) lors des dialogues entre deux individus. Ces comportements non verbaux peuvent servir à remplir de nombreux buts, par exemple fluidifier les échanges en marquant une courte compréhension ou incompréhension (ex: acquiescement de la tête lorsque l’on écoute), ou compléter les informations apportées par la voix, avec des informations supplémentaires et non redondantes (gestes des bras et mains lorsque l’on parle). Toutes ces informations non-verbales sont perdues lors d’une interaction uniquement orale (appel téléphonique) ou textuelle (chat). C’est exactement pour ne pas subir cet appauvrissement d’interaction que l’agent que nous développons doit être capable de générer ces comportements non-verbaux, et donc d’avoir un modèle de génération de gestes performant.
* Principales activités
Le stage comprendra les taches suivantes :
- Recherche bibliographique sur l’état de l’art.
- Développement du module.
- Intégration du module dans le système existant (avec l’aide de Marius).
* Compétences
- Python, bibliothèques de deep learning et TAL (Hugging Face, Transformers, scikit-learn, etc).
- Expérience avec l’apprentissage et l’évaluation de modèles de deep learning et TAL.
- Expérience avec le domaine du dialogue (interactions orales, données audio).
- Langue : Les personnes parlant couramment l'anglais avec un niveau de français d'au moins B1, ou les personnes parlant couramment le français avec un niveau d'anglais d'au moins B1 sont invitées à poser leur candidature.
(Cette liste de compétences est fournie à titre indicatif. Nous vous encourageons à postuler, même si vous ne possédez que la plupart de celles-ci.)
* Contact
Pour postuler à ce stage, merci de remplir le formulaire suivant :
https://docs.google.com/forms/d/e/1FAIpQLSeTV3GxqXwukNbioPrvixaMjMSxI70uA_cNPJv-4B6A9U1Bsg/viewform?pli=1