openrag 0.5.1.dev5__tar.gz → 0.5.1.dev7__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. {openrag-0.5.1.dev5/src/openrag.egg-info → openrag-0.5.1.dev7}/PKG-INFO +1 -1
  2. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/pyproject.toml +1 -1
  3. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/models/processors.py +43 -0
  4. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7/src/openrag.egg-info}/PKG-INFO +1 -1
  5. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/LICENSE +0 -0
  6. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/MANIFEST.in +0 -0
  7. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/README.md +0 -0
  8. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/setup.cfg +0 -0
  9. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/agent.py +0 -0
  10. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/__init__.py +0 -0
  11. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/auth.py +0 -0
  12. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/chat.py +0 -0
  13. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/connectors.py +0 -0
  14. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/docling.py +0 -0
  15. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/documents.py +0 -0
  16. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/flows.py +0 -0
  17. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/keys.py +0 -0
  18. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/knowledge_filter.py +0 -0
  19. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/langflow_files.py +0 -0
  20. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/models.py +0 -0
  21. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/nudges.py +0 -0
  22. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/oidc.py +0 -0
  23. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/provider_health.py +0 -0
  24. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/provider_validation.py +0 -0
  25. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/router.py +0 -0
  26. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/search.py +0 -0
  27. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/settings.py +0 -0
  28. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/tasks.py +0 -0
  29. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/upload.py +0 -0
  30. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/v1/__init__.py +0 -0
  31. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/v1/chat.py +0 -0
  32. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/v1/documents.py +0 -0
  33. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/v1/knowledge_filters.py +0 -0
  34. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/v1/models.py +0 -0
  35. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/v1/search.py +0 -0
  36. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/api/v1/settings.py +0 -0
  37. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/auth/__init__.py +0 -0
  38. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/auth/ibm_auth.py +0 -0
  39. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/auth_context.py +0 -0
  40. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/bootstrap.py +0 -0
  41. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/config/__init__.py +0 -0
  42. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/config/config_manager.py +0 -0
  43. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/config/embedding_constants.py +0 -0
  44. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/config/model_constants.py +0 -0
  45. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/config/paths.py +0 -0
  46. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/config/settings.py +0 -0
  47. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/__init__.py +0 -0
  48. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/aws_s3/__init__.py +0 -0
  49. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/aws_s3/api.py +0 -0
  50. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/aws_s3/auth.py +0 -0
  51. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/aws_s3/connector.py +0 -0
  52. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/aws_s3/models.py +0 -0
  53. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/aws_s3/support.py +0 -0
  54. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/base.py +0 -0
  55. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/connection_manager.py +0 -0
  56. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/google_drive/__init__.py +0 -0
  57. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/google_drive/connector.py +0 -0
  58. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/google_drive/oauth.py +0 -0
  59. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/ibm_cos/__init__.py +0 -0
  60. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/ibm_cos/api.py +0 -0
  61. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/ibm_cos/auth.py +0 -0
  62. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/ibm_cos/connector.py +0 -0
  63. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/ibm_cos/models.py +0 -0
  64. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/ibm_cos/support.py +0 -0
  65. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/onedrive/__init__.py +0 -0
  66. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/onedrive/connector.py +0 -0
  67. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/onedrive/oauth.py +0 -0
  68. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/service.py +0 -0
  69. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/sharepoint/__init__.py +0 -0
  70. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/sharepoint/connector.py +0 -0
  71. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/sharepoint/oauth.py +0 -0
  72. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/connectors/sharepoint/utils.py +0 -0
  73. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/dependencies.py +0 -0
  74. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/main.py +0 -0
  75. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/mcp_http/__init__.py +0 -0
  76. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/mcp_http/server.py +0 -0
  77. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/models/__init__.py +0 -0
  78. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/models/tasks.py +0 -0
  79. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/models/url.py +0 -0
  80. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/openrag.egg-info/SOURCES.txt +0 -0
  81. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/openrag.egg-info/dependency_links.txt +0 -0
  82. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/openrag.egg-info/entry_points.txt +0 -0
  83. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/openrag.egg-info/requires.txt +0 -0
  84. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/openrag.egg-info/top_level.txt +0 -0
  85. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/__init__.py +0 -0
  86. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/api_key_service.py +0 -0
  87. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/auth_service.py +0 -0
  88. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/chat_service.py +0 -0
  89. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/conversation_persistence_service.py +0 -0
  90. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/document_service.py +0 -0
  91. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/flows_service.py +0 -0
  92. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/knowledge_filter_service.py +0 -0
  93. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/langflow_file_service.py +0 -0
  94. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/langflow_history_service.py +0 -0
  95. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/langflow_mcp_service.py +0 -0
  96. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/models_service.py +0 -0
  97. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/monitor_service.py +0 -0
  98. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/search_service.py +0 -0
  99. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/session_ownership_service.py +0 -0
  100. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/services/task_service.py +0 -0
  101. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/session_manager.py +0 -0
  102. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/__init__.py +0 -0
  103. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/docker-compose.gpu.yml +0 -0
  104. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/docker-compose.yml +0 -0
  105. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/components/ollama_embedding.json +0 -0
  106. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/components/ollama_llm.json +0 -0
  107. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/components/ollama_llm_text.json +0 -0
  108. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/components/watsonx_embedding.json +0 -0
  109. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/components/watsonx_llm.json +0 -0
  110. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/components/watsonx_llm_text.json +0 -0
  111. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/ingestion_flow.json +0 -0
  112. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/openrag_agent.json +0 -0
  113. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/openrag_nudges.json +0 -0
  114. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/flows/openrag_url_mcp.json +0 -0
  115. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/openrag-documents/docling.pdf +0 -0
  116. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/openrag-documents/ibm_anthropic.pdf +0 -0
  117. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/_assets/openrag-documents/warmup_ocr.pdf +0 -0
  118. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/cli.py +0 -0
  119. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/config_fields.py +0 -0
  120. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/main.py +0 -0
  121. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/managers/__init__.py +0 -0
  122. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/managers/container_manager.py +0 -0
  123. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/managers/docling_manager.py +0 -0
  124. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/managers/env_manager.py +0 -0
  125. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/screens/__init__.py +0 -0
  126. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/screens/config.py +0 -0
  127. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/screens/diagnostics.py +0 -0
  128. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/screens/logs.py +0 -0
  129. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/screens/monitor.py +0 -0
  130. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/screens/welcome.py +0 -0
  131. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/utils/__init__.py +0 -0
  132. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/utils/clipboard.py +0 -0
  133. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/utils/platform.py +0 -0
  134. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/utils/startup_checks.py +0 -0
  135. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/utils/validation.py +0 -0
  136. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/utils/version_check.py +0 -0
  137. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/__init__.py +0 -0
  138. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/command_modal.py +0 -0
  139. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/diagnostics_notification.py +0 -0
  140. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/error_notification.py +0 -0
  141. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/factory_reset_warning_modal.py +0 -0
  142. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/flow_backup_warning_modal.py +0 -0
  143. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/prune_options_modal.py +0 -0
  144. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/upgrade_instructions_modal.py +0 -0
  145. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/version_mismatch_warning_modal.py +0 -0
  146. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/tui/widgets/waves.py +0 -0
  147. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/__init__.py +0 -0
  148. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/acl_utils.py +0 -0
  149. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/container_utils.py +0 -0
  150. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/docling_client.py +0 -0
  151. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/document_processing.py +0 -0
  152. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/embedding_fields.py +0 -0
  153. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/embeddings.py +0 -0
  154. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/encryption.py +0 -0
  155. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/env_utils.py +0 -0
  156. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/file_utils.py +0 -0
  157. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/gpu_detection.py +0 -0
  158. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/hash_utils.py +0 -0
  159. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/langflow_headers.py +0 -0
  160. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/langflow_utils.py +0 -0
  161. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/logging_config.py +0 -0
  162. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/opensearch_delete.py +0 -0
  163. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/opensearch_queries.py +0 -0
  164. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/opensearch_utils.py +0 -0
  165. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/paths.py +0 -0
  166. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/run_mode_utils.py +0 -0
  167. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/telemetry/__init__.py +0 -0
  168. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/telemetry/category.py +0 -0
  169. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/telemetry/client.py +0 -0
  170. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/telemetry/message_id.py +0 -0
  171. {openrag-0.5.1.dev5 → openrag-0.5.1.dev7}/src/utils/version_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: openrag
3
- Version: 0.5.1.dev5
3
+ Version: 0.5.1.dev7
4
4
  Summary: OpenRAG is a comprehensive Retrieval-Augmented Generation platform that enables intelligent document search and AI-powered conversations.
5
5
  Classifier: Development Status :: 4 - Beta
6
6
  Classifier: Environment :: Console
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "openrag"
7
- version = "0.5.1.dev5"
7
+ version = "0.5.1.dev7"
8
8
  description = "OpenRAG is a comprehensive Retrieval-Augmented Generation platform that enables intelligent document search and AI-powered conversations."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.13"
@@ -27,6 +27,15 @@ from .tasks import FileTask, TaskStatus, UploadTask
27
27
 
28
28
  logger = get_logger(__name__)
29
29
 
30
+ # Image file extensions that require OCR
31
+ IMAGE_EXTENSIONS = {"bmp", "jpeg", "jpg", "png", "tiff", "tif", "webp"}
32
+
33
+
34
+ def is_image_file(filename: str) -> bool:
35
+ """Check if a file is an image based on its extension."""
36
+ ext = filename.split(".")[-1].lower() if "." in filename else ""
37
+ return ext in IMAGE_EXTENSIONS
38
+
30
39
  if TYPE_CHECKING:
31
40
  from connectors.base import DocumentACL
32
41
 
@@ -455,6 +464,18 @@ class DocumentFileProcessor(TaskProcessor):
455
464
  file_task.updated_at = time.time()
456
465
 
457
466
  try:
467
+ # Check if OCR is disabled and file is an image
468
+ filename = os.path.basename(item)
469
+ config = get_openrag_config()
470
+ ocr_enabled = config.knowledge.ocr
471
+
472
+ if not ocr_enabled and is_image_file(filename):
473
+ file_task.status = TaskStatus.FAILED
474
+ file_task.error = f"The file '{filename}' is an image file and cannot be ingested because OCR is disabled."
475
+ file_task.updated_at = time.time()
476
+ upload_task.failed_files += 1
477
+ return
478
+
458
479
  # Compute hash
459
480
  file_hash = hash_id(item)
460
481
 
@@ -578,6 +599,17 @@ class ConnectorFileProcessor(TaskProcessor):
578
599
  file_task.updated_at = time.time()
579
600
  upload_task.failed_files += 1
580
601
  return
602
+
603
+ # Check if OCR is disabled and file is an image
604
+ config = get_openrag_config()
605
+ ocr_enabled = config.knowledge.ocr
606
+
607
+ if not ocr_enabled and is_image_file(file_task.filename):
608
+ file_task.status = TaskStatus.FAILED
609
+ file_task.error = f"The file '{file_task.filename}' is an image file and cannot be ingested because OCR is disabled."
610
+ file_task.updated_at = time.time()
611
+ upload_task.failed_files += 1
612
+ return
581
613
 
582
614
  # Get file content from connector
583
615
  try:
@@ -642,6 +674,17 @@ class ConnectorFileProcessor(TaskProcessor):
642
674
  file_task.updated_at = time.time()
643
675
  upload_task.failed_files += 1
644
676
  return
677
+
678
+ # Check if OCR is disabled and file is an image
679
+ config = get_openrag_config()
680
+ ocr_enabled = config.knowledge.ocr
681
+
682
+ if not ocr_enabled and is_image_file(name):
683
+ file_task.status = TaskStatus.FAILED
684
+ file_task.error = f"The file '{name}' is an image file and cannot be ingested because OCR is disabled."
685
+ file_task.updated_at = time.time()
686
+ upload_task.failed_files += 1
687
+ return
645
688
 
646
689
  if not self.user_id:
647
690
  raise ValueError("user_id not provided to ConnectorFileProcessor")
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: openrag
3
- Version: 0.5.1.dev5
3
+ Version: 0.5.1.dev7
4
4
  Summary: OpenRAG is a comprehensive Retrieval-Augmented Generation platform that enables intelligent document search and AI-powered conversations.
5
5
  Classifier: Development Status :: 4 - Beta
6
6
  Classifier: Environment :: Console
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes