Release notes for NLP API 2.27

Contents

Summary

Added

  • NLP API admin UI is now included for Azure deployments and for on-premises customers (e.g. VMWare deployments).
  • NLP API admin UI allows CSV download of the audit log for billing.
  • Persistent storage for identity and access management database.
  • Section parsing improvements for better compatibility with the Medcin ontology.
  • Added month names to date parsing.
  • Added poss as uncertainty trigger.
  • Added new Radiology section headings.
  • Added new qualifiers.

Changed

  • Negation finding improvement for favor ... over, not detected, no ... change, and no ... is negation cases.
  • Annotation updates for SNOMED, Medcin and RxNorm ontologies.
  • Significant improvement in coverage for the known_ambiguity entity attribute.
  • Improved handling of CCD section headings.
  • New data cleaning and sentence detection module.
  • Removed man and woman as experiencer triggers.
  • Fix bug in measurement unit spans when there is header or footer deletion in some Radiology report types.

Fixed

  • Bug fix for a small number of invalid concept descriptions that were being reported by emtellipro.
  • Fix false positive for 2C/3C/4C (number of chambers) in ejection fraction measurement relations.
  • Fix for matching case sensitive entities.
  • Fixed some issues with Past Medical History and Physical Exam section headings in section parsing.
  • Fix false positive for Calcium as subject in measurement relation.
  • Fix bug where two letter acronyms with periods were not detected due to tokenization.

Python SDK updates

The new NLP API Python SDK is version 5.17.1. Refer to the changelog for the Python SDK for a full explanation of the updates made since the last public release which was version 5.14.1 released with the NLP API v2.26. You will need to use version 5.7.0 of the Python SDK or later to send requests to the NLP API v2.27.

Added

  • The database client’s process command now accepts a --max-save-shard-size which specifies the number of reports to store to the database at once; this is ideally used for lowering the default value from 50, since large numbers can cause database errors.
  • You can now press CTRL-C when the database client is running and it will finish saving to the database what it has so far, and will exit cleanly. Pressing CTRL-C a second time will cause it to exit immediately.
  • Support for key-pair authentication for Snowflake has been added to the database client. All commands now take --snowflake-private-key-path as an option alongside --database which is the path to the private key used for the connecting to Snowflake. If using this option, omit the password in the connection URL. To be consistent with SnowSQL, the passphrase for this key file can be passed using SNOWFLAKE_PRIVATE_KEY_PASSPHRASE or SNOWSQL_PRIVATE_KEY_PASSPHRASE in the environment, or if those environment variables are not set, the client will prompt for the passphrase if necessary. Both encrypted and unencrypted key files are supported.
  • The Python database client now has a plugin architecture based on signals.
  • Improved error handling when running create-db on an existing database, and checking whether the database schema version stored in the alembic_version table has been accidentally deleted.
  • If the alembic_version table has been accidentally cleared, the create-db command will now allow the user to re-insert the database schema version in that table.
  • The simple client now has a cancel command that allows cancelling one or more tasks. See emtellipro-client cancel --help for available options.
  • The simple client will now print the last unfinished task ID when it receives a SIGINT (e.g. from CTRL-C) while a job is in progress

Changed

  • The database client is now multi-threaded, so it can read files, submit them for processing, and store results to the database in parallel.
  • The database client’s --max-submit-shard-size default is now 100, to avoid having the database thread waiting too long for results.

Fixed

  • There was a bug introduced in 5.17.0 when exporting to CSV which caused a crash; this has now been fixed.
  • The --features option was not parsed properly in 5.17.0; this has now been fixed.
  • There was a memory leak in the SDK which has now been fixed, so running the simple client or database client will now use a stable amount of memory.