3803 Commits

Author SHA1 Message Date
Tobias Wochinger
2a591280ab
feat: implement support for structured logging (#7126)
* feat: implement support for structured logging

* docs: add release notes

* style: add explanatory comment

* chore: test + import fixes

* tests: fix windows tests
2024-02-27 09:15:01 +01:00
Stefano Fiorucci
e0b692467b
TopPSampler docstrings (#7205)
* TopPSampler docstrings

* inline quote
2024-02-26 18:06:29 +01:00
Silvano Cerza
8838c02872
Fix snippets_tests.yml (#7208) 2024-02-26 18:04:43 +01:00
Julian Risch
22e9def2cd
chore: Remove deprecated GPTGenerator and GPTChatGenerator (#7125)
* remove deprecated GPTGenerator and GPTChatGenerator

* remove unused import
2024-02-26 16:06:26 +01:00
Tobias Wochinger
ba49905eff
ci: unify dependency management + hatch scripts (#7079)
* ci: unify dependency management + hatch scripts

* ci: migrate readme sync

* build: migrate snippets

* ci: pin hatch

* ci: make Python version more explicit + quote

* ci: add scripts with parameters to hatch

---------

Co-authored-by: Silvano Cerza <3314350+silvanocerza@users.noreply.github.com>
2024-02-26 15:40:10 +01:00
Silvano Cerza
d66b5358a1
Remove eval end to end tests (#7093) 2024-02-26 12:27:15 +01:00
Stefano Fiorucci
3b8af365e3
restore transparent background for Pipeline images (#7086) 2024-02-26 09:25:07 +01:00
Tobias Wochinger
79b32cd755
build: fix CVE-2022-40897 (#7080) 2024-02-23 16:58:39 +01:00
Vladimir Blagojevic
f5645a4454
Update API docs to include OutputAdapter, OpenAPIServiceConnector and OpenAPIServiceToFunctions (#7076) 2024-02-23 14:34:16 +01:00
Silvano Cerza
0a7dfc1b32
Revert "Add AnswerExactMatchEvaluator (#7050)" (#7075)
This reverts commit b4011af8e9bc4ae2f72e51db254bfda69e20b651.
2024-02-23 14:05:57 +01:00
Tobias Wochinger
41b93108c0
feat: allow content tracing (#7066)
* feat: implement content tracing capability

* feat: trace component input/output

* chore: extend type serialization to classes with `to_dict`

* docs: add option for content tracing

* style: remove unused import

* chore: add more tags

* style: ignore typing

* fix: fix tagging of types
2024-02-23 11:52:54 +01:00
Silvano Cerza
b4011af8e9
Add AnswerExactMatchEvaluator (#7050)
* Add AnswerExactMatchEvaluator

* Add release notes

* Fix linting

* Update docstrings
2024-02-23 10:37:18 +01:00
Tobias Wochinger
bc8a48cc3c
feat: datadog tracer (#7058)
* feat: implement datadog tracer

* feat: autoenable for ddtrace

* docs: add release notes

* ci: add missing test dependency

* chore: use forward references
2024-02-23 09:18:32 +01:00
Vladimir Blagojevic
08e97d874e
Export (de)serialize_callable and (de)serialize_type in haystack.utils (#7069)
* Export (de)serialize_callable and (de)serialize_type in haystack.utils

* Group imports where possible
2024-02-22 17:07:07 +01:00
Massimiliano Pippi
0507fce256
forward-declare opentelemetry (#7067) 2024-02-22 15:30:03 +01:00
Vladimir Blagojevic
49cad21a2e
chore: Adjust json_schema.py slightly (#7055)
* Slighly adjust json_schema.py

* Adjust test structures
2024-02-22 14:33:07 +01:00
Tobias Wochinger
6d0d373def
feat: opentelemetry tracer (#7052)
* feat: add opentelemetry tracer

* feat: implement auto enable for `OpenTelemetry`

* docs: add release notes

* style: fix linting

* tests: more test coverage

* refactor: fix old method call

* docs: fix duplicate `the`

Co-authored-by: Massimiliano Pippi <mpippi@gmail.com>

---------

Co-authored-by: Massimiliano Pippi <mpippi@gmail.com>
2024-02-22 14:30:58 +01:00
Vladimir Blagojevic
cb6389d7a2
feat: Improve OpenAPI integration (#7034)
* Simplify and improve OpenAPIServiceConnector and OpenAPIServiceToFunctions, add unit tests

* Add reno note

* Add flask test dependency

* Initial PR feedback - Julian

* Remove indirection - Silvano

* Remove flask end-to-end tests

* Remove unused import

* Add mixed body unit test

* Update unit test, mock properly
2024-02-22 14:03:50 +01:00
Tobias Wochinger
6e580e4430
feat: implement pipeline tracing (#7046)
* feat: implement pipeline tracing

* tests: improve test setup for spying tracer

* feat: implement util for type coercion

* fix: trace a after checking pipeline output

* docs: add release notes

* docs: drop unused imports

* refactor: simplify getting raw span

* refactor: implement `ProxyTracer`
2024-02-22 12:52:04 +01:00
Tobias Wochinger
d6ef2b55be
ci: only only skip tests if no code changes at all (#7061)
* ci: only only skip tests if no code  changes at all

* ci: introduce fake change to test flow

* ci: skip running entire workflow

* Revert "ci: introduce fake change to test flow"

This reverts commit 96eed5d65f0a96e90b5d5a390b1a04386a046dac.

* ci: add missing paths
2024-02-22 11:15:16 +01:00
ZanSara
62ab83a0a0
remove pydoc config (#7060) 2024-02-22 10:48:35 +01:00
ZanSara
34edaa1105
fix formatting (#7059) 2024-02-22 10:39:02 +01:00
ZanSara
088aa50d99
update version (#7057) v2.0.0-beta.8 2024-02-22 10:27:43 +01:00
dependabot[bot]
7f4d11c38e
chore(deps): bump fossas/fossa-action from 1.3.1 to 1.3.3 (#7019)
Bumps [fossas/fossa-action](https://github.com/fossas/fossa-action) from 1.3.1 to 1.3.3.
- [Release notes](https://github.com/fossas/fossa-action/releases)
- [Commits](https://github.com/fossas/fossa-action/compare/v1.3.1...v1.3.3)

---
updated-dependencies:
- dependency-name: fossas/fossa-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-22 10:01:15 +01:00
Silvano Cerza
8ca4bf405b
Remove all evaluator components (#7053) 2024-02-21 18:24:14 +01:00
Massimiliano Pippi
f3be576b5c
refact: remove the concept of TemplateSource from the public API (#7051)
* remove unused field

* hide the TemplateSource abstraction

* amend release notes

* revert
2024-02-21 12:02:04 +01:00
Massimiliano Pippi
f8a06b6cf2
chore: collect templates in a dedicated folder (#7048)
* collect templates in a dedicated folder

* run the tests if the templates change
2024-02-21 10:50:31 +01:00
Varun Mathur
b335b5d723
feat: Add Lost In The Middle Ranker (#6995)
* add lost in the middle ranker

* update

* add release notes

* update release notes

* fix mypy

* Update

* fix mypy

* fix mypy [union-attr] for content.split

* remove e2e tests and negative topk param

* remove query param, validate params

---------

Co-authored-by: Julian Risch <julian.risch@deepset.ai>
2024-02-20 19:55:41 +01:00
Ashwin Mathur
327c2d260d
feat: Add Mean Reciprocal Rank (MRR) metric to StatisticalEvaluator (#7042)
* Add MRR Metric

* Add release notes

* Update logic
2024-02-20 13:58:48 +01:00
Silvano Cerza
05af9c3439
test: Simplify OpenAPIServiceConnector run test (#7043)
* Simplify OpenAPIServiceConnector run test

* Fix linting
2024-02-20 11:54:51 +01:00
Stefano Fiorucci
925dfebba2
chore: add accelerate to lazy imports (#7040)
* add accelerate to lazy imports

* improve comment
2024-02-20 09:42:08 +01:00
Silvano Cerza
9215882779
Add Recall Multi Hit and Single Hit metric (#7038) 2024-02-19 18:00:39 +01:00
Stefano Fiorucci
5910b4adc9
fix: Pipeline templates with new devices mgmt (#7036)
* fix Pipeline templates with new devices mgmt

* Update haystack/templates/rag.yaml.jinja2

Co-authored-by: Silvano Cerza <3314350+silvanocerza@users.noreply.github.com>

* Update haystack/templates/indexing.yaml.jinja2

Co-authored-by: Silvano Cerza <3314350+silvanocerza@users.noreply.github.com>

* change to templates make tests run

---------

Co-authored-by: Silvano Cerza <3314350+silvanocerza@users.noreply.github.com>
2024-02-19 16:05:46 +01:00
Stefano Fiorucci
d00f171f8b
refactor!: Sentence Transformers Embedders - new devices mgmt (#7033)
* new device mgmt for Sentence Transformers embedders

* reno
2024-02-19 14:52:44 +01:00
Vladimir Blagojevic
cb01cb4207
feat: Add PipelineTemplate for ready made pipelines (#7001)
* Initial working version

* More experiments

* Use jinja2 tempplate extensions

* Remove for_type static method

* Add ternary filter, with_kwargs

* Add indexing pipeline

* Rename with_kwargs -> with_parameters, allow cummulative invocation

* Remove ternary filter, use another approach to conditionals in default component configuration

* Massi feedback, add pydocs

* PipelineTemplateBuilder -> PipelineTemplate

* Add unit tests

* Add reno note

* Fix pylint, mypy

* PR review - Madeesh

* Add list_variables

* PR review feedback - Madeesh

* Update haystack/templates/pipelines.py

Co-authored-by: Madeesh Kannan <shadeMe@users.noreply.github.com>

* Add timeout, fix pylint

* Use full import path

* Update release note

* Fix failing windows test

* Update haystack/templates/source.py

Co-authored-by: Madeesh Kannan <shadeMe@users.noreply.github.com>

* Update haystack/templates/source.py

Co-authored-by: Madeesh Kannan <shadeMe@users.noreply.github.com>

* PR feedback Madeesh

* Fix pylint

---------

Co-authored-by: Madeesh Kannan <shadeMe@users.noreply.github.com>
2024-02-19 13:59:48 +01:00
Tuana Çelik
29acffca1d
Add the Contributions wanted project (#7035)
@anakin87 - here is the updated section on contributions
2024-02-19 13:05:22 +01:00
Silvano Cerza
f1a6b2a78a
feat: Add is_greedy argument in @component decorator (#7016)
* Add is_greedy argument in @component decorator

* Log warning if Component is greedy and non variadic
2024-02-19 12:43:40 +01:00
Silvano Cerza
5f97e08feb
feat: Reintroduce max_loops_allowed check in Pipeline.run() (#7010)
* Reintroduce max_loops_allowed check in Pipeline.run()

* Add release notes
2024-02-19 10:05:35 +01:00
Stefano Fiorucci
3cc8e54f41
ci: update "Sync docs with Readme" (#7029)
* try to update workflow

* try sync

* revert experimental commits
2024-02-18 14:42:45 +01:00
Vladimir Blagojevic
3ce6b9768e
feat: Add ByteStream to_string method (#7009) 2024-02-17 12:57:42 +01:00
Stefano Fiorucci
3f85a63468
fix: deepcopy the inputs of components (#6987)
* deepcopy inputs

* reno

* simplify test
2024-02-16 17:07:52 +01:00
Silvano Cerza
b645c16ff6
Fix multiplexer importing from wrong package (#7015) 2024-02-16 17:00:26 +01:00
Stefano Fiorucci
44b5ae291c
specify CPU device in warm_up test (#7014) 2024-02-16 13:01:57 +01:00
Madeesh Kannan
b552b0b37c
fix: Ensure Secret types are immutable (#6994) 2024-02-16 12:46:38 +01:00
Stefano Fiorucci
0aa788facc
refactor!: LocalWhisperTranscriber - new devices mgmt (#7008)
* wip

* whisper local transcriber: use new device mgmt

* better from_dict + test

* reno
2024-02-16 11:25:53 +01:00
Silvano Cerza
a7209f6413
Mark OpenAPIServiceConnector integration test as flaky (#7007) 2024-02-15 19:33:34 +01:00
Stefano Fiorucci
8a101701fa
fix docs config for evaluators (#7006) 2024-02-15 17:49:25 +01:00
Tuana Çelik
e2cee468fc
fix: Adding api_base_url to OpenAITextEmbeder self assignments (#7004)
* assigning api_base_url

This fix resolves issues with the MistralTextEmbedder integration

* adding base url to `to_dict` and the tests

* adding release note

* Update fix-openai-base-url-assignment-0570a494d88fe365.yaml

---------

Co-authored-by: Stefano Fiorucci <stefanofiorucci@gmail.com>
2024-02-15 17:35:28 +01:00
Silvano Cerza
6fe1d3b595
refactor: Clean eval components (#7005)
* Remove preprocess.py

* Rename eval components to evaluators
2024-02-15 17:17:59 +01:00
Silvano Cerza
2b8a606cb8
refactor: Refactor StatisticalEvaluator (#6999)
* Refactor StatisticalEvaluator

* Update StatisticalEvaluator

* Rename StatisticalMetric.from_string to from_str and change internal logic

Co-authored-by: Madeesh Kannan <shadeMe@users.noreply.github.com>

* Fix tests

---------

Co-authored-by: Madeesh Kannan <shadeMe@users.noreply.github.com>
2024-02-15 16:47:35 +01:00