Christian Minich
Back to Projects

AI for Science

Project report for MinervAI, a data-protection-compliant, LLM-supported citation verification platform for scientific literature, built by a six-person Scrum team from April to October 2025.

Tech Stack

aillmnuxt3typescriptfastapiollamapostgresqlpgvectorknowledge-graphprivacy-by-design

AI for Science

Project Report | OsnabrΓΌck University, Dept. of Information Management & Information Systems | Completed | Submitted: 15 October 2025

What are we trying to do?

Build MinervAI, a data-protection-compliant, LLM-supported system that checks scientific citations: a researcher pastes a paragraph, and the system finds the literature it came from and verifies whether the citation is accurate.

                    RESEARCHER INPUT

              Paragraph from a scientific paper
                              β”‚
                              β–Ό
                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚   SEMANTIC LLM    β”‚
                    β”‚      ANALYSIS     β”‚
                    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                              β”‚
              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
              β–Ό               β–Ό               β–Ό
         FIND SOURCES   CHECK CITATION    FLAG ISSUES
         (embeddings)   (existence +      (missing /
                          correctness)     incorrect)
              β”‚               β”‚               β”‚
              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                              β–Ό
                VERIFIED CITATION REPORT

Manually reviewing literature is slow: high-quality systematic reviews require screening thousands of publications, which can take months. LLMs can cut that screening effort by 33-93% when used well, but they also raise data protection risks, since free-text prompts can leak confidential research data to external providers. MinervAI is built around that tension.

START
  β”‚
  β–Ό
Paste Paragraph
  β”‚
  β–Ό
Semantic Analysis
  β”‚
  β–Ό
Find Literature Sources
  β”‚
  β–Ό
Verify Citation
  β”‚
  β–Ό
Show Evidence + Status
  β”‚
  β–Ό
DONE

Definition of Done

CriterionPurposeTarget
🎯 AccuracyCorrectly recognize and verify relevant citationsβ‰₯ 90% in representative test scenarios
πŸ”’ Data protectionSensitive/personal data stays inside the federated environmentGDPR-compliant, consent-based
⚑ User-friendlinessComprehensible, verifiable results within a reasonable timeUnder 30 seconds
πŸ› οΈ Technical stabilityReliable under realistic loadNo crashes, no unacceptable performance loss

The DoD applies per work item, not to the whole project: an item is "done" once it meets these criteria and demonstrably works in the integrated environment, otherwise it returns to the backlog.

The Three Verification Steps

Semantic AnalysisSource RetrievalCitation Check
GoalUnderstand meaning, not just wordsFind matching or related literatureConfirm the source actually contains the claim
MethodLLM embedding of the input paragraphVector similarity search (pgvector)Cross-check citation against the retrieved passage
OutputSemantic vector representationRanked literature candidatesVerified / unverified / missing citation
Main questionWhat does this paragraph actually claim?Where else does this appear?Does the cited source really say this?

Project Scope

                SAME DOCUMENT TYPE
             Scientific / Academic Papers
                        β”‚
                        β–Ό
                SAME PROCESS CHAIN
       Input β†’ Analysis β†’ Retrieval β†’ Verification
                        β”‚
                        β–Ό
               SAME PRIVACY GUARANTEE
             Federated / Local Processing
                        β”‚
                        β–Ό
             NOT GENERAL PLAGIARISM DETECTION
                Targeted Citation Checking

The scope is deliberately narrow: not a general plagiarism detector for arbitrary text, but a targeted citation-checking tool for a research context, using federated processing so sensitive research data isn't unnecessarily transferred to external servers.

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚              FRONTEND (Vue 3)                β”‚
β”‚                                              β”‚
β”‚  Upload    Progress    Evidence    History   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                       β”‚
                       β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚           NUXT 3 SERVER (TypeScript)         β”‚
β”‚                                              β”‚
β”‚  Validation   Routing   Job Orchestration    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                       β”‚
                       β–Ό
      PYTHON / FASTAPI MICROSERVICES
      Parsing Β· Embeddings Β· Knowledge Graph
                       β”‚
                       β–Ό
       POSTGRESQL + PGVECTOR + MINIO (S3)

The system started as a Flask prototype and was migrated in full once Flask's concurrency handling and frontend integration became limiting factors:

Framework      Flask (Python) β†’ Nuxt 3 (Node.js / TypeScript)
AI Model       Gwen β†’ Gemini
Storage        Local files β†’ PostgreSQL + pgvector + MinIO
Team Comms     Slack β†’ Discord
Docs           Notion β†’ myShare

Infrastructure

Public-facing and internal services are split across two dedicated servers.

Public ServerPrivate Server
Traefik reverse proxyβœ“
OAuth2 Proxy (GitHub auth)βœ“
Wireguard tunnel endpointβœ“βœ“
PostgreSQL + pgvectorβœ“
MinIO object storageβœ“
Ollama (GPU inference)βœ“
Grafana / Prometheus / Loki / Alloyβœ“βœ“
PUBLIC SERVER
   β”‚
   β”œβ”€β”€ Traefik (reverse proxy)
   β”œβ”€β”€ OAuth2 Proxy
   β”œβ”€β”€ Wireguard tunnel
   └── Alloy monitoring


PRIVATE SERVER
   β”‚
   β”œβ”€β”€ Nuxt 3 backend
   β”œβ”€β”€ PostgreSQL + pgvector
   β”œβ”€β”€ MinIO (S3-compatible)
   └── Ollama (GPU inference)

Algorithms & Frameworks

AreaTechnology
FrontendVue 3 (Composition API) + TailwindCSS
BackendNuxt 3 / Node.js / TypeScript
ValidationZod
Database ORMDrizzle ORM
Relational DatabasePostgreSQL
Vector Searchpgvector
Object StorageMinIO (S3-compatible)
LLM RuntimeOllama
Embedding Modelmxbai-embed-large
Generative ModelGemini (migrated from Gwen)
Knowledge GraphFastAPI microservice
ParsingPython + Pandoc (LaTeX β†’ Markdown)
Reverse ProxyTraefik
VPN TunnelWireguard
MonitoringGrafana / Prometheus / Loki / Alloy
Project TrackingGitHub + Miro + myShare

Processing Pipeline

PDF UPLOAD
   β”‚
   β–Ό
S3 / MINIO STORAGE
   β”‚
   β–Ό
POSTGRESQL METADATA ENTRY
   β”‚
   β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ PARSING β”‚EMBEDDINGβ”‚  GRAPH  β”‚
β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜
     β”‚         β”‚         β”‚
     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β–Ό
        CITATION VERIFICATION
               β”‚
               β–Ό
          EVIDENCE REPORT
               β”‚
               β–Ό
            UI DISPLAY

Each run stores the paper metadata, parsed references, ~512-token text chunks with embeddings, retrieved candidate sources, and the final verification result.

Economic Viability (MVP, Year 1)

Cost CategoryEstimated Cost (EUR/year)
Cloud Infrastructure (AWS)25,000 €
AI API (OpenAI / NLP)15,000 €
Software Development (2 devs)120,000 €
Project Management85,000 €
UX/UI Design44,500 €
Other (tools, licenses, legal)20,000 €
Total309,500 €
ESTIMATED VALUE (1,000 reviewed papers / year)
   β”‚
   β”œβ”€β”€ ~2 hours saved per paper
   β”œβ”€β”€ 2,000 working hours saved / year
   └── β‰ˆ €100,000 / year (at €50/hour)

Beyond direct time savings, the underlying knowledge graph opens further customer segments: universities improving review throughput, companies mining research gaps, and, via its argument-mapping capabilities, legal use cases such as case preparation.

What Do We Test?

AccuracyPrivacyUsabilityStability
Relevant citation recognitionData stays in federated environmentTask completion timeLoad & reliability tests
Reference extraction correctnessGDPR-compliant processingSearch / history / status labeling clarityPDF stress tests (formats, lengths)
Nightly end-to-end regression runsRole-based access controlUsability test findings (5 participants)Timeouts, retries, watchdog
DOI / title cross-checksTLS + hashed & salted passwordsEditor interviews (turnaround, trust)Parallel background jobs

The result is a quality profile across four dimensions, not a single artificial score. Usability testing with five participants (per Nielsen's 85%-coverage heuristic) surfaced concrete fixes: a more discoverable search field, clearer history/collapse iconography, better contrast between inactive and logout buttons, and unambiguous labeling for the citation-status "traffic light."

Project Management

The project was run as a technical project using Scrum with feature teams.

                     AI FOR SCIENCE
                         β”‚
            β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
            β–Ό                         β–Ό
       FEATURE TEAMS              PROJECT MGMT
            β”‚                         β”‚
      Backend                    Scrum Master
      Frontend                   Product Owner /
      Ollama / LLM                Tech Lead
      Knowledge Graph             Moderation
      UX Design                   Documentation
            β”‚                         β”‚
            β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                         β–Ό
                TRACEABLE PROJECT

Sprints

Sprint 1   Foundations: ingestion pipeline, Ollama PoC, UX personas, graph schema
 β”‚
Sprint 2   Job polling, reliable reference access, upload flow, UX survey
 β”‚
Sprint 3   Backend↔Ollama integration, progress UI, early usability tests
 β”‚
MVP        Completed early April β†’ dedicated retrospective
 β”‚
Sprint 5   Hardening: citation reliability, chunk selection, UX feedback
 β”‚
Sprint 6   Full end-to-end path + documentation + handover
 β”‚
 β–Ό
15 OCTOBER 2025

The Scrum workflow follows:

TO DO β†’ IN PROGRESS β†’ TESTING β†’ DONE

Communication & Tools

PROJECT
β”‚
β”œβ”€β”€ Sprint Reviews (last Friday of each month)
β”œβ”€β”€ Scrum-of-Scrums (rotating cross-team sync)
β”œβ”€β”€ Weekly team + project-wide meetings
β”œβ”€β”€ Slack β†’ Discord (90-day message retention)
β”œβ”€β”€ Notion β†’ myShare (avoided fees)
└── GitHub + Miro (documentation & decisions)

Scrum-of-Scrums manages cross-team dependencies ("Does our work conflict with another team's?").

Sprint reviews document what was built, what feedback came back, and what changes next.

Current Status

APRIL              MAY - AUGUST            SEPTEMBER
MVP ─────────────► Sprints 2-5 ──────────► Sprint 6


OCTOBER
Final Presentation ──► Team Retrospective ──► Report Submitted
     (Oct 8)                (Oct 10)               (Oct 15)
                                                        β–²
                                                        β”‚
                                                  WE ARE HERE

Root causes (Ishikawa retrospective):

Computer / infrastructure unavailability
       +
Slow, inconsistent decisions on scope & organization
       ↓
REDUCED MOTIVATION + DELAYED MILESTONES

Five cause categories were reviewed: Environment (dependency on external DFKI infrastructure), Machines (unavailable hardware for Ollama hosting), Material/Resources (team departures, oversized initial scope), People (uneven participation, dropping motivation late in the project), and Methods (too many early meetings, too few late ones, slow decisions).

Final Goal

                   MINERVAI
                     β”‚
        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
        β–Ό            β–Ό            β–Ό
     BACKEND      OLLAMA/LLM   KNOWLEDGE
                                  GRAPH
        β”‚            β”‚            β”‚
        β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                     β–Ό
           SAME PRIVACY GUARANTEE
                     β–Ό
        SEMANTIC ANALYSIS + CITATION CHECK
                     β–Ό
             VERIFIED EVIDENCE REPORT
                     β–Ό
             PROJECT REPORT (WI)
                     β–Ό
               15.10.2025

The final deliverable is a working, privacy-by-design prototype and documented project report showing how LLM-based semantic analysis, retrieval, and citation verification can be combined into a usable research tool, with a roadmap toward automated literature reviews, legal and educational use cases, and deeper integration with reference managers and scholarly databases such as Crossref, PubMed, arXiv, and ORCID.