Noordie tutorial

Inhoudsopgave

  1. Wat is Noordie?
  2. Hoe werkt Noordie?
  3. Hoe maak je een Noordie?

Wat is Noordie?

Noordie is een AI-chatbot die je helpt informatie te vinden over Noorderpoort. De AI-bot is gebaseerd op Gemini van Google.

Hoe werkt Noordie?

Noordie gebruikt geavanceerde taalmodellen om vragen te begrijpen en antwoorden te geven. Het haalt informatie van de Noorderpoort-website om je zo goed mogelijk te helpen.

Infrastructuur

Noordie bestaat niet zomaar. Wij hebben een goed rebuust systeem opgezet om Noordie te laten werken. We hebben veel gedacht aan, flexibiliteit, schaalbaarheid en veiligheid. Hieronder een overzicht van de infrastructuur van Noordie.

  • Frontend: De gebruikersinterface waar je vragen kunt stellen.
    • Svelte: Een JavaScript-framework voor het bouwen van webapplicaties.
    • SvelteUI: Een UI-bibliotheek voor Svelte. Dit maakt het bouwen van de frontend eenvoudiger.
  • Backend: De server die de vragen verwerkt en antwoorden genereert.
    • Node.js: Een JavaScript-runtime voor het bouwen van servers.
    • Express: Een webframework voor Node.js.
    • AI Adapters: We hebben soort adapters geïmplementeerd om makkelijk te kunnen switchen tussen verschillende AI-platformen. Zoals Gemini, OpenAI en Ollama.
      • Gemini: Een AI-platform van Google.
      • OpenAI: Een AI-platform voor het bouwen van chatbots.
      • Ollama: Een AI-platform voor het bouwen van chatbots.
  • Database: De bron van informatie die Noordie gebruikt om antwoorden te genereren.
    • Sitemap JSON: Een JSON-bestand met informatie over alle noorderpoort-websitepagina's. (Dit zijn er 629 om precies te zijn.)
    • Search Algorithme: De sitemap zelf is veelste groot om naar de AI te sturen. Daarom hebben we een zoekalgoritme geïmplementeerd om de juiste pagina's te vinden. We gebruiken tf-idf om de relevantie van de pagina's te bepalen. En pakken de top 3 meest relevante pagina's.
    • Web Scraper: We hebben een web scraper geïmplementeerd om de informatie van de pagina's te halen.
      • Contact gegevens
      • FAQ blokken
      • Titel
      • Tekst Samenvatting

Hoe maak je een Noordie?

Hieronder kan je zelf zien hoe toegankelijk het is om tegenwoordig je eigen AI-chatbot te maken. We hebben een tutorial gemaakt die je stap voor stap uitlegt hoe je een AI-chatbot maakt met behulp van Ollama (Selfhosted AI model).

The NetworkChuck Academy

Setup WSL (Windows)

Installeer WSL en Ubuntu
wsl --install
Verbind met een WSL-instantie in een nieuw venster
wsl -d Ubuntu

Installeer Ollama

Download Ollama

curl -fsSL https://ollama.com/install.sh | sh
Voeg een model toe aan Ollama
ollama pull llama3

Bekijk GPU-prestaties in Linux

watch -n 0.5 nvidia-smi

Installeer Docker

Voeg de officiële GPG-sleutel van Docker toe:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
Voeg de repository toe aan Apt-bronnen:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Installeer Docker
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Open WebUI Docker-container uitvoeren

docker run -d --network=host -v open-webui:/app/backend/data -e OLLAMA_BASE_URL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main