Wanneer je een virtuele omgeving in Python aanmaakt, gebruik je vaak python -m venv. Maar er is ook een krachtige tool genaamd Conda, die veel wordt gebruikt in datawetenschap en kunstmatige intelligentie. Conda helpt bij het beheren van zowel pakketten als omgevingen.

In dit artikel zullen we het concept van Conda bespreken, de verschillen tussen Anaconda en Miniconda en hoe een Conda-omgeving gescheiden van het systeem opereert.


1. Wat is Conda?

Conda is een pakket- en omgevingsbeheerder die veel wordt gebruikt in de datascience, kunstmatige intelligentie en machine learning. Het is oorspronkelijk ontwikkeld voor Python, maar ondersteunt nu ook verschillende andere talen zoals R, Ruby en Lua.

Met Conda kun je efficiënt de volgende taken uitvoeren:

  • Meerdere pakketten tegelijkertijd installeren en beheren
  • Onafhankelijke virtuele omgevingen creëren die losstaan van het besturingssysteem
  • Verschillende Python-versies voor verschillende projecten behouden

Gerelateerde termen

  • Conda-omgeving (environment): Een virtuele omgeving met een onafhankelijke pakkettenruimte
  • conda-forge: Een pakketrepository beheerd door de Conda-gemeenschap
  • Anaconda: Een distributie die Conda en vaak gebruikte pakketten voor datawetenschap (Numpy, Pandas, Jupyter, enz.) vooraf installeert
  • Miniconda: Een minimale distributie die alleen Conda bevat, waarmee je de benodigde pakketten zelf kunt kiezen en installeren

2. Waarom Conda? Vergelijking met python -m venv

De standaardbibliotheek van Python bevat een tool voor het creëren van virtuele omgevingen, genaamd venv. Desondanks wordt Conda in de datascience vaak bij voorkeur omdat:

  • venv beheert alleen Python-pakketten, terwijl Conda ook niet-Python afhankelijkheden (C, C++, CUDA, enz.) kan beheren
  • Conda is uitstekend in het oplossen van pakketversieconflicten en configureert automatisch binaire bestanden per besturingssysteem
  • In een venv omgeving moet je alles installeren met pip, maar met Conda kun je stabiele distributiebeheer uitvoeren via pakketkanalen zoals conda-forge

Met andere woorden, in wetenschappelijke berekeningen of machine learning-omgevingen is de mogelijkheid om verschillende externe bibliotheken en conflicten op te lossen belangrijk, en in dit opzicht presteert Conda uitzonderlijk goed.


3. Verschil tussen Anaconda en Miniconda

Onderdeel Anaconda Miniconda
Standaardgrootte Heel groot (ongeveer 3-4GB) Heel klein (400 MB-niveau)
Inbegrepen pakketten Inclusief Numpy, Pandas, Matplotlib, Jupyter, enz. Bevat alleen Conda
Installatietijd Neem veel tijd in beslag Snel
Geschikt voor Beginners, gebruikers die direct met ontwikkelen willen beginnen Gebruikers die een lichte installatie en selectie van pakketten nodig hebben

Kenmerken van Anaconda

  • Direct na de installatie mogelijk om data-analyse uit te voeren
  • Inclusief visualisatietools, Jupyter Notebook, enz.

Kenmerken van Miniconda

  • Lichte en snelle installatie
  • Installeren van alleen wat nodig is → Hoge flexibiliteit

4. Hoe worden Conda-omgevingen gescheiden van het systeem?

Conda-omgevingen worden aangemaakt in volledig gescheiden directories van het basissysteem. Dit biedt de volgende voordelen:

  • Beïnvloedt de systeem-Python-omgeving niet
  • Onafhankelijke omgevingen per project mogelijk
  • Omgevingen kunnen gemakkelijk worden gereproduceerd door .yml bestanden op te slaan

Vergelijking met Docker

Onderdeel Conda Docker
Scheidingniveau Gebruikersniveau (virtuele omgeving) Besturingssysteemniveau (container)
Toepassingsdoel Beheer van pakketten en bibliotheken Volledige systeemisolatie en distributie
Grootte Relatief licht Zwaar
Uitvoersnelheid Snel Kan traag zijn (inclusief het uitvoeren van afbeeldingen)

Docker biedt volledige isolatie, maar Conda is lichter en eenvoudiger te configureren, waardoor het in de datawetenschap vaak voldoende is om alleen Conda te gebruiken.


5. Installatiemethode

Hoe Anaconda te installeren

  1. Download het installatiescript dat past bij je besturingssysteem van https://www.anaconda.com/download
  2. Installeer via de GUI-installatiewizard of CLI-methode
  3. Na de installatie kun je anaconda-navigator of conda gebruiken

Hoe Miniconda te installeren

  1. Download het installatiescript van https://docs.conda.io/en/latest/miniconda.html
  2. Stel de omgeving in met conda init, conda config na installatie

6. Vooruitblik op de volgende aflevering

In dit artikel hebben we het concept van Conda en de verschillen tussen de belangrijkste distributies Anaconda en Miniconda besproken. We hebben ook uitgelegd waarom -m venv niet zo geschikt is voor wetenschappelijke werkzaamheden als Conda.

In het volgende artikel zullen we zien hoe we een Conda-omgeving daadwerkelijk kunnen creëren en beheren, met de volgende onderwerpen:

  • Een omgeving creëren met conda create
  • Omgeving activeren en verwijderen
  • Verzameling van vaak gebruikte commando's in Conda

Dan gaan we in de volgende aflevering aan de slag met het opzetten van een echte werkomgeving!

A symbolic digital cobra representing Conda environments, surrounded by a fenced grid with cloud and system icons