- Initial release of the pretrained models
- Beta version of the API
- Modification of assets URL
- Bug-fix dictionary use
- Fixed logo
- Fixed typo deepParse -> deepparse
- Fixed authors in the setup
- Added "contributing to"
- Added fix for comma problem (#56)
- Added content in Address Parser documentation for tags definition
- Fixed Pylint bug with PyTorch 1.6
- Fixed
pack_padded
CPU error with PyTorch's new release
- Added a verbose flag to trigger more messages during embedding loading
- Added a verbose flag in model/embeddings download
- Added FastText light model using pymagnitude-light
- Added fine-tuning API to allow fine-tuning of our models (retrain)
- Added a method to test models (test)
- Added metric, loss and dataset container to facilitate fine-tuning training
- Added an example of fine-tuning
- Added way to load retrain model when instantiation of AddressParser
- Fixed README
- Fixed error with experiment and verbosity as logging trigger on or off
- Improved documentation
- Added Libpostal time in the doc
- Documentation improvement
- Added new model evaluation to doc
- Release new models
- We have improved the loading of data during prediction. We now use a data loader.
- Updated the performance table of models with the data loader approach.
- Fixed missing import in the parser module.
- Bug fix of the
max_len
for the predictions
- Fixed a bug when using a batched address. Since we were sorting the address during the forward pass, the output prediction tags were not aligned with the supposed parsed address. We have removed the sorting, and now the results are more aligned with our research.
- Added a verbose flag to the training and test based on the init of the address parser.
- Breaking change Since SciPy 1.6 is released on Python
3.7+
, we don't support Python3.6
. - Added management for Windows where the FastText model cannot be pickled. We use the Gensim fasttext model on Windows, which takes more RAM.
- Added a method for dictionary conversion of parsed addresses for simpler
Pandas
integration. - Added examples for parsing addresses and how to convert them into a DataFrame.
- Fixed error with the download module.
- Added a verbose flag to the training and a test based on the init of the address parser.
- Added a feature to retrain our models with a prediction tags dictionary that is different from the default one.
- Added in-documentation code examples.
- Added code examples.
- Small improvement of model implementation.
- Added method to specify the format of address components of a
FormattedParsedAddress.
Formatting can specify the field separator, the field to be capitalized, and the field to be upper case.
- Added
__eq__
method toFormattedParsedAddress
. - Improved device management.
- Improved testing.
- Fixed typos in one of the file names.
- Added tools to compare addresses (tagged or not).
- Fixed some test errors.
- Fixed import error.
- Added Python 3.9
- Added feature to allow a more flexible way to retrain
- Added a feature to allow retraining of a new seq2seq architecture
- Fixed prediction tags bug when parsing with new tags after retraining
- Fixed address_comparer hint typing error
- Fixed some docs errors
- Retrain and test now have more default parameters
- Various small code and test improvements
- Added Attention mechanism models
- Fixed EOS bug
- Completed EOS bug fix
- Improved (slightly) data padding method code speed as per PyTorch list or array to the Tensor recommendation.
- Improved documentation for RuntimeError due to retraining FastText and BPEmb model in the same directory.
- Added error handling RuntimeError when retraining.
- Fixed the printing capture to raise the error with Poutyne as of version 1.8. We keep the previous approach for compatibility with the previous Poutyne version.
- Added a flag to disable or not use Tensorboard during retraining.
- Bug-fix reloading of retraining attention model (PR #110)
- Improve error handling
- Improve doc
- Improve error handling of empty data and whitespace-only data.
- Parsing now includes two validations on the data quality (not empty and not whitespace only)
- DataContainer now includes data quality test (not empty, not whitespace only, tags not empty, tags the same length as an address and data is a list of tuples)
- New CSVDatasetContainer
- DataContainer can now be used to predict using a flag.
- Add a CLI to parse addresses from the command line.
- Fixed errors in code examples
- Improved documentation of download_from_url
- Improve error management of retraining and test
- Fixed errors in data validation
- Improved documentation over data validation
- Bug-fix data slicing error with data containers
- Add an example of how to use a retrained model
- Improved CLI
- Fixed bug in CLI export dataset
- Improved the documentation of the CLI
- Hot-fix for missing dependency
- Fixed bug with poutyne version handling
- Added JSON output support
- Add logging output of parse CLI function
- Hot-fix Poutyne version handling
- Add freeze layer parameters to freeze layers during retraining
- Improve parsed address print
- Bug-fix #124: comma-separated list without whitespace in CSVDatasetContainer
- Add a report when addresses to parse and tags list len differ
- Add an example of how to fine-tune using our CSVDatasetContainer
- Improve data validation for data to parse
- Bug-fix Poutyne version handling that causes a print error when a version is 1.11 when retraining
- Add the option to create a named retrain the parsing model using, by default, the architecture setting or using the user-given name
- Hot-fix missing raise for DataError validation of address to parse when address is tuple
- Bug-fix handling of string column name for CSVDatasetContainer that raised ValueError
- Improve parse CLI documentation and fix errors in documentation stating JSON format is supported as input data
- Add batch_size to parse CLI
- Add minimum version to Gensim 4.0.0.
- Add a new CLI function, retrain, to retrain from the command line
- Improve doc
- Add
cache_dir
to the BPEmb embedding model and toAddressParser
to change the embeddings cache directory and models weights cache directory - Change the
saving_dir
argument ofdownload_fastext_embeddings
anddownload_fasttext_magnitude_embeddings
function tocache_dir
.saving_dir
is now deprecated and will be removed in version 0.8. - Add a new CLI function, test, to test from the command line
- Re-release version 0.7.5 into 0.7.6 due to manipulation error and change in PyPi (now delete does not delete release).
- Improve SEO
- Add cache_dir arg in all CLI functions
- Improve handling of HTTP errors in models version verification
- Improve doc
- Add a note for parsing data cleaning (i.e. lowercase, commas removal, and hyphen replacing).
- Add hyphen parsing cleaning step (with a bool flag to activate or not) to improve some country address parsing ( see issue 137).
- Add ListDatasetContainer for the Python list dataset.
- Refactored function
download_from_url
todownload_from_public_repository
. - Add error management when retraining a FastText-like model on Windows with several workers (
num_workers
) greater than 0. - Improve dev tooling
- Improve CI
- Improve code coverage and pylint
- Add Codacy
- Bug-fix retrain attention model naming parsing
- Improve error handling when not a DatasetContainer is used in retraining and testing API
- Add Zenodo DOI
- Add
save_model_weights
method toAddressParser
to save model weights (PyTorch state dictionary) - Improve CI
- Added verbose flag for the test to activate or deactivate the test verbosity (it overrides the AddressParser verbosity)
- Add Docker image
- Add
val_dataset
to retrain API to allow the use of a specific val dataset for training - Remove the deprecated
download_from_url
function - Remove the deprecated
dataset_container
argument - Fixed errors and docs
- Added the UK retrain example
- Hot-fix cli.download_model attention model bug
- Improve Deepparse server error handling and error output.
- Remove deprecated argument
saving_dir
indownload_fasttext_magnitude_embeddings
anddownload_fasttext_embeddings
functions. - Add offline argument to remove verification of the latest version.
- Bug-fix cache handling in the download model.
- Add the
download_models
CLI function. - Temporary hot-fix BPEmb SSL certificate error.
- Improve error handling.
- Bug-fix FastText error is not handled in the test API.
- Add a feature to allow new_prediction_tags to retrain CLI.
- Improve codebase.
- Fixed tags converter bug with the data processor.
- Add Python 3.11.
- Add pre-processor when parsing addresses.
- Add
pin_memory=True
when using a CUDA device to increase performance as suggested by Torch documentation. - Add
torch.no_grad()
context manager in__call__()
to increase performance. - Reduce memory swap between CPU and GPU by instantiating Tensor directly on the GPU device.
- Improve some warnings' clarity (i.e., category and message).
- Bug-fix MacOS multiprocessing. It was impossible to use in multiprocess since we were not testing whether Torch multiprocess was set properly. Now, we set it properly and raise a warning instead of an error.
- Drop Python 3.7 support since newer Python versions are faster and Torch 2.0 does not support Python 3.7.
- Improve error handling with wrong checkpoint loading in AddressParser retrain_path use.
- Add
torch.compile
integration to improve performance (Torch 1.x still supported) withmode="reduce-overhead"
as suggested in the documentation. It increases the performance by about 1/100.
- New models release with more meta-data.
- Add a feature to use an AddressParser from a URI.
- Add a feature to upload the trained model to a URI.
- Add an example of how to use URI for parsing from and uploading to.
- Improve error handling of
path_to_retrain_model
. - Bug-fix pre-processor error.
- Add verbose override and improve verbosity handling in retraining.
- Bug-fix the broken FastText installation using
fasttext-wheel
instead offasttext
( see here and here).
- Hot-fix wheel install (See issue 196).
- Starting now, we also include model weights release in the GitHub release.
- Add version to Seq2Seq and AddressParser.
- Add a Deepparse as an API using FastAPI.
- Add a Dockerfile and a
docker-compose.yml
to build a Docker container for the API. - Bug-fix the default pre-processors that did not all apply but only the last one.
- Fix and improve documentation.
- Remove fixed dependencies version.
- Fix app errors.
- Add data validation for 1) multiple consecutive whitespace and 2) newline.
- Fixes some errors in tests.
- Add an argument to the
DatasetContainer
interface to use a pre-processing data cleaning function before validation. - Hot-fix the issue with the BPEmb base URL download problem. See issue 221.
- Fix the NumPy version due to a major release with breaking changes.
- Fix the SciPy version due to breaking change with Gensim.
- Fix circular import in the API app.
- Fix deprecated
max_request_body_size
in Sentry.
- Fix Sentry version error in Docker Image.
- Bug-fix the call to the BPEmb class instead of the BPEmbBaseURLWrapperBugFix to fix the download URL in
download_models
.
- Update Gensim version in setup to allow for the installation of recent Scipy versions.