Tanstack Start
Professional Projects

RAG with Laravel & pgvector

Knowledge base with word search and meaning search, built with Laravel, pgvector and Ollama

General Information

FieldDetail
Period04.09.2026 → 02.10.2026
ContextJobtrek Training Centre
TrainingApprentice 2nd year
Main goalBuild a searchable knowledge base in Laravel, then compare word search (full-text) with meaning search (embeddings + local LLM)
RoleSolo developer

Description

A Laravel application that imports a Markdown corpus into PostgreSQL, splits each document into text fragments and stores an embedding for each fragment with pgvector. It offers three modes: full-text word search, meaning search by vector similarity with a configurable threshold, and generated answers from a local Ollama model that cite their source documents. Workshop members can also browse documents and manage project records through forms with server-side validation. The search modes were benchmarked on a fixed set of test questions, and two embedding models were compared (nomic-embed-text vs qwen3-embedding:4b). The final step, migrating the search to Laravel Scout, was not completed.

Technologies Used

CategoryDetail
LanguagesPHP, SQL
Frameworks / LibrariesLaravel, Laravel AI SDK
ToolsGit, Composer, pnpm, Laravel Sail (Docker), Ollama
DatabasePostgreSQL with pgvector

ICT Training Plan Competencies

  • a3: Rechercher des informations sur des solutions ICT et sur les innovations
  • c1: Identifier et analyser les données et développer des modèles de données
  • c2: Mettre en œuvre des modèles de données dans un dispositif de stockage de données numériques
  • g1: Analyser et documenter les besoins en matière d'applications et d'interfaces
  • g3: Evaluer et documenter la sécurité des applications et des interfaces
  • g4: Elaborer des variantes de mise en œuvre d'une application et développer la solution sur le plan conceptuel
  • g5: Implémenter les applications et les interfaces selon le concept en respectant les exigences de sécurité
  • g6: Vérifier la qualité et la sécurité des applications et des interfaces
  • h1: Définir la plateforme appropriée pour la livraison des applications
  • h3: Implémenter le processus de livraison des applications

LLM Performance Metrics

Benchmarks captured against the local Ollama instance:

Generation (llama3.2:3b)

MetricValue
Total duration655.19 ms
Load duration3.10 ms
Prompt eval duration83.24 ms
Prompt eval count32 tokens
Eval duration567.11 ms
Eval count8 tokens

Embedding (nomic-embed-text)

MetricValue
Elapsed time13.45 ms
Vector length768

Repository

On this page