Comme Javascript, l'écosystème Python est aussi un sacré bordel 😅
Une lib en Python pour charger des données depuis différentes sources dans des databases.
ça supporte notamment Slack, Notion, Github en source.
Par contre j'ai l'impression que c'est limité à de la synchronisation one shot et pas forcément à une mise à jour des documents retrouvés
Une lib Python pour formater correctement le texte généré par les LLM
Un serverless Python spécialisé dans l'exécution des modèles d'IA
Superbe démonstration pas à pas d'utilisation de la data science au travers d'une suite de suppositions pour détecter les faux comptes Github.
Par exemple, en analysant les comptes qui agissent les même jours on a plus de chance de détecter des comptes instrumentés par des scripts.
Nomic supporte maintenant le format Apache Arrow.
C'est véritablement entrain de devenir le standard de l'industrie data!
Nomic est une lib python qui permet d'intéragir avec de très gros jeux de données dans son navigateur.
Une lib de scrapping qui utilise GPT pour extraire les informations voulues depuis une page web.
Ça fonctionne assez bien et ça permet de réduire le coût total en faisant un clean sur le HTML.
Un peut spécifier un budget de token et le scrapper s'arrête une fois le budget consommé.
Apache Arrow est un projet qui développe des SDK dans la plupart des langages afin de manipuler efficacement des données tabulaires (vecteurs, matrices) en RAM.
Ils ont notamment des optimisations des calculs spécialement conçues pour les CPU et les GPU.
Par exemple, les données sont regroupées pour éviter les "jump" CPU et tenter de les faire tenir dans les différents caches.
Pour les GPU, Arrow utilise CUDA afin de paralléliser les calculs.
C'est utilisé dans la nouvelle version 2.0 de Pandas, la lib de référence en Python pour manipuler les données.
Les performances peuvent être jusqu'à 25x supérieurs (!)
(Merci Ocav pour le partage)
Une lib pour manipuler des données tabulaires (vectors, matrices) de la même manière qu'avec Panda.
Celle la est écrite en Rust donc on peut s'attendre des à des performances ~7x plus rapide que Panda. (Benchmarks)
(Via Alex)
Un projet qui permet de lancer des scripts Python avec des performances natives en compilant le code en bytecode LLVM puis donc en code natif.
Ils affichent des performances x10 à x100.
Par contre toutes les libs ne sont pas forcément supportées donc difficile de faire tourner une grosse codebase avec ça.
J'avais déja parlé de Taichi qui propose le même genre de chose.
Un framework qui permet de créer des applications graphiques en Python pour faire de la dataviz.
Whoa Taichi est un langage compilé avec une syntax proche de Python qui permet de booster les performances d'un code python quasiment sans le modifier !
Simplement en important la librairie et en rajoutant des annotations, on peut avoir jusqu'à x100 en performances:
import taichi as ti
ti.init()
@ti.func
// python func here
Taichi exploite automatiquement le parallélisme des CPU de la machine et même du GPU.
Analyse détaillée d'informations extraites de Tinder via des bots connectés sur leur API.
Les explications des outils d'analyse (Python, Panda, Numpy, etc) et les snippets sont bien expliqués 👍