You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Sven Geboers be8887f6f8 Add --skip-details, --update-existing flags to download_past_year.py with tests 1 month ago
.github/workflows chore(deploy): rewrite ansible for motief on motief.sgeboers.nl, remove drone 1 month ago
.mindmodel feat(ansible-example): add @ansible/example package, tests, CI, publish & deploy workflows, docs and changelog 1 month ago
analysis Fix RNG re-seeding per party and vectorize bootstrap loop 1 month ago
ansible fix(ansible): add headless and CORS flags for reverse proxy 1 month ago
data feat: add axis classifier with party ideology reference data 1 month ago
docs docs: add motion-driven axis labeling implementation plan 1 month ago
migrations feat(similarity): add precomputed similarity cache, fix fusion N+1, add 429 retry 1 month ago
packages/@ansible/example feat(ansible-example): add @ansible/example package, tests, CI, publish & deploy workflows, docs and changelog 1 month ago
pages UI improvements + add axis orientation test 1 month ago
pipeline deploy to server 1 month ago
scripts Add --skip-details, --update-existing flags to download_past_year.py with tests 1 month ago
similarity Refactor tests: replace sys.modules hacks with real DI + in-memory DB 1 month ago
src feat(mindmodel): add report-only validator skeleton, types, and tests 1 month ago
tests Add --skip-details, --update-existing flags to download_past_year.py with tests 1 month ago
thoughts Remove stale ad-hoc JSON analysis files 1 month ago
tools feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago
.gitignore Add .worktrees/ to .gitignore 1 month ago
.pre-commit-config.yaml chore(format): add pre-commit and formatter configs 1 month ago
.python-version feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago
ARCHITECTURE.md feat(ansible-example): add @ansible/example package, tests, CI, publish & deploy workflows, docs and changelog 1 month ago
CODE_STYLE.md feat(ansible-example): add @ansible/example package, tests, CI, publish & deploy workflows, docs and changelog 1 month ago
Dockerfile feat: add StemAtlas Streamlit app, explorer, Docker deployment, blog charts 1 month ago
Home.py UI improvements + add axis orientation test 1 month ago
README.md feat(ansible-example): add @ansible/example package, tests, CI, publish & deploy workflows, docs and changelog 1 month ago
ai_provider.py feat: complete parliamentary embedding pipeline with full historical coverage 1 month ago
api_client.py feat: complete parliamentary embedding pipeline with full historical coverage 1 month ago
app.py feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago
config.py feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago
database.py fix: quiz seed from motions with actual individual MP votes 1 month ago
docker-compose.yml deploy to server 1 month ago
explorer.py Fix SVD_THEMES after self-review: PC2 label, indicatief markers, accuracy 1 month ago
main.py feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago
pyproject.toml UI improvements + add axis orientation test 1 month ago
requirements-dev.txt chore(deps): move pytest to dev-dependencies 1 month ago
scheduler.py feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago
scraper.py feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago
summarizer.py feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago
uv.lock UI improvements + add axis orientation test 1 month ago
verify.py feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago

README.md

stemwijzer

A small project that uses QWEN embeddings for semantic features. The codebase includes an example Ansible package under packages/@ansible/example and helper scripts for deployment.

Embeddings

  • This project uses QWEN embeddings (model: qwen/qwen3-embedding-4b) via OpenRouter-compatible APIs.
  • Preferred environment variable: OPENROUTER_API_KEY with a fallback to OPENAI_API_KEY.

Publishing and deploying the Ansible package

  • Package location: packages/@ansible/example — this contains the Ansible playbooks and packaging used by CI.
  • To publish the package (CI): create a git tag for the version and provide NPM_TOKEN as a secret to the CI runner so it can publish to npm.
  • To deploy the package (CI): set the following repository secrets in your CI pipeline:
    • DEPLOY_HOST (default: motief.sgeboers.nl)
    • DEPLOY_SSH_KEY (private key for the webapps user)
    • DEPLOY_USER (default: webapps)

Defaults

  • DEPLOY_HOST: motief.sgeboers.nl
  • DEPLOY_USER: webapps

See docs/deployment/ansible-package-deploy.md for more detailed deploy instructions and defaults.