Skip to content

Releases: CogStack/cogstack-nlp

MedCAT v2.7.0

01 Apr 15:49
7c12cae

Choose a tag to compare

🩺 MedCAT v2.7 Release Notes

This release focuses on usability improvements, pipeline observability, and several bug fixes across MedCAT components, including fixes for RelCAT and MetaCAT behaviour.

🚀 New Features & Enhancements

  • Pipeline Timing / Speed Metrics – Added options to report the time spent in different pipeline stages, including:
    • Tokenisation
    • NER
    • Entity linking
    • Individual addon components
      This helps users understand performance bottlenecks in their MedCAT pipelines.
  • Shorthand DeID Imports – Added a simplified import path for the DeID model:
    from medcat.deid import DeIdModel
    This replaces the longer internal import path previously required.
  • Australian Model Bundle Support – Added explicit support for AU model bundles, enabling easier building and distribution of Australian clinical models.

🐛 Bug Fixes

  • RelCAT Usability Fix – Fixed a typo that prevented RelCAT (relation extraction) from functioning correctly.
  • MetaCAT Shuffle Fix – Corrected an issue where shuffling could still occur even when shuffle was disabled.
  • RelCAT Typing Fix – Resolved typing issues affecting RelCAT components.
  • Supervised Training Improvements – Improved the way supervised training synchronises entities in documents with expected dataset annotations.
    This simplifies batched training workflows for some linker implementations (e.g. embedding linker) and prevents edge cases where batched annotations could remain unprocessed.

🧰 Other Improvements

  • Documentation Migration – MedCAT documentation has been migrated to MkDocs, improving maintainability and navigation.
  • Tutorial & Script Automation – Fixed issues with the script used to automatically update tutorial and script versions.

This release improves pipeline transparency, training robustness, and component usability, while continuing to stabilise the MedCAT v2 ecosystem.

What's Changed

  • issue(medcat): CU-869c5kge0 Fix the script for automated bumps of tutorials / scripts. by @mart-r in #343
  • feature(medcat): CU-869c7cxh7 Add shorthand import for deid by @mart-r in #346
  • issue(medcat): CU-869c87tt9 Fix typo in relcat. by @mart-r in #349
  • docs(medcat): Switch Medcat to Mkdocs by @alhendrickson in #361
  • feat(medcat):CU-869cgny1k Add pipe speed options by @mart-r in #369
  • feat(medcat): CU-869ccxgj7 Add AU model bundle support by @mart-r in #371
  • feat(medcat): CU-869cgny1k Add pipe tokenizer speed by @mart-r in #370
  • Pushing bug fix for shuffle by @shubham-s-agarwal in #381
  • bug(medcat): CU-869cqnmtk Fix RelCAT typing issue by @mart-r in #388
  • bug(medcat): CU-869ckx6dr Allow for better supervised training by @mart-r in #374

New Contributors

  • @github-actions[bot] made their first contribution in #342

Full Changelog: MedCAT/v2.6.0...medcat/v2.7.0

MedCAT v1.16.12 patch release

01 Apr 12:24

Choose a tag to compare

This patch release addresses a few minor issues:

  • Fix setuptools for MedCAT (#331)
  • Fix issue with missing pkg_resources (#336)
  • Fix data shuffle issue in MetaCAT test/train split (#381)

Full Changelog: medcat/v1.16.8...medcat/v1.16.12

medcat-service/v1.3.0

01 Apr 09:20
b43c22e

Choose a tag to compare

What's Changed

  • fix(medcat-service): Metrics API not registering when demo is enabled by @alhendrickson in #348
  • chore(medcat-service): CU-869ckmu2r bump medcat to 2.6.0 by @mart-r in #372
  • build(medcat-service): CU-869ckmuga automate medcat dependency bumps by @mart-r in #373

New Contributors

  • @github-actions[bot] made their first contribution in #342

Full Changelog: medcat-service/v1.2.0...medcat-service/v1.3.0

MedCAT-den v0.5.3

26 Feb 15:20
7f4641a

Choose a tag to compare

This is a MedCAT den patch release, mostly focusing on model card adaption for legacy / fake models (#352).

What's Changed

  • build(medcat-den): CU-869c7zhpv Avoid using newly introduced rules for ruff by @mart-r in #347
  • issue(medcat-den): CU-869c96xwg Improve model card adaption by @mart-r in #352

Full Changelog: medcat-den/v0.5.2...medcat-den/v0.5.3

medcat/v2.6.0

17 Feb 10:16
87ef606

Choose a tag to compare

🩺 MedCAT v2.6 Release Notes

This release focuses on plugin ecosystem maturity, distribution clean-up, and improved usability around plugins and scripts, alongside a small number of bug fixes and documentation updates.

🚀 New Features & Enhancements

  • Plugin Catalogue & Auto-Installation – Introduced a plugin catalogue that defines known plugins and how they are distributed.
    MedCAT can now automatically install missing plugins via:
python -m medcat install-plugins <plugin_name>

This significantly simplifies setup when loading models that depend on external plugins.

  • Missing Plugin Download Support – When loading a model that requires plugins not currently installed, MedCAT can now offer a command for the user to use to download / install them.
  • Embedding Linker as a Standalone Plugin – The embedding-based linker has been extracted from the core library and released as a separate PyPI project.
    This reduces core dependencies and aligns with the new plugin-first architecture.
  • GLiNER Plugin Public Release – The GLiNER-based NER implementation has been migrated into a publicly available standalone plugin and added to the plugin catalogue.

⚠️ Breaking / Behavioural Changes

  • Embedding Linker & GLiNER Removed from Core
    Both the embedding linker and GLiNER are no longer shipped as part of the MedCAT core package:
    • They must now be installed explicitly as plugins

This is technically a breaking change, but is unlikely to affect users as v2 adoption is still limited and this was an optional extra.

🐛 Bug Fixes

  • Embedding Linker Disambiguation – Fixed an issue in embedding linker disambiguation logic that could lead to incorrect candidate selection.
  • Improved Stability on Windows & macOS – Addressed platform-specific stability issues uncovered in CI.

🧰 Other Improvements

  • Documentation Updates
  • Added a dedicated section describing key differences between MedCAT v1 and v2
  • Documented script downloads via the MedCAT library
  • Added links to medcat-scripts in tutorials
  • Removed references to v1 models from the README
  • medcat-scripts UX Improvements – Improved messaging during script installation, including clearer dependency installation instructions.
  • Release & Packaging Cleanups
  • Migrated internal GLiNER implementation to a public project
  • Updated internal version references
  • CI & Stability Improvements – Additional fixes to ensure stable behaviour across platforms and environments.

This release continues the transition toward a modular, plugin-driven MedCAT v2 ecosystem, with clearer separation of concerns, leaner core dependencies, and better tooling for managing optional components.

What's Changed

  • CU-869bxf6ht: Add a paragraph on v2 differences in the docs by @mart-r in #310
  • feat(medcat): CU-869bydfx8 Allow downloading missing plugins by @mart-r in #311
  • bug(medcat): CU-869c0g9f7 Fix embedding linker disambiguation by @mart-r in #314
  • Update medcat version to 2.5.0 in requirements by @mart-r in #318
  • cocs(medcat-scripts): CU-869c25ux2 Document scripts download through medcat lib by @mart-r in #320
  • docs(medcat-tutorials): CU-869c25t6a Add link to medcat scripts by @mart-r in #319
  • CU-869c3t2kk: Remove v1 models from README by @mart-r in #330
  • chore(medcat-gliner): CU-869c3bvm0 Migrate gliner implementation to public by @mart-r in #328
  • issue(medcat): CU-869c43hgw Show requirement installation message upon scripts install by @mart-r in #332
  • chore(medcat-plugin-embedding-linker): CU-869c36ruk Separate embedding linker to its own project by @mart-r in #327
  • Fix medcat-gliner release in plugin catalog by @mart-r in #339
  • Issue(medcat):CU-869c570zv stability on windows and macos by @mart-r in #338

Full Changelog: medcat/v2.5.3...MedCAT/v2.6.0

medcat-trainer/v3.5.0 - Revamped admin pages

12 Feb 15:30
8d3cb6f

Choose a tag to compare

For the majority of users the Django admin page can now be ignored. The trainer project-admin page should now be used to setup, maintain and modify new and existing projects.

The django-admin is still accessible.

Further bug fixes / improvements for trainer in cloud based deployments.

What's Changed

Full Changelog: medcat-service/v1.2.0...medcat-trainer/v3.5.0

medcat-service/v1.2.0 FastAPI and Cloud improvements

09 Feb 13:15
4cd8f81

Choose a tag to compare

This release rewrites medcat service to run on FastAPI instead of Flask. It adds improvements useful for running in cloud environments and includes bug fixes and integration testing

Rewrite to FastAPI

  • Migrated to FastAPI framework instead of Flask
  • Added Pydantic for improved type safety
  • Added types to Health and Info APIs
  • Added input types for all APIs
  • Added root_path support using Pydantic settings

New Features

  • Observability with Prometheus metrics and OpenTelemetry tracing
  • Create a demo interface for MedCAT and AnonCAT using Gradio
  • Added Kubernetes liveness and readiness health check endpoints

What's Changed

  • feat(medcat-service): Create liveness and readiness APIs for use by K8s by @alhendrickson in #41
  • refactor(medcat-service): Add pydantic. Add types to Health and Info APIs by @alhendrickson in #51
  • CU-8699vq0he: refactor(medcat-service): add input types for APis by @alhendrickson in #56
  • CU-8699wvj3d refactor(medcat-service): Add FastAPI framework by @alhendrickson in #57
  • feat(medcat-service): Add root_path support using pydantic settings by @alhendrickson in #60
  • feat(medcat-service): Add Gradio UI to show a demo of the model by @alhendrickson in #59
  • build(medcat-service): Fix latest tag in docker getting set on a release by @alhendrickson in #63
  • CU-8699xagnz bug(medcat-service): Add test showing that meta_anns_filters in payload errors out by @alhendrickson in #58
  • bug(medcat-service): Fix DeID mode fails with PydanticSerializationError by @alhendrickson in #98
  • test(medcat-service): 869a17yed Create integration test for DeID Function by @alhendrickson in #100
  • bug(medcat-service): DeID bulk processing fix by @alhendrickson in #104
  • bug(medcat-service): Fix Gradio settings by @alhendrickson in #136
  • Medcat service rev1 by @vladd-bit in #137
  • Medcat service rev2 by @vladd-bit in #139
  • fix(medcat-service) - Fix access log format not being set using uvicorn worker by @alhendrickson in #199
  • fix(medcat-service): Add thread safety to medcat processor dependency by @alhendrickson in #200
  • feat(medcat-service): Add Gunicorn CLI args for max requests, jitter, and any other input from env by @alhendrickson in #201
  • build(medcat-service): CU-869b2zjay Clean runner to free up space for docker builds by @mart-r in #216
  • feat(medcat-service): Add optional metrics instrumentation with prometheus by @alhendrickson in #207
  • fix(medcat-service): Fix Prometheus metrics and add unit tests for it by @alhendrickson in #221
  • feat(medcat-service): Run MCP server for medcat using gradio by @alhendrickson in #253
  • feat(medcat-service): Enable Opentelemetry Tracing by @alhendrickson in #257
  • perf(medcat-service): CU-869a6r2uz Improve Deid performance by not calling get_entities twice by @alhendrickson in #258
  • feat(medcat-service): Medcat Demo and AnonCAT demo uplift in Gradio by @alhendrickson in #279
  • refactor(medcat-service): Demo app code improvements by @alhendrickson in #317

Full Changelog: MedCATservice/v1.1.1...medcat-service/v1.2.0

medcat-trainer/v3.4.2 - patch for remote model service timeouts

23 Jan 13:49
f937234

Choose a tag to compare

What's Changed

  • chore(medcat-trainer): update compose for latest patch release by @tomolopolis in #308
  • feat(medcat-trainer): configurable remote model service timeout by @tomolopolis in #309

Full Changelog: medcat-trainer/v3.4.1...medcat-trainer/v3.4.2

medcatrainer/v3.4.1 - patch release

21 Jan 17:17

Choose a tag to compare

What's Changed

  • fix(medcat-trainer): Postgres load_examples fails on unique constraint by @alhendrickson in #299
  • fix(medcat-trainer): Pass kwargs to ModelPack.save to stay consistent by @alhendrickson in #300
  • fix(medcat-trainer): Make VITE_ env vars mandatory only when VITE_USE_OIDC is set to true by @jocelyneholdbrook in #301
  • build(medcat-trainer): Improve dockerfile layer caching by @alhendrickson in #304
  • build(medcat-trainer): Consolidate github flows into one. Use standardised github actions for docker by @alhendrickson in #302

Full Changelog: medcat-trainer/v3.4.0...medcat-trainer/v3.4.1

MedCAT v1.16.8 patch release

20 Jan 11:12

Choose a tag to compare

This patch release delivers some RelCAT fixes from #297

Full Changelog: medcat/v1.16.7...medcat/v1.16.8