Bhavnick Minhas* 1 , Sree Harsha Nelaturu* 1
1 ML Efficiency Group, Cohere For AI Community (* a contribué à parts égales)
? AyaMCooking est un agent RAG multilingue voix à voix qui constitue un sous-chef parfait pour votre cuisine, en 10 langues !
Dans ce bloc-notes, nous démontrons une des nombreuses fonctionnalités offertes par un flux de travail véritablement multilingue, comme celle activée par Aya Expanse de Cohere For AI et Cohere.
AyaMCooking est un outil polyvalent qui peut vous aider dans diverses tâches culinaires. Voici quelques-unes des choses qu'il peut faire :
? Génération de recettes : AyaMCooking peut générer des recettes basées sur les ingrédients que vous avez sous la main, vous garantissant ainsi de toujours cuisiner quelque chose de délicieux avec ce que vous avez.
Prise en charge multilingue : Il prend en charge jusqu'à 10 langues, vous permettant d'accéder et de comprendre des recettes de différentes cuisines du monde entier.
?️ Interaction voix à voix : vous pouvez interagir avec AyaMCooking à l'aide de commandes vocales, ce qui le rend facile à utiliser pendant la cuisson sans avoir besoin de toucher votre appareil.
Substitution d'ingrédients : AyaMCooking peut suggérer des substituts aux ingrédients que vous n'avez peut-être pas, vous aidant ainsi à adapter les recettes à ce qui est disponible.
? Informations nutritionnelles : Il peut fournir des informations nutritionnelles pour les recettes, vous aidant ainsi à faire des choix plus sains.
?? Conseils de cuisine : AyaMCooking propose des trucs et astuces de cuisine pour améliorer vos compétences culinaires et rendre votre processus de cuisson plus efficace.
? Planification des repas : Elle peut vous aider à planifier vos repas pour la semaine, en vous assurant d'avoir une alimentation équilibrée et en réduisant le gaspillage alimentaire.
? Génération de liste de courses : En fonction de votre plan de repas ou des recettes sélectionnées, AyaMCooking peut générer une liste de courses pour vous.
? Préférences alimentaires : il peut filtrer les recettes en fonction de préférences ou de restrictions alimentaires, telles que végétariennes, végétaliennes, sans gluten, etc.
Instructions étape par étape : AyaMCooking fournit des instructions de cuisson étape par étape, ce qui facilite le suivi et la cuisson de plats complexes.
Grâce à ces capacités, AyaMCooking devient un assistant indispensable dans votre cuisine, vous aidant à explorer de nouvelles cuisines, à améliorer vos compétences culinaires et à rendre la préparation des repas plus pratique.
AyaMCooking prend en charge les langues suivantes et leurs codes de langue respectifs :
en
)fr
)es
)de
)it
)tr
)hi
)ko
)ja
)fa
)Remarque : Bien qu'Aya Expanse prenne en charge 23 langues, AyaMCooking n'en prend en charge que 10, car les autres composants du pipeline, tels que le modèle ASR, l'intégration, le reclassement et le modèle TTS, prennent en charge différentes collections de langues. Nous avons essayé de trouver une bonne itersection pour tous ces modèles et nos propres préférences culinaires pour créer cet ensemble de 10 langues.
Les gens aimeraient souvent essayer une cuisine locale, mais les recettes authentiques sont souvent dans la langue d'origine : trouver les ingrédients, les substituts et d'autres informations est un défi et limite la créativité.
Nous utilisons d'abord Aya Expanse pour générer des recettes candidates, qui sont ensuite également utilisées pour générer des recettes. Cela forme notre ensemble de données, que nous intégrons ensuite ultérieurement pour former notre index.
Souvent, plutôt que de taper une requête et de lire une recette, vous préféreriez qu'elle soit basée sur l'audio - c'est simplement plus facile à suivre avec tous les ingrédients présents. Par conséquent, nous construisons un flux de travail dans lequel vous pouvez parler à Aya et obtenir une réponse sous forme audio.
Le pipeline utilise Whisper pour transcrire l'audio enregistré dans une grande variété. La question textuelle transcrite dans la langue d'origine est ensuite transmise à travers un système RAG multilingue où l'index et les intégrations sont construits à l'aide de Cohere-multilingual-v3-Embed, et pour le raffinement, nous utilisons Cohere ReRank3.
Le contexte extrait du RAG et notre invite sont combinés avec le code de langue et transmis via Aya Expanse pour générer une réponse textuelle. Celui-ci est ensuite utilisé pour générer une réponse vocale à l'aide de Coqui TTS dans la langue de la requête de l'utilisateur.
Les capacités multilingues nous permettent d'extraire des recettes et des informations de diverses autres langues et de fournir un contexte, ce qui peut conduire à des suggestions de recettes très créatives qui sont toujours ancrées dans la culture et les goûts locaux.
Le bloc-notes est documenté et la seule chose dont vous aurez besoin de votre côté est un peu de créativité, de chance (l'espoir est que l'enregistrement audio, la VM GPU sur Colab, etc. soient facilement disponibles) et une clé API Cohere.
Amusez-vous en tirant parti de la puissance de l’open source !
Harsha | Bhavnick
Nous fournissons un ensemble de données par défaut contenant 100 recettes des 10 langues et cultures générées à l'aide d'Aya Expanse. Ces recettes sont disponibles sur Hugging Face.
Voici un échantillon tronqué de l'ensemble de données :
{
"language" : " en " ,
"recipe" : " # Fish and Chips ## Description: A classic British dish consisting of battered and fried fish, typically cod or haddock, served with thick-cut chips (French fries). This comforting meal is often accompanied by malt vinegar, lemon wedges, and a side of mushy peas. ## Instructions: 1. **Prepare the Fish:** - Cut the fish fillets into serving-size pieces. You'll need about 4-6 pieces per person, depending on appetite. - Pat the fish dry with paper towels. This step is crucial for achieving a crispy batter. ... "
}
Nous tenons à remercier chaleureusement toute l'équipe d'Aya Expanse de Cohere for AI et Cohere pour avoir rendu ce notebook possible et pour leur soutien tout au long du processus de développement. De plus, nous remercions Cohere d'avoir fourni les crédits API qui ont rendu ce projet réalisable.
@software { AyaMCooking ,
title = { AyaMCooking: A Voice-to-Voice Multilingual RAG Bot for Cooking } ,
author = { Minhas, Bhavnick and Nelaturu, Sree Harsha } ,
year = 2024 ,
month = 10 ,
version = { 0.0.1 }
}