Pratique Python, IA Engineering et bien plus avec des exercices interactifs et des tests automatiques.
Quand une fonction a plusieurs paramètres avec des valeurs par défaut, tu peux utiliser des arguments nommés pour choisir lesquels tu veux modifier sans te …
Parfois, tu ne sais pas a l'avance combien d'arguments ta fonction va recevoir. Python permet de gérer ca avec la syntaxe *args. Le paramètre précédé …
En plus de *args, Python offre **kwargs qui capture les arguments nommés sous forme de dictionnaire. C'est tres pratique quand tu veux accepter des options …
Une lambda, c'est une mini-fonction anonyme (sans nom) qu'on écrit sur une seule ligne. C'est pratique quand tu as besoin d'une fonction tres courte, souvent …
En Python, une variable créée dans une fonction n'existe que dans cette fonction. On dit qu'elle est locale. En dehors de la fonction, elle n'existe …
Une fonction peut renvoyer une autre fonction. On appelle parfois ca une fabrique de fonctions (function factory). C'est comme un atelier qui produit des outils …
Une closure (fermeture en francais), c'est une fonction qui se souvient de l'environnement dans lequel elle a ete créée, meme apres que cet environnement a …
Les closures peuvent capturer n'importe quel type de donnee, pas seulement des nombres. On peut s'en servir pour créer des fonctions avec de la mémoire. …
Maintenant que tu as compris le principe de la récursion avec la factorielle, appliquons-le a un autre problème : calculer la somme des entiers de …
La suite de Fibonacci est une suite de nombres ou chaque nombre est la somme des deux précédents : 0, 1, 1, 2, 3, 5, …
Quand on decoupe un texte en chunks, on veut garder la trace de l'origine de chaque morceau. RécursiveCharacterTextSplitter a une méthode split_documents qui prend une …
Pour comparer des textes entre eux, il faut les transformer en nombres. TF-IDF (Term Frequency - Inverse Document Frequency) est une méthode classique qui donne …
Une fois les textes transformes en vecteurs, on peut mesurer leur ressemblance. La similarite cosinus mesure l'angle entre deux vecteurs : si deux textes parlent …
Le coeur du RAG, c'est la recherche : etant donne une question, trouver le document le plus pertinent dans une base. On va combiner TF-IDF …
En RAG, on ne veut pas juste le meilleur document, on veut souvent les K meilleurs. Ca permet de donner plus de contexte au modèle …
Quand on a des milliers de documents, calculer la similarite avec chacun devient lent. FAISS (Facebook AI Similarity Search) est une librairie optimisee pour la …
BM25 est un algorithme de recherche textuelle classique, utilise par les moteurs de recherche bien avant l'arrivee des embeddings. Il fonctionne par correspondance de mots-cles …
La similarite cosinus est LA metrique de base pour comparer des vecteurs dans un système RAG. Elle mesure l'angle entre deux vecteurs, independamment de leur …
LangGraph est la librairie de LangChain pour construire des agents et des workflows complexes sous forme de graphes. Au lieu d'enchainer des appels de fonctions …
La vraie puissance de LangGraph, c'est les transitions conditionnelles. Au lieu d'un pipeline lineaire, tu peux diriger le flux vers differents noeuds selon le contenu …
Apres chaque appel API, OpenAI te renvoie un objet ChatCompletion. Savoir le lire, c'est essentiel : tu y trouves la reponse du modele, mais aussi …
Quand tu deploies une appli qui utilise l'API OpenAI en production, la premiere question de ton manager c'est : "Ca va couter combien ?" Les …
Si tu as deja construit un chatbot, tu sais que l'API OpenAI ne se souvient de rien entre les appels. Elle est stateless. Si tu …
Le function calling transforme GPT d'un generateur de texte en un agent capable d'agir. Au lieu de te repondre "Je ne peux pas consulter la …