🙌 Local LLMs and custom generation parameters in evaluation
The new api_params init parameter added to LLM-based evaluators such as ContextRelevanceEvaluator and FaithfulnessEvaluator can be used to pass in supported OpenAIGenerator parameters, allowing for custom generation parameters (via generation_kwargs) and local LLM support (via api_base_url).
📝 New Joiner
New AnswerJoiner component to combine multiple lists of Answers.
⬆️ Upgrade Notes
The ContextRelevanceEvaluator now returns a list of relevant sentences for each context, instead of all the sentences in a context. Also, a score of 1 is now returned if a relevant sentence is found, and 0 otherwise.
Removed the deprecated DynamicPromptBuilder and DynamicChatPromptBuilder components. Use PromptBuilder and ChatPromptBuilder instead.
OutputAdapter and ConditionalRouter can't return users inputs anymore.
Multiplexer is removed and users should switch to BranchJoiner instead.
Removed deprecated init parameters extractor_type and try_others from HTMLToDocument.
SentenceWindowRetrieval component has been renamed to SenetenceWindowRetriever.
The serialize_callback_handler and deserialize_callback_handler utility functions have been removed. Use serialize_callable and deserialize_callable instead. For more information on serialize_callable and deserialize_callable, see the API reference: https://docs.haystack.deepset.ai/reference/utils-api#module-callable_serialization
🚀 New Features
LLM based evaluators can pass in supported OpenAIGenerator parameters via api_params. This allows for custom generation_kwargs, changing the api_base_url (for local evaluation), and all other supported parameters as described in the OpenAIGenerator docs.
Introduced a new AnswerJoiner component that allows joining multiple lists of Answers into a single list using the Concatenate join mode.
Add truncate_dim parameter to Sentence Transformers Embedders, which allows truncating embeddings. Especially useful for models trained with Matryoshka Representation Learning.
Add precision parameter to Sentence Transformers Embedders, which allows quantized embeddings. Especially useful for reducing the size of the embeddings of a corpus for semantic search, among other tasks.
⚡️ Enhancement Notes
Adds model_kwargs and tokenizer_kwargs to the components TransformersSimilarityRanker, SentenceTransformersDocumentEmbedder, SentenceTransformersTextEmbedder. This allows passing things like model_max_length or torch_dtype for better management of model inference.
Added unicode_normalization parameter to the DocumentCleaner, allowing to normalize the text to NFC, NFD, NFKC, or NFKD.
Added ascii_only parameter to the DocumentCleaner, transforming letters with diacritics to their ASCII equivalent and removing other non-ASCII characters.
Improved error messages for deserialization errors.
TikaDocumentConverter now returns page breaks ("f") in the output. This only works for PDF files.
Enhanced filter application logic to support merging of filters. It facilitates more precise retrieval filtering, allowing for both init and runtime complex filter combinations with logical operators. For more details see https://docs.haystack.deepset.ai/docs/metadata-filtering
The streaming_callback parameter can be passed to OpenAIGenerator and OpenAIChatGenerator during pipeline run. This prevents the need to recreate pipelines for streaming callbacks.
Add max_retries and timeout parameters to the AzureOpenAIChatGenerator initializations.
Document Python 3.11 and 3.12 support in project configuration.
Refactor DocumentJoiner to use enum pattern for the 'join_mode' parameter instead of bare string.
Add max_retries, timeout parameters to the AzureOpenAIDocumentEmbedder initialization.
Add max_retries and timeout parameters to the AzureOpenAITextEmbedder initializations.
Introduce an utility function to deserialize a generic Document Store from the init_parameters of a serialized component.
New "compact" option for formatter. If set, the formatter tries to produce
a more compact output by avoiding some line breaks (issue783).
Bug Fixes
The strip comments filter was a bit greedy and removed too much
whitespace (issue772).
Note: In some cases you might want to add strip_whitespace=True where you
previously used just strip_comments=True. strip_comments did some of the
work that strip_whitespace should do.
Fix error when splitting statements that contain multiple CASE clauses
within a BEGIN block (issue784).
Fix whitespace removal with nested expressions (issue782).
Fix parsing and formatting of ORDER clauses containing NULLS FIRST or
NULLS LAST (issue532).
Bumps the all group in /wren-ai-service with 25 updates:
0.109.2
0.112.1
0.30.1
0.30.6
2.3.1
2.4.0
1.30.1
1.41.0
3.5.0
4.1.2
4.66.4
4.66.5
0.5.0
0.5.1
22.5.0
25.13.0
3.10.3
3.10.7
1.69.0
1.73.2
3.10.2
3.10.4
0.0.6
0.0.7
2.35.0
2.43.3
0.2.1
0.3.1
8.2.0
8.3.2
3.7.1
3.8.0
4.1.0
5.0.0
1.37.0
1.37.1
4.0.0
4.0.2
0.1.3
0.2.0
70.0.0
72.2.0
2.28.0
2.31.3
0.13.0
0.13.2
0.21.68
1.0.6
2.32.2
2.32.3
Updates
fastapi
from 0.109.2 to 0.112.1Release notes
Sourced from fastapi's releases.
... (truncated)
Commits
4f937c0
🔖 Release version 0.112.194be8ff
📝 Update release notes285a54c
⬆ Bump pypa/gh-action-pypi-publish from 1.8.14 to 1.9.0 (#11727)b7c80cb
📝 Update release notes0d92b42
🔧 Add changelog URL topyproject.toml
, shows in PyPI (#11152)2f5ed4f
📝 Update release notes2c98017
👷 Do not sync labels as it overrides manually added labels (#12024)fc91078
📝 Update release notes5fd9ab9
⬆️ Allow Starlette 0.38.x, update the pin to>=0.37.2,<0.39.0
(#11876)84d69bb
📝 Update release notesUpdates
uvicorn
from 0.30.1 to 0.30.6Release notes
Sourced from uvicorn's releases.
Changelog
Sourced from uvicorn's changelog.
Commits
7dc027d
Version 0.30.6 (#2428)587a1cc
fix: upgrade is not websocket and dependencies are installed, should not warn...cee31a6
test(signal): add sleep to ensure shutdown completion (#2427)eba64ef
ci: timeout for test suite runs to 30 minutes (#2426)0f513d2
Remove signal testing order dependency (#2382)ff54b02
Version 0.30.5 (#2409)2f25107
Fix 0.30.4 issue with connection close header (#2408)8efa41c
Version 0.30.4 (#2403)b492349
Addpragma: full coverage
toProcess.is_alive
(#2402)ce999aa
close request connection if h11 sets client state as MUST_CLOSE (#2375)Updates
haystack-ai
from 2.3.1 to 2.4.0Release notes
Sourced from haystack-ai's releases.
... (truncated)
Commits
8dd610a
chore: update version for final release495bf55
chore: update version34e2412
Cherry-pick docstores deserialization refactoring to 2.4.x (#8227)40cb53f
Deprecate SentenceWindowRetrieval (#8206) (#8223)21c5073
feat: Implement apply_filter_policy and FilterPolicy.MERGE for the new filter...4c79847
addedprecision
parameter to sentence transformers embeddings (#8179)ec02817
fix: OutputAdapter from_dict with custom_filters None (#8173)a4eb88e
rm serialize callback handler (#8172)5851701
fix: DocumentCleaner: keep the \f in text (#8078)031b0bf
fix: ChatPromptBuilder from_dict if template is None (#8165)Updates
openai
from 1.30.1 to 1.41.0Release notes
Sourced from openai's releases.
... (truncated)
Changelog
Sourced from openai's changelog.
... (truncated)
Commits
798c6cb
release: 1.41.03bbb271
feat(client): add uploads.upload_file helperb143c16
release: 1.40.805f0132
chore(types): define FilePurpose enum (#1653)3bf03f2
release: 1.40.7cd8c3a3
chore(internal): use different 32bit detection method (#1652)c58a0a4
chore(docs): fix typo in example snippet64b8595
fix(cli/migrate): change grit binaries download source (#1649)40f4cdb
release: 1.40.63267735
chore: sync openapi url (#1646)Updates
qdrant-haystack
from 3.5.0 to 4.1.2Commits
5234542
fix:qdrant
- Fallback to default filter policy when deserializing retrieve...05a21f6
Update the changelog16b3849
fix:Chroma
- Fallback to default filter policy when deserializing retrieve...43ccd3c
Update the changelogbcdf33d
fix:Astra
- Fallback to default filter policy when deserializing retriever...a9da4ed
Update the changelogb23ab15
fix:OpenSearch
- Fallback to default filter policy when deserializing retr...20221ac
Update the changelog90255b4
Update the changelog140015b
Update README.md (#893)Updates
tqdm
from 4.66.4 to 4.66.5Release notes
Sourced from tqdm's releases.
Commits
951a2ba
Merge pull request #1595 from hroncok/py3.13-await-aclose2fbad6a
Avoid Python 3.13+ RuntimeWarning: coroutine method 'aclose' of 'acount' was ...0254345
Merge pull request #1594 from mgorny/py313-docstring43230f6
slight lint5ba6595
cli: Fix docstring processing with Python 3.13+448946a
Merge pull request #1602 from tqdm/devel46cd395
add py3.12 supportd8ac656
ncols: support FreeBSD4f66276
bump deps & linters54796cc
docs: bump versionsUpdates
sqlparse
from 0.5.0 to 0.5.1Changelog
Sourced from sqlparse's changelog.
Commits
2664c9e
Bump version.b126ba5
Fix tokenization of order keywords (fixes #532).0c4902f
Descend into subgroups when removing whitespace (fixes #782).a8de06e
Revert "Add regression test (#780)."b253bb1
Add regression test (#780).791e25d
Fix error when splitting statements that contain multiple CASE clauses within...073099d
Updatecompact
option to improve formatting3ea660e
Code cleanup.974617d
Add shortcut for running flake8 and pytest.bf74d8b
Add compact option to force a more compact formatting (fixes #783).Updates
sqlglot
from 22.5.0 to 25.13.0Changelog
Sourced from sqlglot's changelog.
... (truncated)
Commits
46496a6
Refactor(clickhouse)!: improve transpilation of nullable/non-nullable data ty...7eab09d
Add timestamp timestamptz generator mapping for CH (#3920)1d436d4
Refactor(clickhouse): transpile TRY_CAST(x AS T) to CAST(x AS Nullable(T)) (#...102f5d4
Fix(optimizer)!: infer set op types more accurately (#3918)c74a8fd
Fix(clickhouse): make try_cast toXXXOrNull() functions case-specific (#3917)7e578a2
docs: update API docs, CHANGELOG.md for v25.12.0 [skip ci]9a66903
Feat(clickhouse): add support for TryCast generation (#3913)e8e70f3
Fix(clickhouse)!: treat DATABASE kind as SCHEMA (and conversely) in exp.Creat...7965cac
Fix(clickhouse): wrap query in CTAS when COMMENT prop is present (#3911)0e8c7fc
docs: update API docs, CHANGELOG.md for v25.11.3 [skip ci]Updates
orjson
from 3.10.3 to 3.10.7Release notes
Sourced from orjson's releases.
Changelog
Sourced from orjson's changelog.
Commits
5b951e8
3.10.7d18f26c
sse2 stable implbd9dca5
cargo update, misc4c05bfa
Update benchmarks for 3.10.6c24e4ab
3.10.6c369ea4
str various refactor and perf9382058
xxh3_64()95c86e5
cargo update, build misc7b081e1
3.10.56b626c9
dict, list full implUpdates
sf-hamilton
from 1.69.0 to 1.73.2Release notes
Sourced from sf-hamilton's releases.