Andersons vinkel
Python-paketinstallationer som ett index fÃķr lokal AI-adoption

Den svÃĨrmÃĪtbara Ãķkningen av paketnedladdningar fÃķr Python berÃĪttar historien om AI-diffusion, om man vet var man ska leta.
Â
à sikt Alla som har utforskat potentialen fÃķr lokal AI har vid det hÃĪr laget fÃķrlorat en skrÃĪmmande mÃĪngd diskutrymme, inte bara till de jÃĪttelika modellerna som ÃĪr inblandade, utan ocksÃĨ till de relaterade Pythonâ och liknande system som orkestrerar inferens, utbildning och hundratals andra mÃķjliga anvÃĪndningsomrÃĨden â inte minst fÃķr att generera lokala automatiseringssystem.
Denna sista anvÃĪndningsfall ÃĪr den vanligaste Ãķver olika maskiner pÃĨ mitt LAN, dÃĪr jag har anvÃĪnt AI fÃķr att stÃĪlla in âplattaâ Python-baserade automatiserade rutiner, sÃĨsom sÃĪkerhetskopiering, periodiska kontroller, administration av min webbplats och ett dussin andra anvÃĪndningsomrÃĨden.
Praktiskt taget allt jag vill uppnÃĨ under dessa kodningssessioner verkar krÃĪva ett nytt Python-bibliotek, sÃĨ till den grad att PIP (Package Installer for Python) ÃĪr en av de stÃķrsta utrymmeskrÃĪvarna pÃĨ mina LAN-maskiner:
PIP:s ringa nÃĪrvaro i CLI och GUI fÃķrminskar dess inverkan pÃĨ din filsystem. Cachen kan nÃĨ mycket hÃķga, till och med system-krypande filstorlekar.
Att experimentera med lokal AI vÃĪnder den betydande ÃķverflÃķdiga lyxen av lokala datorer, fÃķre AI-hÃĨrdvarugreppet i den nuvarande eran. Om du hade en generÃķs RAM-tilldelning, kommer den att ÃĪtas upp i GPU-offloading; en terabyte hÃĨrddiskutrymme, likasÃĨ, kommer snabbt att fyllas med hÃķgvolymmodeller, kvantifierade eller inte; och ÃĪven om, som jag gjorde, du har utrustat dig med 24 GB VRAM (ett nytt minimumâĶ), kommer systemet fortfarande att behÃķva en mÃĪngd genvÃĪgar och tricks fÃķr att kÃķra inferens inom rimliga tidsramar.
Installerade PyPi-paket (Python Package Index) syns inte i standard-âInstallerade programâ-grÃĪnssnitt i ett vanligt operativsystem och mÃĨste uttryckligen framkallas via Python, till exempel med PowerShell-kommandot pip freeze --all.
Listan kan vara fÃķrvÃĨnansvÃĪrt lÃĨng:
| Paket | Version | Paket | Version | Paket | Version |
|---|---|---|---|---|---|
| absl-py | 2.3.0 | Jinja2 | 3.1.4 | pip | 25.1.1 |
| attrs | 25.3.0 | jsonpatch | 1.33 | platformdirs | 4.3.8 |
| beets | 2.5.1 | jsonpointer | 3.0.0 | protobuf | 4.25.8 |
| certifi | 2025.11.12 | kiwisolver | 1.4.8 | psutil | 7.2.1 |
| cffi | 1.17.1 | lap | 0.5.12 | pybrisque | 1.0 |
| charset-normalizer | 3.4.4 | lazy_loader | 0.4 | pycparser | 2.22 |
| click | 8.2.1 | libsvm | 3.23.0.4 | pyparsing | 3.2.3 |
| colorama | 0.4.6 | Markdown | 3.8.2 | python-dateutil | 2.9.0.post0 |
| confuse | 2.1.0 | MarkupSafe | 2.1.5 | PyYAML | 6.0.2 |
| contourpy | 1.3.2 | matplotlib | 3.10.3 | pyyaml_env_tag | 1.1 |
| cycler | 0.12.1 | mediafile | 0.13.0 | requests | 2.32.5 |
| dlib | 20.0.0 | mediapipe | 0.10.21 | scikit-image | 0.25.2 |
| face-recognition | 1.3.0 | mergedeep | 1.3.4 | scipy | 1.16.0 |
| face_recognition_models | 0.3.0 | mkdocs | 1.6.1 | sentencepiece | 0.2.0 |
| filelock | 3.13.1 | mkdocs-get-deps | 0.2.0 | setuptools | 65.5.0 |
| filetype | 1.2.0 | ml_dtypes | 0.5.1 | six | 1.17.0 |
| flatbuffers | 25.2.10 | mpmath | 1.3.0 | sounddevice | 0.5.2 |
| fonttools | 4.58.4 | musicbrainzngs | 0.7.1 | sympy | 1.13.1 |
| fsspec | 2024.6.1 | mutagen | 1.47.0 | tifffile | 2025.6.11 |
| ghp-import | 2.1.0 | networkx | 3.3 | torch | 2.5.1+cu118 |
| idna | 3.11 | numpy | 2.1.2 | torchvision | 0.20.1+cu118 |
| image-quality | 1.2.7 | opencv-contrib-python | 4.11.0.86 | tqdm | 4.67.1 |
| imageio | 2.37.0 | opencv-python | 4.11.0.86 | typing_extensions | 4.12.2 |
| internetarchive | 5.7.1 | opt_einsum | 3.4.0 | Unidecode | 1.4.0 |
| jax | 0.6.2 | packaging | 25.0 | urllib3 | 2.6.2 |
| jaxlib | 0.6.2 | pathspec | 0.12.1 | watchdog | 6.0.0 |
| jellyfish | 1.2.1 | pillow | 11.0.0 |
En dump av PyPi-installationer pÃĨ en av mina mer aktiva maskiner. NÃĨgra av dessa smÃĨ ord dÃķljer gigabyte av diskutrymme â sÃĪrskilt allt som ÃĪr relaterat till Torch/PyTorch.
I korthet kan lokal AI ta din datorupplevelse tillbaka till bÃķrjan av 1990-talet, strax efter den period dÃĨ ett program som Word mÃĨste laddas in i nÃĨgra kilobyte RAM, en stor floppydisk i taget; men innan hÃĨrddisktilldelningar gav dig nÃĨgot utrymme att andas.
Att hitta understrÃķmmarna
Jag var nyfiken pÃĨ om en uppgÃĨng i PyPi-installationer under de senaste ÃĨren kunde tjÃĪna som en indikator fÃķr lokal AI-adoption, som i allmÃĪnhet ÃĪr ganska svÃĨr att spÃĨra, fÃķrutom genom intuition nÃĪr man deltar i olika AI-samhÃĪllen och noterar vilka plattformar och paket som fÃĨr uppmÃĪrksamhet.
En tillfÃĪllig blick pÃĨ PyPi-statswebbplatsen visar en besvikande smal datointerval, alla av vilka dock indikerar konstant tillvÃĪxt i nedladdningar:
Ãkning av nedladdningar Ãķver alla Python-paket sedan bÃķrjan av 2026 â ÃĪven om datointervallet ÃĪr mycket smalt. KÃĪlla
Det vore underbart att utÃķka det datointervallet till 2020 och se om Ãķkningen fÃķrblir konstant, eller (som man kan misstÃĪnka), Ãķkar mer kraftigt 2024-26 â om inte annat fÃķr de oÃķvervakade handlingarna av agentic AI-system.
TyvÃĪrr anger officiella PyPi-kÃĪllor att nedladdningsstatistik fÃķr PyPi inte ÃĪr tillgÃĪnglig, av olika skÃĪl, inklusive CDN-cachekostnader, ofullstÃĪndiga nedladdningsrÃĪkningar orsakade av cacher, speglar, obehÃķriga nedladdningar och historiska datakvalitetsproblem â och enligt Python-webbplatsen, deras begrÃĪnsade anvÃĪndbarhet som en mÃĨttstock pÃĨ ett pakets kvalitet.
Inte sÃĨ fort
Men PyPi ger ut komponenterna som behÃķvs fÃķr andra att analysera nedladdningstrender; det finns dÃĪrfÃķr olika webbplatser som tillÃĨter mer ÃĪn en mÃĨnads intervall, som till exempel PepySite â men de flesta ÃĪr prenumerationsbaserade, och du mÃĨste betala fÃķr att se de lÃĪngre trenderna och statistiken (upp till $490 USD per mÃĨnad i ett fall, fÃķr âVCâ-paketet).
Finns det nÃĨgot som vi kan utlÃĪsa, dÃĨ, om Python som en indikator fÃķr AI-acceleration, bortom de dyra API:erna som lÃĪgger ut dessa trender fÃķr de vÃĪlbÃĪrgade?
Ãven om PyPiStats ÃĪr en FOSS-resurs, erbjuder den av nÃĨgon anledning endast den senaste mÃĨnadens statistik, och detta intervall kan inte utÃķkas, inte ens fÃķr betalning.
Luckligtvis ÃĪr en webbplats mer generÃķs â pÃĨ ClickPy kan man ÃĨtminstone sÃķka efter antagandehistoriken fÃķr enskilda paket, ÃĪven om summan av dessa inte ÃĪr orkestrerad i en Ãķversikt som lÃĪtt ger breda, samordnade trender. HÃĪr, till exempel, ÃĪr passagen av Transformers-biblioteket sedan 2016 (ÃĪven om det bara ÃĪr giltigt sedan lanseringen 2019):
Transformatorernas meteoriska uppgÃĨng. KÃĪlla
Vad gÃĪller det ÃĪrevÃķrdiga Torch, fÃķrst slÃĪppt 2002, men inte destinerat att plÃĨga hemmabryggda AI-entusiaster fÃķrrÃĪn dess utveckling till PyTorch, och uppgÃĨngen av Transformer-baserade VLM och generativ AI relaterad till bilder och videor..?
Torch-nedladdningar sedan 2017, med en brant uppgÃĨng under de senaste 2-3 ÃĨren.

PyTorch under samma period, med en platÃĨ och sedan en topp ibland Ãķver en stabil bas.
Mer intressant, till exempel i fallet med PyTorch (se bilden direkt ovan), ÃĪr Ãķversikten av antagande Ãķver olika Python-versioner sedan 2017:

PyTorch-nedladdningar Ãķver tid sedan 2017, per Python-version, och ger en extra dimension av insikt i antagandet sedan den âhetaâ eran av denna tredje AI-revolution.
Om statistiken ovan belyser uppgÃĨngen i antagande sedan uppkomsten av riktigt kapabla LLM- och VLM-system, blir detta ÃĪnnu tydligare nÃĪr det ses per system:

PyTorch-antagande sedan 2017, tolkat per operativsystem.
Det ÃĪr en liknande historia fÃķr accelerate-paketet â ett av de mest krÃĪvda biblioteken fÃķr VRAM-utsatta AI-anvÃĪndare som fÃķrsÃķker fÃĨ ut sÃĨ mycket som mÃķjligt av systemets begrÃĪnsningar:
Accelerates uppgÃĨng, per operativsystem.
SÃĨdant gÃĪller fÃķr vilket paket eller bibliotek som helst som man undersÃķker pÃĨ ClickPy, och det vore verkligen intressant att skapa en Ãķversikt istÃĪllet fÃķr att titta pÃĨ bitarna en och en.
En sak som blir tydlig frÃĨn âper operativsystemâ-graferna ÃĪr Ãķkningen av Linux-antagande. Medan Linux-skrivbordsantagande gÃķr en stadig men lÃĨngsam Ãķkning infÃķr omtyckta Windows-strategier, ÃĪr anvÃĪndningen av Linux-miljÃķer tydligt i en betydande uppgÃĨng.
Till exempel kÃķr jag Ubuntu virtualiserat pÃĨ WSL2 i Windows fÃķr olika Docker-containrar, dÃĪr Docker kan utnyttja ett riktigt Linux-system pÃĨ samma villkor som (fÃķrmodligen Linux-nativa) utvecklare avsett. Det ÃĪr tvÃĨ aktiva Linux-system i ett helt Windows-baserat LAN (frÃĨn den obebyggda metallens synvinkel), med en inbyggd Linux-laptop som vÃĪntar oanvÃĪnd i vingen fÃķr mer avslappnade tider.
Slutsats
NÃĪr det gÃĪller CLI-baserade paketnedladdningar ÃĪr det intressant att notera hur angelÃĪget och eftertraktat detta mycket nÃķrdiga utrymme har blivit i kÃķlvattnet av AI.
Ãkningen av paketkonsumtion bÃķrjar bli en sÃĪkerhetsrisk nedstrÃķms, med uppkomsten av slopsquatting. Eftersom LLM ÃĪr benÃĪgna att hallucinera paket, ÃĪr de troligen att skicka fÃķrfrÃĨgningar om uppfunna paket. PÃĨ grund av likhet i konvergens ÃĪr de falska paketen troligen att ÃĨterkomma i andra bibliotekssamtal, till den grad att det ÃĪr vÃĪrt fÃķr illvilliga aktÃķrer att faktiskt gÃķra de falska paketen tillgÃĪngliga fÃķr framtida drag/call â naturligtvis med en skadlig nyttolast:
FrÃĨn artikeln âWe Have a Package for You! A Comprehensive Analysis of Package Hallucinations by Code Generating LLMsâ â AI-driven kodgenerering utvidgar leverantÃķrskedjeattackytan. LLM hallucinerar ofta icke-existerande paketnamn, skapar âslopsquattingâ-sÃĨrbarheter som illvilliga aktÃķrer utnyttjar nÃĪr automatiserade pipelines blint drar overifierade beroenden. KÃĪlla
Â
Publicerad fÃķrsta gÃĨngen fredagen den 24 juli 2026












