Installering

Vi kommer til å bruke LangChain , et bibliotek med åpen kildekode, som brukes til å lage applikasjoner med LLMer. Vi vil bruke modeller fra HuggingFace, en nettside som har verktøy og modeller som brukes til maskinlæring.

Oppgave 3.1: Lag en ny notebook

Lag en ny Jupyter Notebook med navn installing ved å klikke Filmenyen i JupyterLab, og så “New” og “Notebook”. Hvis du blir spurt om å velge en kjerne (kernel), velg “Python 3”. Gi navn til notebooken ved å klikke Filmenyen i JupyterLab og deretter “Rename Notebook”. Bruk navnet installing.

Virtuelle miljøer

Hvis du vanligvis jobber med virtuelle miljøer på Fox, bør du sette opp og aktivere et virtuelt miljø før du fortsetter. Se i Bonus: Virtuelle miljøer, lenger nede på denne siden. Hvis du ikke har hørt om virtuelle miljøer, kan du fortsette uten å bruke virtuelle miljøer.

Pyton pakker

Vi kommer til å bruke pakkeinstallasjonsprogrammet piptil å installere programvare. pipinstallerer programvare fra Python package index . Først oppdaterer vi piptil den nyeste versjonen:

pip install --upgrade pip

Requirements fil

I desember 2025, hadde vi problemer med at noen av våre viktigste biblioteker ikke lenger ble vedlikeholdt. Dette gjorde at vi utviklet en requirements fil. Behovet for denne gjenoppstod i april 2026. Kjør koden under:

pip install -r /fp/projects01/ec443/LLM-requirements.txt

Virtuelle miljøer

Requirements filen gjør at alle pakkene installerer seg selv i en versjon som ikke gir deg problemer. Hopp over resten av dette kapittelet. Skulle du senere ønske å oppdatere python pakkene, kan du kjøre koden under.

Nevrale nettverk og programvare

Språkmodeller er en slags neurale nettverk. Vi kommer til å bruke Python pakken PyTorch til å kjøre modellene våre.

Generell LLM programvare

Vi kommer til å installere LangChain og HuggingFace programmer først. Vi bruker huggingface-hubtil å automatisk laste ned modeller når dette nødvendig.

pip install --upgrade huggingface-hub

Vi trenger flere pakker til å jobbe med LangChain og HuggingFace:

pip install --upgrade langchain langchain-classic langchain-community langchain-huggingface langgraph

Transformers er den grunnleggende teknologien som brukes i store språkmodeller. Derfor installerer vi biblioteket sentence-transformers:

pip install --upgrade transformers sentence-transformers

Noen modeller bruker sentencepiece biblioteket. Derfor installerer vi dette også:

pip install --upgrade sentencepiece

Programvare til å lese tekstdokumenter

Vi kommer til å bruke unstructured til å lese dokumenter. Unstructured støtter ulike dokumentformater, som PDFer, Word filer og rene tekstdokumenter:

pip install --upgrade unstructured[pdf]==0.18.24 langchain-unstructured requests

Søkeindeks

Til Retrieval-Augmented Generation (RAG) kapittelet vil vi bruke FAISS til å søke etter dokumenter lokalt på maskinen:

pip install --upgrade faiss-cpu

Språkmodellen

Vi kommer til å bruke modeller fra HuggingFace, en nettside som har verktøy og modeller som brukes til maskinlæring. Vi kan bruke åpen- vektmodellene google/gemma-3-4b-it mistralai/Ministral-8B-Instruct-2410 eller meta-llama/Llama-3.2-3B-Instruct til våre oppgaver.

Ministral-8B-Instruct-2410 har 8 milliarder parametere. Til sammenligning har en av de største språkmodellene når dette skrives, Llama 3.1, 405 milliarder parametere. Ministral-8B-Instruct-2410 har rundt 16 GB, noe som fortsatt gjør den til en ganske stor modell. For å kjøre den, må vi ha en GPU med minst 20 GB minne. Vi må også ha minne til programvare og datahåndtering. Dette er grunnen til at man i praksis må ha 40 GB minne.

Modellen kan også kjøre på CPU, men da vil det gå tregere.

Modellens plassering

Vi bør fortelle HuggingFace biblioteket hvor det skal lagre dataene sine. Hvis du kjører på Educloud/Fox prosjekt ec443 finner du modellen på stien nedenfor. Dersom du kjører på din egen manskin, trenger du antakelig ikke å spesifisere modellens plassering:

import os
os.environ['HF_HOME'] = '/fp/projects01/ec443/huggingface/cache/'

3.2: Frivillig oppgave:

Hvis du kjører en av modellene som allerede er lastet ned til Educloud/Fox prosjekt ec443, kan du droppe dette. Hvis du ikke kjører på Educloud/Fox project ec443, eller du vil bruke en modell som ikke er lastet ned, må du laste den.

Du trenger “User Access Token” fra HuggingFace. Hvis du ikke har en konto på HuggingFace, må du først registrere deg. Klikk på knappen “Sign Up” i øvre høyre hjørne på HuggingFace’ nettside.

Når du har logget inn med din brukerkonto, kan du lage et User Access Token, som gir lesetilgang ved å følge denne guiden:

from huggingface_hub import login
login()

Bonus: Virtuelle miljøer

Som standard, vil pip kommandoen installere Python moduler eller biblioteker på din brukerprofil, der ditt standard Python miljø ligger. Hvis du bruker Python i forskjellige prosjekter med ulike biblioteker, kan det hende at prosjektene dine behøver ulike versjoner av det samme biblioteket. Python støtter å bytte mellom ulike v ersjoner av samme bibliotek, med virtuelle miljøer. Du kan lage ett virtuelt miljø for hvert av dine prosjekter. Deretter installerer du alle biblioteker som hører til i ett spesifikt prosjekt i det virtuelle miljøet for det prosjektet. Det virtuelle miljøet blir ofte lagret i en mappe som heter .venv.

Etablering av virtuelt miljø

La oss lage et virtuelt miljø til å kjøre store språkmodeller. Det kan gjøres på mange måter, men vi anbefaler å bruke pythons innebygde venv kommando:

!python -m venv .venv

Aktivering av miljøet

For å aktivere det virtuelle miljøet i konsollen, kan du bruke et aktiveringsskript:

source .venv/bin/activate

JupyterLab kjerne til miljøet

FOr å bruke det virtuelle miljet i JupyterLab, må vi definere en kjerne for det miljøet:

! .venv/bin/python -m ipykernel install --user --name LLM --display-name "Python (LLM)"

Bonus: opprenskning av basis venv

Virtuelle miljøer er en bra måte å sikre at du kon har den korrekte programvaren installert, og i rett versjon. Hvis du ønsker å fjerne all programvaren som du tidligere har installert i basismiljøet, kan du bruke denne kommandoen:

pip freeze | grep -v file: | xargs pip uninstall -y