Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 3 additions & 5 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -273,17 +273,15 @@ change the code to also change relevant comments and docstrings. This type of do
developers, but it can be handy for users at times. You can browse it on the dedicated section in the
[documentation website](https://docs.haystack.deepset.ai/reference/integrations-chroma).

We use `pydoc-markdown` to convert docstrings into properly formatted Markdown files, and while the CI takes care of
generating and publishing the updated documentation at every merge on the `main` branch, you can generate the docs
We use [`haystack-pydoc-tools`](https://github.com/deepset-ai/haystack-pydoc-tools) to convert docstrings into properly formatted Markdown files, and while the CI takes care of
generating and publishing the updated documentation once a new version is released, you can generate the docs
locally using Hatch. From an integration folder:

```console
$ hatch run docs
```

If you see a warning referring to a missing `README_API_KEY` env var, that's expected.

If you want to customise the conversion process, the `pydoc-markdown` config files are stored in a `pydoc/` folder
If you want to customise the conversion process, the `haystack-pydoc-tools` config files are stored in a `pydoc/` folder
for each integration.

#### Documentation pages
Expand Down
29 changes: 7 additions & 22 deletions integrations/aimlapi/pydoc/config_docusaurus.yml
Original file line number Diff line number Diff line change
@@ -1,28 +1,13 @@
loaders:
- ignore_when_discovered:
- __init__
modules:
- haystack_integrations.components.generators.aimlapi.chat.chat_generator
search_path:
- ../src
type: haystack_pydoc_tools.loaders.CustomPythonLoader
- modules:
- haystack_integrations.components.generators.aimlapi.chat.chat_generator
search_path: [../src]
processors:
- do_not_filter_modules: false
documented_only: true
expression: null
skip_empty_modules: true
type: filter
- type: smart
- type: crossref
- type: filter
documented_only: true
skip_empty_modules: true
renderer:
description: AIMLAPI integration for Haystack
id: integrations-aimlapi
markdown:
add_member_class_prefix: false
add_method_class_prefix: true
classdef_code_block: false
descriptive_class_title: false
descriptive_module_title: true
filename: aimlapi.md
filename: aimlapi.md
title: AIMLAPI
type: haystack_pydoc_tools.renderers.DocusaurusRenderer
2 changes: 1 addition & 1 deletion integrations/aimlapi/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ git_describe_command = 'git describe --tags --match="integrations/aimlapi-v[0-9]
installer = "uv"
dependencies = ["haystack-pydoc-tools", "ruff"]
[tool.hatch.envs.default.scripts]
docs = ["pydoc-markdown pydoc/config_docusaurus.yml"]
docs = ["haystack-pydoc pydoc/config_docusaurus.yml"]
fmt = "ruff check --fix {args}; ruff format {args}"
fmt-check = "ruff check {args} && ruff format --check {args}"

Expand Down
53 changes: 18 additions & 35 deletions integrations/amazon_bedrock/pydoc/config_docusaurus.yml
Original file line number Diff line number Diff line change
@@ -1,41 +1,24 @@
loaders:
- ignore_when_discovered:
- __init__
modules:
- haystack_integrations.common.amazon_bedrock.errors
- haystack_integrations.components.embedders.amazon_bedrock.document_embedder
- haystack_integrations.components.embedders.amazon_bedrock.text_embedder
- haystack_integrations.components.embedders.amazon_bedrock.document_image_embedder
- haystack_integrations.components.generators.amazon_bedrock.generator
- haystack_integrations.components.generators.amazon_bedrock.adapters
- haystack_integrations.common.amazon_bedrock.errors
- haystack_integrations.components.generators.amazon_bedrock.chat.chat_generator
- haystack_integrations.components.rankers.amazon_bedrock.ranker
- haystack_integrations.components.downloaders.s3.s3_downloader
- haystack_integrations.common.s3.utils
- haystack_integrations.common.s3.errors
search_path:
- ../src
type: haystack_pydoc_tools.loaders.CustomPythonLoader
- modules:
- haystack_integrations.common.amazon_bedrock.errors
- haystack_integrations.components.embedders.amazon_bedrock.document_embedder
- haystack_integrations.components.embedders.amazon_bedrock.text_embedder
- haystack_integrations.components.embedders.amazon_bedrock.document_image_embedder
- haystack_integrations.components.generators.amazon_bedrock.generator
- haystack_integrations.components.generators.amazon_bedrock.adapters
- haystack_integrations.common.amazon_bedrock.errors
- haystack_integrations.components.generators.amazon_bedrock.chat.chat_generator
- haystack_integrations.components.rankers.amazon_bedrock.ranker
- haystack_integrations.components.downloaders.s3.s3_downloader
- haystack_integrations.common.s3.utils
- haystack_integrations.common.s3.errors
search_path: [../src]
processors:
- do_not_filter_modules: false
documented_only: true
expression: null
skip_empty_modules: true
type: filter
- expression: name not in ['BedrockRanker']
type: filter
- type: smart
- type: crossref
- type: filter
documented_only: true
skip_empty_modules: true
renderer:
description: Amazon Bedrock integration for Haystack
id: integrations-amazon-bedrock
markdown:
add_member_class_prefix: false
add_method_class_prefix: true
classdef_code_block: false
descriptive_class_title: false
descriptive_module_title: true
filename: amazon_bedrock.md
filename: amazon_bedrock.md
title: Amazon Bedrock
type: haystack_pydoc_tools.renderers.DocusaurusRenderer
2 changes: 1 addition & 1 deletion integrations/amazon_bedrock/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ installer = "uv"
dependencies = ["haystack-pydoc-tools", "ruff"]

[tool.hatch.envs.default.scripts]
docs = ["pydoc-markdown pydoc/config_docusaurus.yml"]
docs = ["haystack-pydoc pydoc/config_docusaurus.yml"]
fmt = "ruff check --fix {args}; ruff format {args}"
fmt-check = "ruff check {args} && ruff format --check {args}"

Expand Down
29 changes: 7 additions & 22 deletions integrations/amazon_sagemaker/pydoc/config_docusaurus.yml
Original file line number Diff line number Diff line change
@@ -1,28 +1,13 @@
loaders:
- ignore_when_discovered:
- __init__
modules:
- haystack_integrations.components.generators.amazon_sagemaker.sagemaker
search_path:
- ../src
type: haystack_pydoc_tools.loaders.CustomPythonLoader
- modules:
- haystack_integrations.components.generators.amazon_sagemaker.sagemaker
search_path: [../src]
processors:
- do_not_filter_modules: false
documented_only: true
expression: null
skip_empty_modules: true
type: filter
- type: smart
- type: crossref
- type: filter
documented_only: true
skip_empty_modules: true
renderer:
description: Amazon Sagemaker integration for Haystack
id: integrations-amazon-sagemaker
markdown:
add_member_class_prefix: false
add_method_class_prefix: true
classdef_code_block: false
descriptive_class_title: false
descriptive_module_title: true
filename: amazon_sagemaker.md
filename: amazon_sagemaker.md
title: Amazon Sagemaker
type: haystack_pydoc_tools.renderers.DocusaurusRenderer
2 changes: 1 addition & 1 deletion integrations/amazon_sagemaker/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ git_describe_command = 'git describe --tags --match="integrations/amazon_sagemak
installer = "uv"
dependencies = ["haystack-pydoc-tools", "ruff"]
[tool.hatch.envs.default.scripts]
docs = ["pydoc-markdown pydoc/config_docusaurus.yml"]
docs = ["haystack-pydoc pydoc/config_docusaurus.yml"]
fmt = "ruff check --fix {args}; ruff format {args}"
fmt-check = "ruff check {args} && ruff format --check {args}"

Expand Down
32 changes: 9 additions & 23 deletions integrations/anthropic/pydoc/config_docusaurus.yml
Original file line number Diff line number Diff line change
@@ -1,29 +1,15 @@
loaders:
- ignore_when_discovered:
- __init__
modules:
- haystack_integrations.components.generators.anthropic.generator
- haystack_integrations.components.generators.anthropic.chat.chat_generator
- haystack_integrations.components.generators.anthropic.chat.vertex_chat_generator
search_path:
- ../src
type: haystack_pydoc_tools.loaders.CustomPythonLoader
- modules:
- haystack_integrations.components.generators.anthropic.generator
- haystack_integrations.components.generators.anthropic.chat.chat_generator
- haystack_integrations.components.generators.anthropic.chat.vertex_chat_generator
search_path: [../src]
processors:
- do_not_filter_modules: false
documented_only: true
expression: null
skip_empty_modules: true
type: filter
- type: smart
- type: crossref
- type: filter
documented_only: true
skip_empty_modules: true
renderer:
description: Anthropic integration for Haystack
id: integrations-anthropic
markdown:
add_member_class_prefix: false
add_method_class_prefix: true
descriptive_class_title: false
descriptive_module_title: true
filename: anthropic.md
filename: anthropic.md
title: Anthropic
type: haystack_pydoc_tools.renderers.DocusaurusRenderer
2 changes: 1 addition & 1 deletion integrations/anthropic/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ installer = "uv"
dependencies = ["haystack-pydoc-tools", "ruff"]

[tool.hatch.envs.default.scripts]
docs = ["pydoc-markdown pydoc/config_docusaurus.yml"]
docs = ["haystack-pydoc pydoc/config_docusaurus.yml"]
fmt = "ruff check --fix {args}; ruff format {args}"
fmt-check = "ruff check {args} && ruff format --check {args}"

Expand Down
33 changes: 9 additions & 24 deletions integrations/astra/pydoc/config_docusaurus.yml
Original file line number Diff line number Diff line change
@@ -1,30 +1,15 @@
loaders:
- ignore_when_discovered:
- __init__
modules:
- haystack_integrations.components.retrievers.astra.retriever
- haystack_integrations.document_stores.astra.document_store
- haystack_integrations.document_stores.astra.errors
search_path:
- ../src
type: haystack_pydoc_tools.loaders.CustomPythonLoader
- modules:
- haystack_integrations.components.retrievers.astra.retriever
- haystack_integrations.document_stores.astra.document_store
- haystack_integrations.document_stores.astra.errors
search_path: [../src]
processors:
- do_not_filter_modules: false
documented_only: true
expression: null
skip_empty_modules: true
type: filter
- type: smart
- type: crossref
- type: filter
documented_only: true
skip_empty_modules: true
renderer:
description: Astra integration for Haystack
id: integrations-astra
markdown:
add_member_class_prefix: false
add_method_class_prefix: true
classdef_code_block: false
descriptive_class_title: false
descriptive_module_title: true
filename: astra.md
filename: astra.md
title: Astra
type: haystack_pydoc_tools.renderers.DocusaurusRenderer
2 changes: 1 addition & 1 deletion integrations/astra/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ git_describe_command = 'git describe --tags --match="integrations/astra-v[0-9]*"
installer = "uv"
dependencies = ["haystack-pydoc-tools", "ruff"]
[tool.hatch.envs.default.scripts]
docs = ["pydoc-markdown pydoc/config_docusaurus.yml"]
docs = ["haystack-pydoc pydoc/config_docusaurus.yml"]
fmt = "ruff check --fix {args}; ruff format {args}"
fmt-check = "ruff check {args} && ruff format --check {args}"

Expand Down
33 changes: 9 additions & 24 deletions integrations/azure_ai_search/pydoc/config_docusaurus.yml
Original file line number Diff line number Diff line change
@@ -1,30 +1,15 @@
loaders:
- ignore_when_discovered:
- __init__
modules:
- haystack_integrations.components.retrievers.azure_ai_search.embedding_retriever
- haystack_integrations.document_stores.azure_ai_search.document_store
- haystack_integrations.document_stores.azure_ai_search.filters
search_path:
- ../src
type: haystack_pydoc_tools.loaders.CustomPythonLoader
- modules:
- haystack_integrations.components.retrievers.azure_ai_search.embedding_retriever
- haystack_integrations.document_stores.azure_ai_search.document_store
- haystack_integrations.document_stores.azure_ai_search.filters
search_path: [../src]
processors:
- do_not_filter_modules: false
documented_only: true
expression: null
skip_empty_modules: true
type: filter
- type: smart
- type: crossref
- type: filter
documented_only: true
skip_empty_modules: true
renderer:
description: Azure AI Search integration for Haystack
id: integrations-azure_ai_search
markdown:
add_member_class_prefix: false
add_method_class_prefix: true
classdef_code_block: false
descriptive_class_title: false
descriptive_module_title: true
filename: azure_ai_search.md
filename: azure_ai_search.md
title: Azure AI Search
type: haystack_pydoc_tools.renderers.DocusaurusRenderer
2 changes: 1 addition & 1 deletion integrations/azure_ai_search/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ installer = "uv"
dependencies = ["haystack-pydoc-tools", "ruff"]

[tool.hatch.envs.default.scripts]
docs = ["pydoc-markdown pydoc/config_docusaurus.yml"]
docs = ["haystack-pydoc pydoc/config_docusaurus.yml"]
fmt = "ruff check --fix {args}; ruff format {args}"
fmt-check = "ruff check {args} && ruff format --check {args}"

Expand Down
29 changes: 7 additions & 22 deletions integrations/azure_doc_intelligence/pydoc/config_docusaurus.yml
Original file line number Diff line number Diff line change
@@ -1,28 +1,13 @@
loaders:
- ignore_when_discovered:
- __init__
modules:
- haystack_integrations.components.converters.azure_doc_intelligence.converter
search_path:
- ../src
type: haystack_pydoc_tools.loaders.CustomPythonLoader
- modules:
- haystack_integrations.components.converters.azure_doc_intelligence.converter
search_path: [../src]
processors:
- do_not_filter_modules: false
documented_only: true
expression: null
skip_empty_modules: true
type: filter
- type: smart
- type: crossref
- type: filter
documented_only: true
skip_empty_modules: true
renderer:
description: Azure Document Intelligence integration for Haystack
id: integrations-azure_doc_intelligence
markdown:
add_member_class_prefix: false
add_method_class_prefix: true
classdef_code_block: false
descriptive_class_title: false
descriptive_module_title: true
filename: azure_doc_intelligence.md
filename: azure_doc_intelligence.md
title: Azure Document Intelligence
type: haystack_pydoc_tools.renderers.DocusaurusRenderer
2 changes: 1 addition & 1 deletion integrations/azure_doc_intelligence/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ installer = "uv"
dependencies = ["haystack-pydoc-tools", "ruff"]

[tool.hatch.envs.default.scripts]
docs = ["pydoc-markdown pydoc/config_docusaurus.yml"]
docs = ["haystack-pydoc pydoc/config_docusaurus.yml"]
fmt = "ruff check --fix {args}; ruff format {args}"
fmt-check = "ruff check {args} && ruff format --check {args}"

Expand Down
Loading
Loading