Haystack v1.4.0 adds MLflow eval tracking, FARMReader confidence filtering, Milvus2 vector+metadata queries, and BM25Retriever rename.
$ git clone --branch v1.4.0 https://github.com/deepset-ai/haystack.git # already have the repo? check out this version: $ git checkout v1.4.0
eval_result = Pipeline.execute_eval_run(
index_pipeline=index_pipeline,
query_pipeline=query_pipeline,
evaluation_set_labels=labels,
corpus_file_paths=file_paths,
corpus_file_metas=file_metas,
experiment_tracking_tool="mlflow",
experiment_tracking_uri="http://localhost:5000",
experiment_name="my-query-pipeline-experiment",
experiment_run_name="run_1",
pipeline_meta={"name": "my-pipeline-1"},
evaluation_set_meta={"name": "my-evalset"},
corpus_meta={"name": "my-corpus"},
add_isolated_node_eval=True,
reuse_index=False
) from haystack.nodes import FARMReader model = "deepset/roberta-base-squad2" reader = FARMReader(model, confidence_threshold=0.5)
- ›Adds
MLflowTrackingHeadand Pipeline.execute_eval_run() method with parametersexperiment_tracking_tool,experiment_tracking_uri,experiment_name,experiment_run_name,pipeline_meta,evaluation_set_meta,corpus_meta,add_isolated_node_eval, andreuse_indexto log evaluation metrics and pipeline artifacts to MLflow. - ›Adds
confidence_thresholdparameter to FARMReader (float between 0 and 1, disabled by default) to filter out low-confidence predictions at initialization time. - ›Adds
devicesparameter alongside existinguse_gpuin FARMReader for explicit device assignment. - ›Adds alias support in
ElasticsearchDocumentStorefor querying via index aliases. - ›Adds conjunctive query support in sparse retrieval.
+6 moreshow less
- ›Adds a flag to disable scaling scores to probabilities in retrieval.
- ›Introduces
Milvus2DocumentStore(superseding the now-deprecatedMilvus1DocumentStore) with support for filtering by scalar data types alongside vector similarity queries. - ›Renames
ElasticsearchRetrieverto BM25Retriever andElasticsearchFilterOnlyRetrievertoFilterRetriever; deprecated names remain functional until a future release. - ›Adds
EvaluationSetClientfor deepset Cloud to fetch evaluation sets. - ›Adds table linearization support in
EmbeddingRetrieverfor table inputs. - ›Adds file content-based extension detection (extracts extension based on file content rather than filename).
- !Return types of indexing pipeline nodes have changed.
- !
weaviate-clientis upgraded to3.3.3, which may affect existing Weaviate integrations. - !
TransformersReaderdefaults are now aligned with FARMReader, changing previous default behavior. - !Default encoding for
PDFToTextConverterchanged from Latin 1 toUTF-8. - !YAML files are now validated without loading nodes, changing pipeline validation behavior.