iris-vector-rag 0.3.1__tar.gz → 0.3.2__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 (193) hide show
  1. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/PKG-INFO +26 -1
  2. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/README.md +25 -0
  3. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/dspy_modules/entity_extraction_module.py +11 -0
  4. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/graphrag.py +52 -1
  5. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/PKG-INFO +26 -1
  6. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/pyproject.toml +1 -1
  7. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/LICENSE +0 -0
  8. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/adapters/rag_templates_bridge.py +0 -0
  9. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/__init__.py +0 -0
  10. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/batch_utils.py +0 -0
  11. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/config.py +0 -0
  12. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/connection_manager.py +0 -0
  13. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/connection_pool.py +0 -0
  14. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/database.py +0 -0
  15. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/database_schema_manager.py +0 -0
  16. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/db_init_with_indexes.py +0 -0
  17. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/db_vector_utils.py +0 -0
  18. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/environment_manager.py +0 -0
  19. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/huggingface_utils.py +0 -0
  20. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_client.py +0 -0
  21. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_connection_manager.py +0 -0
  22. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_connection_pool.py +0 -0
  23. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_connector.py +0 -0
  24. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_dbapi_connector.py +0 -0
  25. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_index_utils.py +0 -0
  26. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_sql_utils.py +0 -0
  27. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_stream_reader.py +0 -0
  28. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/llm_cache_config.py +0 -0
  29. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/llm_cache_iris.py +0 -0
  30. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/llm_cache_manager.py +0 -0
  31. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/utils.py +0 -0
  32. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/vector_sql_utils.py +0 -0
  33. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/__init__.py +0 -0
  34. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/biomedical_question_generator.py +0 -0
  35. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/comparative_analysis_system.py +0 -0
  36. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/empirical_reporting.py +0 -0
  37. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/evaluation_orchestrator.py +0 -0
  38. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/execute_production_evaluation.py +0 -0
  39. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/outputs/production_evaluation/execute_biomedical_rag_10k_evaluation_20250913_200432.py +0 -0
  40. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/pmc_data_pipeline.py +0 -0
  41. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/production_evaluation_config.py +0 -0
  42. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/ragas_metrics_framework.py +0 -0
  43. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/real_production_evaluation.py +0 -0
  44. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/run_10k_evaluation.py +0 -0
  45. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/simple_test.py +0 -0
  46. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/statistical_evaluation_methodology.py +0 -0
  47. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/test_framework.py +0 -0
  48. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/test_iris_connectivity.py +0 -0
  49. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/test_small_scale_evaluation.py +0 -0
  50. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/true_e2e_evaluation.py +0 -0
  51. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/visualization_engine.py +0 -0
  52. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/__init__.py +0 -0
  53. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/__init__.py +0 -0
  54. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/cleanup_job.py +0 -0
  55. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/cli.py +0 -0
  56. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/main.py +0 -0
  57. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/mcp_routes.py +0 -0
  58. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/middleware/__init__.py +0 -0
  59. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/middleware/auth.py +0 -0
  60. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/middleware/logging.py +0 -0
  61. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/middleware/rate_limit.py +0 -0
  62. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/__init__.py +0 -0
  63. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/auth.py +0 -0
  64. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/errors.py +0 -0
  65. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/health.py +0 -0
  66. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/pipeline.py +0 -0
  67. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/quota.py +0 -0
  68. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/request.py +0 -0
  69. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/response.py +0 -0
  70. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/upload.py +0 -0
  71. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/websocket.py +0 -0
  72. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/__init__.py +0 -0
  73. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/document.py +0 -0
  74. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/health.py +0 -0
  75. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/pipeline.py +0 -0
  76. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/query.py +0 -0
  77. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/services/__init__.py +0 -0
  78. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/services/auth_service.py +0 -0
  79. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/services/document_service.py +0 -0
  80. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/services/pipeline_manager.py +0 -0
  81. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/websocket/__init__.py +0 -0
  82. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/websocket/connection.py +0 -0
  83. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/websocket/handlers.py +0 -0
  84. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/websocket/routes.py +0 -0
  85. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/__init__.py +0 -0
  86. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/backend_modes.py +0 -0
  87. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/default_config.yaml +0 -0
  88. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/embedding_config.py +0 -0
  89. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/manager.py +0 -0
  90. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/pipeline_config_service.py +0 -0
  91. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/__init__.py +0 -0
  92. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/base.py +0 -0
  93. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/connection.py +0 -0
  94. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/exceptions.py +0 -0
  95. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/models.py +0 -0
  96. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/response_standardizer.py +0 -0
  97. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/validators.py +0 -0
  98. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/vector_store.py +0 -0
  99. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/vector_store_exceptions.py +0 -0
  100. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/dspy_modules/__init__.py +0 -0
  101. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/dspy_modules/batch_entity_extraction.py +0 -0
  102. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/embeddings/__init__.py +0 -0
  103. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/embeddings/entity_extractor.py +0 -0
  104. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/embeddings/iris_embedding.py +0 -0
  105. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/embeddings/manager.py +0 -0
  106. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/__init__.py +0 -0
  107. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/__main__.py +0 -0
  108. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/bridge.py +0 -0
  109. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/cli.py +0 -0
  110. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/config.py +0 -0
  111. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/technique_handlers.py +0 -0
  112. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/tool_schemas.py +0 -0
  113. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/validation.py +0 -0
  114. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/__init__.py +0 -0
  115. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/knowledge_extractor.py +0 -0
  116. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/models.py +0 -0
  117. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/rag_integration.py +0 -0
  118. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/temporal_manager.py +0 -0
  119. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/__init__.py +0 -0
  120. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/loader.py +0 -0
  121. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/models.py +0 -0
  122. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/plugins/__init__.py +0 -0
  123. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/plugins/general_ontology.py +0 -0
  124. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/reasoner.py +0 -0
  125. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/cache_manager.py +0 -0
  126. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/connection_pool.py +0 -0
  127. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/database_optimizer.py +0 -0
  128. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/hnsw_tuner.py +0 -0
  129. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/parallel_processor.py +0 -0
  130. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/performance_monitor.py +0 -0
  131. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/__init__.py +0 -0
  132. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/_hybrid_utils.py +0 -0
  133. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/basic.py +0 -0
  134. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/basic_rerank.py +0 -0
  135. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/colbert_pylate/__init__.py +0 -0
  136. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/colbert_pylate/pylate_pipeline.py +0 -0
  137. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/crag.py +0 -0
  138. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/factory.py +0 -0
  139. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/graphrag_merged.py +0 -0
  140. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/hybrid_graphrag.py +0 -0
  141. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/hybrid_graphrag_discovery.py +0 -0
  142. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/hybrid_graphrag_retrieval.py +0 -0
  143. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/iris_global_graphrag.py +0 -0
  144. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/multi_query_rrf.py +0 -0
  145. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/plugins/__init__.py +0 -0
  146. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/plugins/interface.py +0 -0
  147. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/services/__init__.py +0 -0
  148. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/services/entity_extraction.py +0 -0
  149. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/services/storage.py +0 -0
  150. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/__init__.py +0 -0
  151. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/clob_handler.py +0 -0
  152. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/enterprise_storage.py +0 -0
  153. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/hybrid_schema_manager.py +0 -0
  154. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/iris_embedding_ops.py +0 -0
  155. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/schema_manager.py +0 -0
  156. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/vector_store_iris.py +0 -0
  157. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/__init__.py +0 -0
  158. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/backend_manager.py +0 -0
  159. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/connection_pool.py +0 -0
  160. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/exceptions.py +0 -0
  161. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/iris_devtools_bridge.py +0 -0
  162. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/validators.py +0 -0
  163. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/utils/__init__.py +0 -0
  164. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/utils/module_loader.py +0 -0
  165. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/utils/project_root.py +0 -0
  166. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/utils/token_counter.py +0 -0
  167. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/__init__.py +0 -0
  168. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/factory.py +0 -0
  169. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/orchestrator.py +0 -0
  170. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/requirements.py +0 -0
  171. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/validator.py +0 -0
  172. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/SOURCES.txt +0 -0
  173. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/dependency_links.txt +0 -0
  174. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/entry_points.txt +0 -0
  175. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/requires.txt +0 -0
  176. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/top_level.txt +0 -0
  177. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/setup.cfg +0 -0
  178. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_comprehensive_pipeline_validation_e2e.py +0 -0
  179. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_comprehensive_pipeline_validation_e2e_fixed.py +0 -0
  180. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_enterprise_storage.py +0 -0
  181. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_entity_extraction_service.py +0 -0
  182. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_hybrid_graphrag_functional.py +0 -0
  183. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_index_ensure.py +0 -0
  184. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_mcp_integration.py +0 -0
  185. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_mcp_server_integration.py +0 -0
  186. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_ontology_loader.py +0 -0
  187. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_ontology_support.py +0 -0
  188. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_performance_monitor_comprehensive.py +0 -0
  189. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_performance_monitor_working.py +0 -0
  190. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_pylate_colbert_pipeline.py +0 -0
  191. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_schema_manager_bugs.py +0 -0
  192. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_temporal_manager.py +0 -0
  193. {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_vector_safe_helpers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: iris-vector-rag
3
- Version: 0.3.1
3
+ Version: 0.3.2
4
4
  Summary: Production-ready, extensible RAG framework with native IRIS vector search - unified API for basic, CRAG, GraphRAG, and ColBERT pipelines with RAGAS and DSPy integration
5
5
  Author-email: InterSystems <support@intersystems.com>
6
6
  Maintainer-email: Thomas Dyar <thomas.dyar@intersystems.com>
@@ -305,6 +305,31 @@ print(f"Relationships: {result['metadata']['relationships']}")
305
305
  print(f"Graph depth: {result['metadata']['graph_depth']}")
306
306
  ```
307
307
 
308
+ **⚠️ IMPORTANT:** To enable entity extraction during document ingestion, you MUST set `entity_extraction_enabled: True` in your pipeline configuration:
309
+
310
+ ```python
311
+ from iris_rag.config import ConfigurationManager
312
+
313
+ config = ConfigurationManager({
314
+ "pipelines": {
315
+ "graphrag": {
316
+ "entity_extraction_enabled": True, # REQUIRED for entity extraction!
317
+ }
318
+ },
319
+ "llm": {
320
+ "provider": "openai",
321
+ "api_type": "openai",
322
+ "model": "gpt-4o-mini",
323
+ "api_key": "your-api-key",
324
+ "temperature": 0.0
325
+ }
326
+ })
327
+
328
+ pipeline = create_pipeline('graphrag', config_manager=config)
329
+ ```
330
+
331
+ **Without this setting**, entity extraction will not run during `load_documents()` and no knowledge graph will be built, making graph-based retrieval unavailable.
332
+
308
333
  ### MultiQueryRRF: Multi-Perspective Retrieval
309
334
 
310
335
  Expands queries into multiple perspectives and fuses results:
@@ -201,6 +201,31 @@ print(f"Relationships: {result['metadata']['relationships']}")
201
201
  print(f"Graph depth: {result['metadata']['graph_depth']}")
202
202
  ```
203
203
 
204
+ **⚠️ IMPORTANT:** To enable entity extraction during document ingestion, you MUST set `entity_extraction_enabled: True` in your pipeline configuration:
205
+
206
+ ```python
207
+ from iris_rag.config import ConfigurationManager
208
+
209
+ config = ConfigurationManager({
210
+ "pipelines": {
211
+ "graphrag": {
212
+ "entity_extraction_enabled": True, # REQUIRED for entity extraction!
213
+ }
214
+ },
215
+ "llm": {
216
+ "provider": "openai",
217
+ "api_type": "openai",
218
+ "model": "gpt-4o-mini",
219
+ "api_key": "your-api-key",
220
+ "temperature": 0.0
221
+ }
222
+ })
223
+
224
+ pipeline = create_pipeline('graphrag', config_manager=config)
225
+ ```
226
+
227
+ **Without this setting**, entity extraction will not run during `load_documents()` and no knowledge graph will be built, making graph-based retrieval unavailable.
228
+
204
229
  ### MultiQueryRRF: Multi-Perspective Retrieval
205
230
 
206
231
  Expands queries into multiple perspectives and fuses results:
@@ -379,6 +379,17 @@ def configure_dspy(llm_config: dict):
379
379
  max_tokens = llm_config.get("max_tokens", 2000)
380
380
  temperature = llm_config.get("temperature", 0.1)
381
381
 
382
+ # Log configuration details before attempting to configure
383
+ logger.info("=" * 60)
384
+ logger.info("🔧 Configuring DSPy for Entity Extraction")
385
+ logger.info("=" * 60)
386
+ logger.info(f" API Type: {api_type}")
387
+ logger.info(f" Model: {model}")
388
+ logger.info(f" API Base: {api_base}")
389
+ logger.info(f" Max Tokens: {max_tokens}")
390
+ logger.info(f" Temperature: {temperature}")
391
+ logger.info("=" * 60)
392
+
382
393
  # FIX for Bug #6: Use custom DirectOpenAILM for GPT-OSS NIM
383
394
  # This bypasses LiteLLM entirely to preserve full model name "openai/gpt-oss-120b"
384
395
  if model == "openai/gpt-oss-120b" or (api_type == "openai" and "/" in model):
@@ -131,11 +131,26 @@ class GraphRAGPipeline(RAGPipeline):
131
131
 
132
132
  # Process documents in batches of 5 for 3x speedup
133
133
  batch_size = 5
134
+ total_batches = (len(documents) + batch_size - 1) // batch_size # Ceiling division
135
+
136
+ logger.info("=" * 70)
137
+ logger.info(f"🚀 Starting Entity Extraction")
138
+ logger.info("=" * 70)
139
+ logger.info(f" Total documents: {len(documents)}")
140
+ logger.info(f" Batch size: {batch_size}")
141
+ logger.info(f" Total batches: {total_batches}")
142
+ logger.info("=" * 70)
143
+
144
+ import time
145
+ extraction_start_time = time.time()
146
+
134
147
  for i in range(0, len(documents), batch_size):
135
148
  batch_docs = documents[i:i + batch_size]
149
+ batch_num = i//batch_size + 1
136
150
 
137
151
  try:
138
- logger.info(f"🚀 Processing batch {i//batch_size + 1} ({len(batch_docs)} documents) for entity extraction")
152
+ batch_start_time = time.time()
153
+ logger.info(f"📦 Processing batch {batch_num}/{total_batches} ({len(batch_docs)} documents)...")
139
154
 
140
155
  # Batch extract entities (single LLM call for all documents in batch!)
141
156
  batch_results = self.entity_extraction_service.extract_batch_with_dspy(
@@ -209,6 +224,28 @@ class GraphRAGPipeline(RAGPipeline):
209
224
  logger.warning(f"Failed to store entities for document {doc.id}: {e}")
210
225
  failed_documents.append(doc.id)
211
226
 
227
+ # Log batch completion with timing and statistics
228
+ batch_elapsed = time.time() - batch_start_time
229
+ batch_entity_count = sum(len(batch_results.get(doc.id, [])) for doc in batch_docs)
230
+ logger.info(
231
+ f"✅ Batch {batch_num}/{total_batches} complete: "
232
+ f"{batch_entity_count} entities extracted in {batch_elapsed:.1f}s "
233
+ f"(avg: {batch_entity_count/len(batch_docs):.1f} per doc)"
234
+ )
235
+
236
+ # Show overall progress every 10 batches
237
+ if batch_num % 10 == 0 or batch_num == total_batches:
238
+ elapsed_so_far = time.time() - extraction_start_time
239
+ docs_processed = min(batch_num * batch_size, len(documents))
240
+ avg_time_per_doc = elapsed_so_far / docs_processed if docs_processed > 0 else 0
241
+ remaining_docs = len(documents) - docs_processed
242
+ eta_seconds = remaining_docs * avg_time_per_doc
243
+ logger.info(
244
+ f"📊 Progress: {docs_processed}/{len(documents)} documents processed "
245
+ f"({total_entities} entities, {total_relationships} relationships) | "
246
+ f"ETA: {eta_seconds/60:.1f} min"
247
+ )
248
+
212
249
  except Exception as e:
213
250
  # Batch extraction failed - fall back to individual processing for this batch
214
251
  logger.warning(f"Batch entity extraction failed: {e}, falling back to individual processing")
@@ -238,6 +275,20 @@ class GraphRAGPipeline(RAGPipeline):
238
275
  logger.warning(f"Entity extraction error for document {doc.id}: {e}")
239
276
  failed_documents.append(doc.id)
240
277
 
278
+ # Log final extraction summary
279
+ extraction_elapsed = time.time() - extraction_start_time
280
+ logger.info("=" * 70)
281
+ logger.info("✅ Entity Extraction Complete")
282
+ logger.info("=" * 70)
283
+ logger.info(f" Documents processed: {len(documents)}")
284
+ logger.info(f" Total entities: {total_entities}")
285
+ logger.info(f" Total relationships: {total_relationships}")
286
+ logger.info(f" Failed documents: {len(failed_documents)}")
287
+ logger.info(f" Extraction time: {extraction_elapsed:.1f}s ({extraction_elapsed/60:.2f} min)")
288
+ logger.info(f" Throughput: {len(documents)/extraction_elapsed:.2f} docs/sec")
289
+ logger.info(f" Avg entities per doc: {total_entities/len(documents):.1f}")
290
+ logger.info("=" * 70)
291
+
241
292
  # Only fail if we got zero entities across ALL documents
242
293
  # (suggests a systematic extraction failure rather than content issues or storage failure)
243
294
  if total_entities == 0:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: iris-vector-rag
3
- Version: 0.3.1
3
+ Version: 0.3.2
4
4
  Summary: Production-ready, extensible RAG framework with native IRIS vector search - unified API for basic, CRAG, GraphRAG, and ColBERT pipelines with RAGAS and DSPy integration
5
5
  Author-email: InterSystems <support@intersystems.com>
6
6
  Maintainer-email: Thomas Dyar <thomas.dyar@intersystems.com>
@@ -305,6 +305,31 @@ print(f"Relationships: {result['metadata']['relationships']}")
305
305
  print(f"Graph depth: {result['metadata']['graph_depth']}")
306
306
  ```
307
307
 
308
+ **⚠️ IMPORTANT:** To enable entity extraction during document ingestion, you MUST set `entity_extraction_enabled: True` in your pipeline configuration:
309
+
310
+ ```python
311
+ from iris_rag.config import ConfigurationManager
312
+
313
+ config = ConfigurationManager({
314
+ "pipelines": {
315
+ "graphrag": {
316
+ "entity_extraction_enabled": True, # REQUIRED for entity extraction!
317
+ }
318
+ },
319
+ "llm": {
320
+ "provider": "openai",
321
+ "api_type": "openai",
322
+ "model": "gpt-4o-mini",
323
+ "api_key": "your-api-key",
324
+ "temperature": 0.0
325
+ }
326
+ })
327
+
328
+ pipeline = create_pipeline('graphrag', config_manager=config)
329
+ ```
330
+
331
+ **Without this setting**, entity extraction will not run during `load_documents()` and no knowledge graph will be built, making graph-based retrieval unavailable.
332
+
308
333
  ### MultiQueryRRF: Multi-Perspective Retrieval
309
334
 
310
335
  Expands queries into multiple perspectives and fuses results:
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "iris-vector-rag"
7
- version = "0.3.1"
7
+ version = "0.3.2"
8
8
  description = "Production-ready, extensible RAG framework with native IRIS vector search - unified API for basic, CRAG, GraphRAG, and ColBERT pipelines with RAGAS and DSPy integration"
9
9
  readme = "README.md"
10
10
  license = {text = "MIT"}
File without changes