Découvre ce tutoriel pas à pas pour développer un assistant vocal personnalisé en Python, inspiré de Jarvis. L’article détaille comment utiliser des bibliothèques comme speech_recognition
, pyttsx3
et wikipedia
pour reconnaître la voix, répondre à des commandes et interagir avec ton ordinateur. Idéal pour automatiser des tâches ou s’initier à l’IA conversationnelle.
Gérer les dépendances Python avec pip freeze permet de capturer l’état exact des bibliothèques installées dans un environnement virtuel, en générant un fichier requirements.txt
via la commande pip freeze > requirements.txt
. Ce fichier liste toutes les dépendances (et leurs versions précises), assurant la reproductibilité du projet sur d’autres machines ou en production. Pour installer ces dépendances, il suffit d’exécuter pip install -r requirements.txt
. Cependant, cette méthode ne distingue pas les dépendances directes des dépendances transitives, ce qui peut poser problème en cas de conflits de versions. Pour des projets plus complexes, des outils comme pip-tools ou Poetry offrent une gestion plus fine et structurée des dépendances, en générant un fichier de verrouillage cohérent. L’usage d’un environnement virtuel reste indispensable pour éviter les conflits entre projets. Lire plus.
Gonzalo Ayuso partage un projet d’agent IA personnalisé pour recommander des films, développé avec Python et Strands Agents. L’objectif ? Automatiser le choix de son film du samedi après-midi en croisant les horaires des cinémas locaux (via SadeCines.com), ses notes et préférences personnelles (Letterboxd), ainsi que les critiques (IMDb/Metacritic). L’agent utilise des outils comme un navigateur sandboxé pour scraper le web, un interpréteur de code Python sécurisé pour traiter les données, et des prompts détaillés pour affiner les recommandations selon ses goûts (action, science-fiction, comédie) et exclusions (films familiaux, drames). Le code, simple et basé sur AWS Bedrock, illustre le potentiel des agents multi-outils, même si l’auteur reconnaît un certain over-engineering pour un usage individuel. Le projet, open source, montre comment combiner LLM, scraping et exécution de code de manière sécurisée pour créer un assistant sur mesure.
L'article explique comment organiser efficacement votre code pour améliorer la lisibilité et la maintenabilité. Il couvre l'utilisation de lignes shebang pour rendre les scripts exécutables, l'organisation des instructions d'importation selon les conventions PEP 8, et la création de points d'entrée principaux avec des blocs if name == "main". L'article aborde également la gestion des dépendances avec PEP 723, la manipulation des arguments en ligne de commande avec des bibliothèques comme Click, et l'amélioration de la structure interne des données avec des énumérations et des dataclasses. Enfin, il propose des conseils pour améliorer les retours des scripts, comme l'utilisation de bibliothèques telles que Rich pour une meilleure présentation des sorties.
L'article est une bonne introduction à Flask : il commence par expliquer comment installer Flask, créer son application et la lancer pour qu'elle écoute les requêtes. Ensuite, on voit comment renvoyer du JSON, comment gérer les verbes HTTP, etc.
L'article explore comment rendre les sorties des modèles de langage (LLMs) utilisables par des algorithmes de traitement pour en tirer parti de manière automatique et industrielle. Il aborde les limites du prompt engineering classique et introduit la notion de grammaires formelles pour forcer les LLMs à générer des sorties structurées, comme du JSON, afin de garantir la cohérence et la validité des données extraites. L'article illustre ces concepts à travers un cas d'usage concret : l'analyse automatisée de CVs pour extraire des compétences spécifiques, en utilisant des outils comme Pydantic pour définir des schémas de données stricts
.
Une série de 3 articles sur pytest, le framework de test Python de référence
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre