PolitScanner

Abstract

Swiss politicians lie. And they mostly get away with it. "One reason for this is that fact-checks, which can only be carried out retrospectively, are surprisingly ineffective. Listeners still remember the false information. The correction is forgotten." โ€” Philipp Gerlach. This technical report provides a comprehensive overview of the artificial intelligence components of the PolitScanner project. It aims to automatically detect false narratives and fake news in the speeches of Swiss politicians while avoiding the inaccuracies inherent in Large Language Models.

The training code can be found on GitHub.

This is an entry for the Swiss AI Challenge 2025. More information can be found at www.ki-challenge.ch.

Table of Contents

  1. Abstract
  2. Paper
  3. Installation
  4. Usage
  5. License
  6. Citation

Paper

Read the full paper here.

Installation

Note: inference only

This installation guide is for Nobara Linux. Other distributions should work as well.

For the full installation guide, see the development readme.

Increase memlock

Add (or update) the following lines to /etc/security/limits.conf:

* soft memlock 50331648
* hard memlock 50331648

Git

Install git:

sudo dnf install git

Clone the PolitScanner repository:

git clone https://huggingface.co/lenamerkli/PolitScanner
cd PolitScanner

Python

Install Python version 3.12.10 with the following command:

sudo dnf install python3.12-0:3.12.10-1.fc41.x86_64

Install the Python virtual environment package:

sudo dnf install python3-virtualenv

Create the virtual environment:

./create_venv.sh

Activate the virtual environment:

source .venv/bin/activate

llama.cpp

If llama.cpp is not installed, check the development readme for instructions.

Download models

Run the downloader:

python3 download_ggufs.py

Move the PolitScanner model:

mv ./Qwen3-1.7B-PolitScanner-Q5_K_S.gguf /opt/llms/Qwen3-1.7B-PolitScanner-Q5_K_S.gguf

Usage

Copy the political speech (preferably in swiss high german) to the input.txt file.

Run the program:

python3 main.py

The output will be written to the output.txt file.

License

MIT License

Citation

bibtex:

@misc{merkli2025politscanner,
    title = {PolitScanner: Automatic Detection of common Incorrect Statements in Speeches of Swiss Politicians},
    author = {Lena Merkli},
    year = {2025},
    month = {07},
    url = {https://huggingface.co/lenamerkli/PolitScanner}
}

biblatex:

@online{merkli2025politscanner,
    title = {PolitScanner: Automatic Detection of common Incorrect Statements in Speeches of Swiss Politicians},
    author = {Lena Merkli},
    year = {2025},
    month = {07},
    url = {https://huggingface.co/lenamerkli/PolitScanner}
}
Downloads last month
2
GGUF
Model size
2B params
Architecture
qwen3
Hardware compatibility
Log In to view the estimation

5-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for lenamerkli/PolitScanner

Finetuned
Qwen/Qwen3-1.7B
Finetuned
(115)
this model