Skip to content

feat: Google Drive Source #686

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 7 commits into
base: main
Choose a base branch
from
Draft

Conversation

nikpocuca
Copy link
Collaborator

@nikpocuca nikpocuca commented Jul 2, 2025

Additions

Adding in a google drive as a source, simply use the drive-id hash as a source identifier.

google-side requirements

  • requires google service account
  • google account json key
  • drive-id
  • api-enabled

google-side pip packages introduced.

  • google-api-python-client
  • google-auth
  • google-auth-httplib2

@nikpocuca nikpocuca changed the title Feature: Google Drive Source feat: Google Drive Source Jul 2, 2025
Copy link
Contributor

github-actions bot commented Jul 4, 2025

badge

Code Coverage Summary

Filename                                                                                                     Stmts    Miss  Cover    Missing
---------------------------------------------------------------------------------------------------------  -------  ------  -------  -------------------------------------------------------------------------------------------------------------
packages/ragbits-agents/src/ragbits/agents/__init__.py                                                           3       0  100.00%
packages/ragbits-agents/src/ragbits/agents/_main.py                                                            174       7  95.98%   103-104, 351-352, 395, 418-419
packages/ragbits-agents/src/ragbits/agents/exceptions.py                                                        23       3  86.96%   40-42
packages/ragbits-agents/src/ragbits/agents/types.py                                                             15       0  100.00%
packages/ragbits-agents/tests/unit/test_agent.py                                                               229       1  99.56%   46
packages/ragbits-chat/src/ragbits/chat/__init__.py                                                               3       0  100.00%
packages/ragbits-chat/src/ragbits/chat/_utils.py                                                                23       5  78.26%   17, 32, 38-40
packages/ragbits-chat/src/ragbits/chat/api.py                                                                  100       8  92.00%   69-70, 93, 119, 152-161
packages/ragbits-chat/src/ragbits/chat/cli.py                                                                    9       2  77.78%   37-42
packages/ragbits-chat/src/ragbits/chat/clients/__init__.py                                                       4       0  100.00%
packages/ragbits-chat/src/ragbits/chat/clients/base.py                                                          34       0  100.00%
packages/ragbits-chat/src/ragbits/chat/clients/exceptions.py                                                     4       0  100.00%
packages/ragbits-chat/src/ragbits/chat/clients/client/__init__.py                                                3       0  100.00%
packages/ragbits-chat/src/ragbits/chat/clients/client/async_client.py                                           29      11  62.07%   30-31, 35, 39, 48-49, 58-60, 64, 73
packages/ragbits-chat/src/ragbits/chat/clients/client/sync_client.py                                            28      10  64.29%   36-37, 41, 45, 54-55, 64-65, 69, 78
packages/ragbits-chat/src/ragbits/chat/clients/conversation/__init__.py                                          3       0  100.00%
packages/ragbits-chat/src/ragbits/chat/clients/conversation/async_conversation.py                               73       9  87.67%   57, 59, 61, 75-76, 84, 87, 90-91
packages/ragbits-chat/src/ragbits/chat/clients/conversation/sync_conversation.py                                73       2  97.26%   90, 93
packages/ragbits-chat/src/ragbits/chat/history/__init__.py                                                       0       0  100.00%
packages/ragbits-chat/src/ragbits/chat/history/compressors/__init__.py                                           3       0  100.00%
packages/ragbits-chat/src/ragbits/chat/history/compressors/base.py                                              10       0  100.00%
packages/ragbits-chat/src/ragbits/chat/history/compressors/llm.py                                               29       1  96.55%   79
packages/ragbits-chat/src/ragbits/chat/interface/__init__.py                                                     2       0  100.00%
packages/ragbits-chat/src/ragbits/chat/interface/_interface.py                                                  84      12  85.71%   47, 56-57, 74, 127-128, 138, 148, 190, 228-229, 245
packages/ragbits-chat/src/ragbits/chat/interface/forms.py                                                       43      12  72.09%   59, 64, 79-98
packages/ragbits-chat/src/ragbits/chat/interface/types.py                                                       55       2  96.36%   121, 131
packages/ragbits-chat/src/ragbits/chat/interface/ui_customization.py                                            13       0  100.00%
packages/ragbits-chat/src/ragbits/chat/persistence/__init__.py                                                   2       0  100.00%
packages/ragbits-chat/src/ragbits/chat/persistence/base.py                                                       6       1  83.33%   28
packages/ragbits-chat/src/ragbits/chat/persistence/sql.py                                                       91       3  96.70%   292-294
packages/ragbits-chat/tests/unit/test_api.py                                                                   146       1  99.32%   218
packages/ragbits-chat/tests/unit/test_chat_client.py                                                           104       2  98.08%   68, 88
packages/ragbits-chat/tests/unit/test_conversation.py                                                          119       1  99.16%   65
packages/ragbits-chat/tests/unit/history/test_llm_compressor.py                                                 64       0  100.00%
packages/ragbits-chat/tests/unit/persistence/test_sql.py                                                        74       0  100.00%
packages/ragbits-cli/src/ragbits/cli/__init__.py                                                                33       4  87.88%   78-79, 86-87
packages/ragbits-cli/src/ragbits/cli/_utils.py                                                                  23       4  82.61%   47, 65-67
packages/ragbits-cli/src/ragbits/cli/state.py                                                                   79       3  96.20%   50-51, 61
packages/ragbits-cli/tests/unit/test_state.py                                                                   72       2  97.22%   103-104
packages/ragbits-cli/tests/unit/test_utils.py                                                                   23       0  100.00%
packages/ragbits-core/src/ragbits/core/__init__.py                                                               8       2  75.00%   9-10
packages/ragbits-core/src/ragbits/core/cli.py                                                                    6       0  100.00%
packages/ragbits-core/src/ragbits/core/options.py                                                               17       0  100.00%
packages/ragbits-core/src/ragbits/core/types.py                                                                  9       0  100.00%
packages/ragbits-core/src/ragbits/core/audit/__init__.py                                                         5       0  100.00%
packages/ragbits-core/src/ragbits/core/audit/metrics/__init__.py                                                33      14  57.58%   37-54, 62
packages/ragbits-core/src/ragbits/core/audit/metrics/base.py                                                    36       0  100.00%
packages/ragbits-core/src/ragbits/core/audit/traces/__init__.py                                                 80       9  88.75%   49-52, 55-58, 66-69
packages/ragbits-core/src/ragbits/core/audit/traces/base.py                                                    183      57  68.85%   156-165, 178-179, 200, 215-216, 220, 230, 233-234, 249, 256, 262-264, 271-274, 334-345, 352-360, 374, 390-409
packages/ragbits-core/src/ragbits/core/audit/traces/cli.py                                                     132      29  78.03%   88-93, 112-139, 156, 163, 172-173, 176-177
packages/ragbits-core/src/ragbits/core/embeddings/__init__.py                                                    4       0  100.00%
packages/ragbits-core/src/ragbits/core/embeddings/base.py                                                       32       5  84.38%   20-21, 24, 77, 92
packages/ragbits-core/src/ragbits/core/embeddings/exceptions.py                                                 17       7  58.82%   7-8, 17, 26-27, 36, 45
packages/ragbits-core/src/ragbits/core/embeddings/dense/__init__.py                                              4       0  100.00%
packages/ragbits-core/src/ragbits/core/embeddings/dense/base.py                                                  9       1  88.89%   44
packages/ragbits-core/src/ragbits/core/embeddings/dense/fastembed.py                                            35       3  91.43%   34, 62-63
packages/ragbits-core/src/ragbits/core/embeddings/dense/litellm.py                                              56      11  80.36%   131-136, 139, 143-145, 166
packages/ragbits-core/src/ragbits/core/embeddings/dense/local.py                                                32       5  84.38%   13-14, 52, 68-69
packages/ragbits-core/src/ragbits/core/embeddings/dense/noop.py                                                 32       1  96.88%   99
packages/ragbits-core/src/ragbits/core/embeddings/dense/vertex_multimodal.py                                    60      24  60.00%   13-14, 57, 62, 102-123, 139-148, 175, 194-198
packages/ragbits-core/src/ragbits/core/embeddings/sparse/__init__.py                                             4       0  100.00%
packages/ragbits-core/src/ragbits/core/embeddings/sparse/bag_of_tokens.py                                       43       1  97.67%   53
packages/ragbits-core/src/ragbits/core/embeddings/sparse/base.py                                                12       1  91.67%   48
packages/ragbits-core/src/ragbits/core/embeddings/sparse/fastembed.py                                           31       2  93.55%   25, 52
packages/ragbits-core/src/ragbits/core/llms/__init__.py                                                          4       0  100.00%
packages/ragbits-core/src/ragbits/core/llms/base.py                                                            107       2  98.13%   91, 103
packages/ragbits-core/src/ragbits/core/llms/exceptions.py                                                       23       5  78.26%   17, 26-27, 36, 45
packages/ragbits-core/src/ragbits/core/llms/factory.py                                                          12       2  83.33%   30, 51
packages/ragbits-core/src/ragbits/core/llms/litellm.py                                                         150      49  67.33%   108, 125-126, 175, 194, 252-328, 354, 358, 362-367, 378, 407
packages/ragbits-core/src/ragbits/core/llms/local.py                                                            73      43  41.10%   10-13, 69-77, 89-90, 113-145, 168-220
packages/ragbits-core/src/ragbits/core/llms/mock.py                                                             33       1  96.97%   85
packages/ragbits-core/src/ragbits/core/prompt/__init__.py                                                        2       0  100.00%
packages/ragbits-core/src/ragbits/core/prompt/_cli.py                                                           53      22  58.49%   37-45, 59-61, 69-80, 88-90, 102-110
packages/ragbits-core/src/ragbits/core/prompt/base.py                                                           42       1  97.62%   25
packages/ragbits-core/src/ragbits/core/prompt/discovery.py                                                      36       2  94.44%   55-56
packages/ragbits-core/src/ragbits/core/prompt/exceptions.py                                                      7       0  100.00%
packages/ragbits-core/src/ragbits/core/prompt/parsers.py                                                        35       0  100.00%
packages/ragbits-core/src/ragbits/core/prompt/prompt.py                                                        159       2  98.74%   154, 222
packages/ragbits-core/src/ragbits/core/sources/__init__.py                                                      10       0  100.00%
packages/ragbits-core/src/ragbits/core/sources/azure.py                                                         95      13  86.32%   65-66, 92-102, 189-190
packages/ragbits-core/src/ragbits/core/sources/base.py                                                          74       3  95.95%   46, 185-186
packages/ragbits-core/src/ragbits/core/sources/exceptions.py                                                    16       0  100.00%
packages/ragbits-core/src/ragbits/core/sources/gcs.py                                                           63       0  100.00%
packages/ragbits-core/src/ragbits/core/sources/git.py                                                           94       3  96.81%   188, 195, 211
packages/ragbits-core/src/ragbits/core/sources/google_drive.py                                                 271     226  16.61%   16-19, 66, 78-105, 112, 121-143, 165-214, 231-342, 365-411, 414-478
packages/ragbits-core/src/ragbits/core/sources/hf.py                                                            73      16  78.08%   57-60, 64-65, 85-88, 108-110, 138, 145-146
packages/ragbits-core/src/ragbits/core/sources/local.py                                                         41       2  95.12%   39, 80
packages/ragbits-core/src/ragbits/core/sources/s3.py                                                           105      17  83.81%   54-57, 75, 88-93, 117, 128-131, 162, 179
packages/ragbits-core/src/ragbits/core/sources/web.py                                                           41       2  95.12%   58, 75
packages/ragbits-core/src/ragbits/core/utils/__init__.py                                                         2       0  100.00%
packages/ragbits-core/src/ragbits/core/utils/_pyproject.py                                                      38       1  97.37%   113
packages/ragbits-core/src/ragbits/core/utils/config_handling.py                                                 79       9  88.61%   17, 55-56, 63-64, 133, 163-165
packages/ragbits-core/src/ragbits/core/utils/decorators.py                                                      29       0  100.00%
packages/ragbits-core/src/ragbits/core/utils/dict_transformations.py                                           143      35  75.52%   24, 27, 80, 90, 110-115, 126-133, 147-151, 166-167, 173, 185-191, 195, 254
packages/ragbits-core/src/ragbits/core/utils/function_schema.py                                                 68      16  76.47%   96-97, 109, 117-131, 138-151, 164
packages/ragbits-core/src/ragbits/core/utils/helpers.py                                                         11       0  100.00%
packages/ragbits-core/src/ragbits/core/utils/pydantic.py                                                        13       2  84.62%   13, 16
packages/ragbits-core/src/ragbits/core/utils/secrets.py                                                         18       0  100.00%
packages/ragbits-core/src/ragbits/core/vector_stores/__init__.py                                                 3       0  100.00%
packages/ragbits-core/src/ragbits/core/vector_stores/_cli.py                                                    50       4  92.00%   67, 89, 95, 119
packages/ragbits-core/src/ragbits/core/vector_stores/base.py                                                   103       3  97.09%   53, 214, 286
packages/ragbits-core/src/ragbits/core/vector_stores/chroma.py                                                  91       2  97.80%   74, 112
packages/ragbits-core/src/ragbits/core/vector_stores/hybrid.py                                                  34       0  100.00%
packages/ragbits-core/src/ragbits/core/vector_stores/hybrid_strategies.py                                       65       0  100.00%
packages/ragbits-core/src/ragbits/core/vector_stores/in_memory.py                                               59       0  100.00%
packages/ragbits-core/src/ragbits/core/vector_stores/pgvector.py                                               178       8  95.51%   115, 158, 307-309, 342-344
packages/ragbits-core/src/ragbits/core/vector_stores/qdrant.py                                                  97       5  94.85%   80-95, 160, 181
packages/ragbits-core/src/ragbits/core/vector_stores/weaviate.py                                               127       5  96.06%   104-132, 271
packages/ragbits-core/tests/conftest.py                                                                         12       0  100.00%
packages/ragbits-core/tests/cli/__init__.py                                                                      0       0  100.00%
packages/ragbits-core/tests/cli/test_cli_trace_handler.py                                                       47       3  93.62%   29, 42, 55
packages/ragbits-core/tests/cli/test_vector_store.py                                                           115       0  100.00%
packages/ragbits-core/tests/integration/sources/test_git.py                                                     68       6  91.18%   147-156
packages/ragbits-core/tests/integration/sources/test_hf.py                                                      19       9  52.63%   16-21, 32-37
packages/ragbits-core/tests/integration/sources/test_s3.py                                                      42       0  100.00%
packages/ragbits-core/tests/integration/vector_stores/__init__.py                                                0       0  100.00%
packages/ragbits-core/tests/integration/vector_stores/test_keyword_search.py                                    79       0  100.00%
packages/ragbits-core/tests/integration/vector_stores/test_vector_store.py                                     140       1  99.29%   51
packages/ragbits-core/tests/integration/vector_stores/test_vector_store_sparse.py                               63       0  100.00%
packages/ragbits-core/tests/unit/__init__.py                                                                     0       0  100.00%
packages/ragbits-core/tests/unit/test_options.py                                                                21       0  100.00%
packages/ragbits-core/tests/unit/audit/test_cli.py                                                             107       0  100.00%
packages/ragbits-core/tests/unit/audit/test_metrics.py                                                          28       1  96.43%   11
packages/ragbits-core/tests/unit/audit/test_trace.py                                                            97       3  96.91%   16, 19, 22
packages/ragbits-core/tests/unit/embeddings/test_bag_of_tokens.py                                               52       0  100.00%
packages/ragbits-core/tests/unit/embeddings/test_fastembed.py                                                   50       0  100.00%
packages/ragbits-core/tests/unit/embeddings/test_from_config.py                                                 39       0  100.00%
packages/ragbits-core/tests/unit/embeddings/test_litellm.py                                                     64       0  100.00%
packages/ragbits-core/tests/unit/embeddings/test_local.py                                                       42       0  100.00%
packages/ragbits-core/tests/unit/embeddings/test_noop.py                                                        26       0  100.00%
packages/ragbits-core/tests/unit/embeddings/test_vector_size.py                                                 33       0  100.00%
packages/ragbits-core/tests/unit/embeddings/test_vertex_multimodal.py                                           39       0  100.00%
packages/ragbits-core/tests/unit/llms/__init__.py                                                                0       0  100.00%
packages/ragbits-core/tests/unit/llms/test_base.py                                                             116       3  97.41%   62-65
packages/ragbits-core/tests/unit/llms/test_from_config.py                                                       27       0  100.00%
packages/ragbits-core/tests/unit/llms/test_litellm.py                                                          179       3  98.32%   149-152
packages/ragbits-core/tests/unit/llms/factory/__init__.py                                                        0       0  100.00%
packages/ragbits-core/tests/unit/llms/factory/test_get_preferred_llm.py                                         12       0  100.00%
packages/ragbits-core/tests/unit/prompts/__init__.py                                                             0       0  100.00%
packages/ragbits-core/tests/unit/prompts/test_parsers.py                                                        65       0  100.00%
packages/ragbits-core/tests/unit/prompts/test_prompt.py                                                        278       1  99.64%   643
packages/ragbits-core/tests/unit/prompts/discovery/__init__.py                                                   0       0  100.00%
packages/ragbits-core/tests/unit/prompts/discovery/prompt_classes_for_tests.py                                  30       0  100.00%
packages/ragbits-core/tests/unit/prompts/discovery/test_prompt_discovery.py                                     18       0  100.00%
packages/ragbits-core/tests/unit/prompts/discovery/ragbits_tests_pkg_with_prompts/__init__.py                    2       1  50.00%   3
packages/ragbits-core/tests/unit/prompts/discovery/ragbits_tests_pkg_with_prompts/prompts/__init__.py            3       2  33.33%   2-4
packages/ragbits-core/tests/unit/prompts/discovery/ragbits_tests_pkg_with_prompts/prompts/temp_prompt1.py       14       0  100.00%
packages/ragbits-core/tests/unit/prompts/discovery/ragbits_tests_pkg_with_prompts/prompts/temp_prompt2.py       14       0  100.00%
packages/ragbits-core/tests/unit/sources/test_aws.py                                                            23       0  100.00%
packages/ragbits-core/tests/unit/sources/test_azure.py                                                          70       0  100.00%
packages/ragbits-core/tests/unit/sources/test_exceptions.py                                                     22       0  100.00%
packages/ragbits-core/tests/unit/sources/test_gcs.py                                                            33       6  81.82%   42-47
packages/ragbits-core/tests/unit/sources/test_git.py                                                           110       0  100.00%
packages/ragbits-core/tests/unit/sources/test_hf.py                                                             12       0  100.00%
packages/ragbits-core/tests/unit/sources/test_local.py                                                          13       0  100.00%
packages/ragbits-core/tests/unit/sources/test_source_discriminator.py                                           36       0  100.00%
packages/ragbits-core/tests/unit/sources/test_web.py                                                            43       0  100.00%
packages/ragbits-core/tests/unit/utils/__init__.py                                                               0       0  100.00%
packages/ragbits-core/tests/unit/utils/test_config_handling.py                                                  76       2  97.37%   27-28
packages/ragbits-core/tests/unit/utils/test_decorators.py                                                       26       2  92.31%   17, 39
packages/ragbits-core/tests/unit/utils/test_dict_transformations.py                                             98       0  100.00%
packages/ragbits-core/tests/unit/utils/test_function_schema.py                                                   7       1  85.71%   14
packages/ragbits-core/tests/unit/utils/test_helpers.py                                                           6       0  100.00%
packages/ragbits-core/tests/unit/utils/test_secrets.py                                                          24       0  100.00%
packages/ragbits-core/tests/unit/utils/pyproject/test_find.py                                                   13       0  100.00%
packages/ragbits-core/tests/unit/utils/pyproject/test_get_config.py                                              9       0  100.00%
packages/ragbits-core/tests/unit/utils/pyproject/test_get_instace.py                                            37       0  100.00%
packages/ragbits-core/tests/unit/vector_stores/test_base.py                                                      6       0  100.00%
packages/ragbits-core/tests/unit/vector_stores/test_chroma.py                                                   81       0  100.00%
packages/ragbits-core/tests/unit/vector_stores/test_from_config.py                                              55       0  100.00%
packages/ragbits-core/tests/unit/vector_stores/test_hybrid.py                                                   74       0  100.00%
packages/ragbits-core/tests/unit/vector_stores/test_hybrid_strategies.py                                        31       0  100.00%
packages/ragbits-core/tests/unit/vector_stores/test_in_memory.py                                               102       0  100.00%
packages/ragbits-core/tests/unit/vector_stores/test_pgvector.py                                                262       0  100.00%
packages/ragbits-core/tests/unit/vector_stores/test_qdrant.py                                                  100       0  100.00%
packages/ragbits-core/tests/unit/vector_stores/test_weaviate.py                                                142       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/__init__.py                                         2       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/_main.py                                           91       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/cli.py                                             40       2  95.00%   86, 105
packages/ragbits-document-search/src/ragbits/document_search/documents/__init__.py                               0       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/documents/document.py                              78       2  97.44%   49, 93
packages/ragbits-document-search/src/ragbits/document_search/documents/element.py                               86      14  83.72%   97, 115, 179-187, 197, 206-208
packages/ragbits-document-search/src/ragbits/document_search/ingestion/__init__.py                               0       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/enrichers/__init__.py                     4       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/enrichers/base.py                        21       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/enrichers/exceptions.py                  14       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/enrichers/image.py                       30       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/enrichers/router.py                      25       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/parsers/__init__.py                       3       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/parsers/base.py                          28       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/parsers/docling.py                       44       2  95.45%   90, 151
packages/ragbits-document-search/src/ragbits/document_search/ingestion/parsers/exceptions.py                    14       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/parsers/router.py                        24       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/parsers/unstructured.py                  66      24  63.64%   102, 121-123, 135-156, 176-190, 212-213, 233-248
packages/ragbits-document-search/src/ragbits/document_search/ingestion/strategies/__init__.py                    5       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/strategies/base.py                       93      17  81.72%   153, 209-239
packages/ragbits-document-search/src/ragbits/document_search/ingestion/strategies/batched.py                    69       8  88.41%   172, 200-215, 255-256
packages/ragbits-document-search/src/ragbits/document_search/ingestion/strategies/ray.py                        32       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/ingestion/strategies/sequential.py                  4       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/__init__.py                               0       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rephrasers/__init__.py                    4       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rephrasers/base.py                       14       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rephrasers/llm.py                        40       5  87.50%   51, 115-118
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rephrasers/noop.py                        8       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rerankers/__init__.py                     3       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rerankers/answerai.py                    29       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rerankers/base.py                        19       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rerankers/litellm.py                     27       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rerankers/llm.py                         59       1  98.31%   173
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rerankers/noop.py                        10       0  100.00%
packages/ragbits-document-search/src/ragbits/document_search/retrieval/rerankers/rrf.py                         28       2  92.86%   50, 60
packages/ragbits-document-search/tests/cli/custom_cli_source.py                                                 22       1  95.45%   32
packages/ragbits-document-search/tests/cli/test_ingest.py                                                       56       0  100.00%
packages/ragbits-document-search/tests/cli/test_search.py                                                       71       0  100.00%
packages/ragbits-document-search/tests/integration/__init__.py                                                   0       0  100.00%
packages/ragbits-document-search/tests/integration/test_docling.py                                              10       0  100.00%
packages/ragbits-document-search/tests/integration/test_rerankers.py                                            32       9  71.88%   32-39, 59-64
packages/ragbits-document-search/tests/integration/test_unstructured.py                                         12       4  66.67%   62-67
packages/ragbits-document-search/tests/unit/test_config.py                                                      63       0  100.00%
packages/ragbits-document-search/tests/unit/test_document_parser_router.py                                      24       0  100.00%
packages/ragbits-document-search/tests/unit/test_document_parsers.py                                            47       0  100.00%
packages/ragbits-document-search/tests/unit/test_document_search.py                                            238       1  99.58%   480
packages/ragbits-document-search/tests/unit/test_document_search_ingest_errors.py                               38       0  100.00%
packages/ragbits-document-search/tests/unit/test_documents.py                                                   13       0  100.00%
packages/ragbits-document-search/tests/unit/test_element_enricher_router.py                                     23       0  100.00%
packages/ragbits-document-search/tests/unit/test_element_enrichers.py                                           56       1  98.21%   25
packages/ragbits-document-search/tests/unit/test_elements.py                                                    21       0  100.00%
packages/ragbits-document-search/tests/unit/test_ingest_strategies.py                                           43       0  100.00%
packages/ragbits-document-search/tests/unit/test_llm_reranker.py                                                43       0  100.00%
packages/ragbits-document-search/tests/unit/test_rephrasers.py                                                  26       0  100.00%
packages/ragbits-document-search/tests/unit/test_rerankers.py                                                   80       1  98.75%   25
packages/ragbits-document-search/tests/unit/testprojects/project_with_instance_factory/__init__.py               0       0  100.00%
packages/ragbits-document-search/tests/unit/testprojects/project_with_instance_factory/factories.py             22       0  100.00%
packages/ragbits-evaluate/src/ragbits/evaluate/__init__.py                                                       0       0  100.00%
packages/ragbits-evaluate/src/ragbits/evaluate/cli.py                                                           46       3  93.48%   133, 135, 137
packages/ragbits-evaluate/src/ragbits/evaluate/evaluator.py                                                     77       1  98.70%   201
packages/ragbits-evaluate/src/ragbits/evaluate/optimizer.py                                                     92      18  80.43%   162-168, 187, 190-191, 194, 198-204, 207-210
packages/ragbits-evaluate/src/ragbits/evaluate/utils.py                                                         58      37  36.21%   31-50, 62-69, 98-101, 117-129, 140-149, 159-160
packages/ragbits-evaluate/src/ragbits/evaluate/dataloaders/__init__.py                                           2       0  100.00%
packages/ragbits-evaluate/src/ragbits/evaluate/dataloaders/base.py                                              34       4  88.24%   58-60, 79
packages/ragbits-evaluate/src/ragbits/evaluate/dataloaders/document_search.py                                   13       0  100.00%
packages/ragbits-evaluate/src/ragbits/evaluate/dataloaders/exceptions.py                                        10       5  50.00%   10-12, 21-25
packages/ragbits-evaluate/src/ragbits/evaluate/metrics/__init__.py                                               2       0  100.00%
packages/ragbits-evaluate/src/ragbits/evaluate/metrics/base.py                                                  27       0  100.00%
packages/ragbits-evaluate/src/ragbits/evaluate/metrics/document_search.py                                       23       0  100.00%
packages/ragbits-evaluate/src/ragbits/evaluate/pipelines/__init__.py                                            11       1  90.91%   26
packages/ragbits-evaluate/src/ragbits/evaluate/pipelines/base.py                                                24       0  100.00%
packages/ragbits-evaluate/src/ragbits/evaluate/pipelines/document_search.py                                     38       6  84.21%   68-71, 80-84
packages/ragbits-evaluate/tests/cli/test_run_evaluation.py                                                      25       0  100.00%
packages/ragbits-evaluate/tests/unit/test_evaluator.py                                                          65       0  100.00%
packages/ragbits-evaluate/tests/unit/test_metrics.py                                                            77       0  100.00%
packages/ragbits-evaluate/tests/unit/test_optimizer.py                                                          68       0  100.00%
packages/ragbits-guardrails/src/ragbits/guardrails/__init__.py                                                   0       0  100.00%
packages/ragbits-guardrails/src/ragbits/guardrails/base.py                                                      15       0  100.00%
packages/ragbits-guardrails/src/ragbits/guardrails/openai_moderation.py                                         19       5  73.68%   29-33
packages/ragbits-guardrails/tests/unit/test_openai_moderation.py                                                35       0  100.00%
TOTAL                                                                                                        11779     997  91.54%

Diff against main

Filename                                                          Stmts    Miss  Cover
--------------------------------------------------------------  -------  ------  --------
packages/ragbits-core/src/ragbits/core/sources/__init__.py           +1       0  +100.00%
packages/ragbits-core/src/ragbits/core/sources/google_drive.py     +271    +226  +16.61%
packages/ragbits-core/src/ragbits/core/sources/web.py                 0      +1  -2.44%
TOTAL                                                              +272    +227  -1.77%

Results for commit: dddcf52

Minimum allowed coverage is 60%

♻️ This comment has been updated with latest results

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant