🏛️ KRAken - Stadt Bonn Ratsinfo
Kommunaler Recherche-Assistent für die Verarbeitung von Ratsinformationen der Stadt Bonn 🔍
📋 Beschreibung
KRAken ist ein Python-Projekt zur intelligenten Verarbeitung und Analyse von kommunalen Ratsinformationen aus der Stadt Bonn. Das Tool bietet eine vollständige Pipeline von der Datenextraktion über die KI-gestützte Analyse bis hin zur Bereitstellung über verschiedene APIs.
✨ Hauptfunktionen
- 📥 Download: Automatischer Abruf von Ratsdokumenten über die OParl-API
- 🔄 Konvertierung: Umwandlung von PDF-Dokumenten in maschinenlesbare Formate
- 🤖 KI-Analyse: Intelligente Klassifikation und Zusammenfassung mit LLMs
- 🔍 Vektorsuche: Semantische Suche in dokumentierten Inhalten
- 🌐 API-Server: FastAPI-basierte Schnittstelle für externe Anwendungen
- 📊 Datenexploration: Jupyter-Notebooks für interaktive Analysen
🚀 Installation
uv installieren
Zunächst muss uv installiert werden, da es in diesem Projekt verwendet wird.
Installationsanweisungen finden Sie in der uv Dokumentation.
Falls Sie bereits eine ältere Version von uv installiert haben, aktualisieren Sie mit uv self update.
# Abhängigkeiten installieren
uv install
# Entwicklungsabhängigkeiten installieren
uv sync --group dev
💻 Nutzung
📥 Daten herunterladen und verarbeiten
# Ratspapiere herunterladen (begrenzt für Tests)
uv run oparl download paper --data-path data/ --max-pages 1
# Heruntergeladene Dokumente konvertieren
uv run oparl convert paper --data-path data/ --all
# Einzelnes Dokument klassifizieren
uv run oparl classify --data-path data/pfad/zum/dokument.md
🏛️ Sitzungsinformationen abrufen
Das meeting get Kommando ermöglicht den schnellen Zugriff auf detaillierte Informationen zu Ratssitzungen. Es eignet sich besonders für:
- 📋 Sitzungsübersicht: Schnelle Orientierung über Termine, Status und Tagesordnung
- 🔍 Themenfindung: Identifikation relevanter Beratungsgegenstände
- 📄 Dokumentenzugriff: Automatischer Download von Einladungen und Protokollen
- 👥 Teilnehmeranalyse: Überblick über beteiligte Personen und ihre Rollen
- 🔗 Vernetzung: Verknüpfung zu zugehörigen Drucksachen und Anträgen
# Kompakte Übersicht (Standard) - zeigt nur wichtige Themen
uv run oparl meeting get --data-path meetings-test --meeting-id 2004507
# Mit Teilnehmer-Liste
uv run oparl meeting get --data-path meetings-test --meeting-id 2004507 --show-participants
# Vollständige Details aller Tagesordnungspunkte
uv run oparl meeting get --data-path meetings-test --meeting-id 2004507 --detailed
# Ohne automatischen Download von Dokumenten
uv run oparl meeting get --data-path meetings-test --meeting-id 2004507 --no-download-files
🔧 Filteroptionen
Die Filter können mit uv run oparl filter verwendet werden:
# Bestimmte Attribute aus analysis.json-Dateien extrahieren
uv run oparl filter analysis --data-path data-100-haiku --attributes summary tags
Die Attribute title und date sind immer in der Ausgabe enthalten.
🌐 Server starten
MCP Server (Model Context Protocol)
uv run fastmcp run src/stadt_bonn_oparl/mcp/server.py --transport sse
FastAPI Server
uv run fastapi run src/stadt_bonn_oparl/api/server.py --port 8000
🔍 Topic Scout testen
uv run scripts/test_topic_scout.py
🧪 Testing und Code-Qualität
# Tests ausführen
uv run pytest
# Tests mit Coverage
uv run pytest --cov
# Linting
uv run ruff check
# Code formatieren
uv run ruff format
# Typenprüfung
uv run mypy src/
Datenexploration 📊
Im Notebook explore analysis finden Sie eine erste Analyse der Daten. Für eine umfassendere Datenexploration können Sie auch das Dataset auf Kaggle nutzen: Stadt Bonn Allris Partial. Hier werden verschiedene Aspekte der Daten untersucht, um ein besseres Verständnis für die Struktur und den Inhalt der Ratsinformationen zu gewinnen.
Rechtliches
Die Daten stammen von der Stadt Bonn und unterliegen den jeweiligen Lizenzbedingungen. Bitte beachten Sie die Lizenzbedingungen, bevor Sie die Daten verwenden oder weitergeben. Die Dateien in diesem Repository unterliegen der GPL-3.0-Lizenz. Weitere Informationen finden Sie in der Datei LICENSE.
Dieses Projekt fördert transparente, nachvollziehbare und partizipative Konsensbildung. Für Fragen oder Beiträge bitte die verlinkten Dokumente als Ausgangspunkt nutzen.
Mach!Den!Staat! ❤️ Open Source AI
Release files for stadt-bonn-oparl 1.8.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| stadt_bonn_oparl-1.8.5.tar.gz | 1.9 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| stadt_bonn_oparl-1.8.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.1 MB
Release files / stadt_bonn_oparl-1.8.5.tar.gz
| Download URL | stadt_bonn_oparl-1.8.5.tar.gz |
|---|---|
| Size | 1.9 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a445452e2c817fa2c9e3f4474d7b38419d41ec075386efbb5108fd6c50639d03
|
|
BLAKE2b-256 checksum How to use checksums |
0465e5e3fd51f7c993f17d62165fa709dc091d3cb3e5a067ca79da8c6436b080
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.8
|
Release files / stadt_bonn_oparl-1.8.5-py3-none-any.whl
| Download URL | stadt_bonn_oparl-1.8.5-py3-none-any.whl |
|---|---|
| Size | 165.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
35562bb0495e76e22ba0b9a36495e8b63e665e6444ffbe965ae23a2ec6be460c
|
|
BLAKE2b-256 checksum How to use checksums |
82cfb366e631a946731a5db90b33433bd07842662c3049f14b1fada2a0072753
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.8
|