Haystack v1.1.0 adds model distillation, isolated pipeline eval, RCIReader for TableQA, ParsrConverter, and nDCG metrics.
$ git clone --branch v1.1.0 https://github.com/deepset-ai/haystack.git # already have the repo? check out this version: $ git checkout v1.1.0
# Step 1: augment training data python augment_squad.py --squad_path squad2.json --output_path augmented_squad2.json --multiplication_factor 20 # Step 2: distil intermediate layers student.distil_intermediate_layers_from(teacher, data_dir="dataset", train_filename="augmented_squad2.json") # Step 3: distil prediction layer student.distil_prediction_layer_from(teacher, data_dir="dataset", train_filename="squad2.json")
eval_result = pipeline.eval(labels=eval_labels, add_isolated_node_eval=True) pipeline.print_eval_report(eval_result)
from haystack.nodes import RCIReader
reader = RCIReader(
row_model_name_or_path="michaelrglass/albert-base-rci-wikisql-row",
column_model_name_or_path="michaelrglass/albert-base-rci-wikisql-col"
) - ›Adds student.distil_intermediate_layers_from(teacher, data_dir=..., train_filename=...) and student.distil_prediction_layer_from(teacher, data_dir=..., train_filename=...) methods to compress large reader models (teacher) into smaller models (student) via TinyBERT-style distillation, with a companion
augment_squad.py --squad_path <your dataset> --output_path <output> --multiplication_factor 20data-augmentation script. - ›Adds
add_isolated_node_eval=Trueparameter to pipeline.eval() and pipeline.print_eval_report() to expose per-node upper-bound metrics alongside integrated metrics, enabling bottleneck identification in pipelines such asExtractiveQAPipeline. - ›Adds nDCG to pipeline.eval()'s document metrics.
- ›Adds RCIReader(row_model_name_or_path=..., column_model_name_or_path=...) for TableQA using Row-Column-Intersection models, supporting larger tables and returning meaningful confidence scores unlike
TableReader. - ›Adds
ParsrConverter(based on the open-source axa-group Parsr tool) for extracting text and tables from PDF and DOCX files in a format directly usable for TableQA.
+4 moreshow less
- ›Extends
TranslationWrapperto work with QA Generation pipelines. - ›Enables batch mode for SAS cross encoders.
- ›Adds support for custom headers per request in pipeline when talking to DocumentStores.
- ›Raises an exception if Elasticsearch
search_fieldshave a wrong datatype, surfacing misconfiguration early.
- !Custom id hashing on DocumentStore level has changed; existing document IDs may differ after upgrade.
- !Proper foreign keys are now implemented in
MetaDocumentORMandMetaLabelORM, which may require a database migration when using PostgreSQL.