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 88595c869b chore: convert mindmodel from YAML to markdown and clean up 3 weeks ago
.github/workflows chore(deploy): rewrite ansible for motief on motief.sgeboers.nl, remove drone 1 month ago
.mindmodel chore: convert mindmodel from YAML to markdown and clean up 3 weeks ago
analysis refactor: make duckdb imports optional in analysis modules 3 weeks ago
ansible fix: add health check wait to ansible deploy 4 weeks ago
data Add debug st.info before st.plotly_chart to diagnose invisible chart 1 month ago
docs docs: update blog with coalition loss discovery 4 weeks 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 chore: commit remaining modified files from refactoring 4 weeks ago
reports/drift docs: add overtone shift analysis and insights 4 weeks ago
scripts fix: resolve SVD axis label alignment and score mismatch in tijdtraject view 3 weeks ago
similarity Refactor tests: replace sys.modules hacks with real DI + in-memory DB 1 month ago
src Add debug st.info before st.plotly_chart to diagnose invisible chart 1 month ago
tests test: add SVD axis alignment and label consistency tests 3 weeks ago
thoughts docs: add SVD axis label alignment fix design 3 weeks ago
tools Add debug st.info before st.plotly_chart to diagnose invisible chart 1 month ago
.gitignore chore: commit remaining modified files from refactoring 4 weeks 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
AGENTS.md docs: add AGENTS.md with docs/solutions reference and SVD label best practice 4 weeks ago
ARCHITECTURE.md chore: commit remaining modified files from refactoring 4 weeks 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: resolve SVD axis label alignment and score mismatch in tijdtraject view 3 weeks ago
explorer_helpers.py refactor(trajectory): fix code quality issues in centroid diagnostics 1 month ago
pyproject.toml feat: add motion semantic drift analysis script 4 weeks ago
requirements-dev.txt chore(deps): move pytest to dev-dependencies 1 month ago
streamlit_index.html Add debug st.info before st.plotly_chart to diagnose invisible chart 1 month ago
summarizer.py feat(pipeline): implement parliamentary embedding pipeline MVP 1 month ago
uv.lock feat: add motion semantic drift analysis script 4 weeks 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.