iris-vector-rag 0.5.2__tar.gz → 0.5.3__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 (198) hide show
  1. {iris_vector_rag-0.5.2/iris_vector_rag.egg-info → iris_vector_rag-0.5.3}/PKG-INFO +53 -258
  2. iris_vector_rag-0.5.3/README.md +312 -0
  3. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/__init__.py +1 -1
  4. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/connection_pool.py +11 -12
  5. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/iris_connection_manager.py +26 -7
  6. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/iris_dbapi_connector.py +9 -15
  7. iris_vector_rag-0.5.3/iris_vector_rag/config/entities.py +367 -0
  8. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/config/manager.py +124 -0
  9. iris_vector_rag-0.5.3/iris_vector_rag/config/validators.py +505 -0
  10. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/iris_global_graphrag.py +9 -6
  11. iris_vector_rag-0.5.3/iris_vector_rag/services/batch_entity_processor.py +481 -0
  12. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/services/storage.py +65 -14
  13. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/storage/schema_manager.py +11 -6
  14. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3/iris_vector_rag.egg-info}/PKG-INFO +53 -258
  15. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag.egg-info/SOURCES.txt +3 -20
  16. iris_vector_rag-0.5.3/iris_vector_rag.egg-info/top_level.txt +1 -0
  17. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/pyproject.toml +2 -2
  18. iris_vector_rag-0.5.2/README.md +0 -517
  19. iris_vector_rag-0.5.2/adapters/rag_templates_bridge.py +0 -578
  20. iris_vector_rag-0.5.2/evaluation_framework/__init__.py +0 -66
  21. iris_vector_rag-0.5.2/evaluation_framework/biomedical_question_generator.py +0 -826
  22. iris_vector_rag-0.5.2/evaluation_framework/comparative_analysis_system.py +0 -1173
  23. iris_vector_rag-0.5.2/evaluation_framework/empirical_reporting.py +0 -1298
  24. iris_vector_rag-0.5.2/evaluation_framework/evaluation_orchestrator.py +0 -1123
  25. iris_vector_rag-0.5.2/evaluation_framework/execute_production_evaluation.py +0 -382
  26. iris_vector_rag-0.5.2/evaluation_framework/outputs/production_evaluation/execute_biomedical_rag_10k_evaluation_20250913_200432.py +0 -72
  27. iris_vector_rag-0.5.2/evaluation_framework/pmc_data_pipeline.py +0 -1332
  28. iris_vector_rag-0.5.2/evaluation_framework/production_evaluation_config.py +0 -353
  29. iris_vector_rag-0.5.2/evaluation_framework/ragas_metrics_framework.py +0 -1013
  30. iris_vector_rag-0.5.2/evaluation_framework/real_production_evaluation.py +0 -544
  31. iris_vector_rag-0.5.2/evaluation_framework/run_10k_evaluation.py +0 -175
  32. iris_vector_rag-0.5.2/evaluation_framework/simple_test.py +0 -364
  33. iris_vector_rag-0.5.2/evaluation_framework/statistical_evaluation_methodology.py +0 -1016
  34. iris_vector_rag-0.5.2/evaluation_framework/test_framework.py +0 -281
  35. iris_vector_rag-0.5.2/evaluation_framework/test_iris_connectivity.py +0 -244
  36. iris_vector_rag-0.5.2/evaluation_framework/test_small_scale_evaluation.py +0 -432
  37. iris_vector_rag-0.5.2/evaluation_framework/true_e2e_evaluation.py +0 -639
  38. iris_vector_rag-0.5.2/evaluation_framework/visualization_engine.py +0 -585
  39. iris_vector_rag-0.5.2/iris_vector_rag.egg-info/top_level.txt +0 -3
  40. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/LICENSE +0 -0
  41. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/__init__.py +0 -0
  42. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/cleanup_job.py +0 -0
  43. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/cli.py +0 -0
  44. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/main.py +0 -0
  45. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/mcp_routes.py +0 -0
  46. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/middleware/__init__.py +0 -0
  47. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/middleware/auth.py +0 -0
  48. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/middleware/logging.py +0 -0
  49. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/middleware/rate_limit.py +0 -0
  50. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/__init__.py +0 -0
  51. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/auth.py +0 -0
  52. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/errors.py +0 -0
  53. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/health.py +0 -0
  54. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/pipeline.py +0 -0
  55. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/quota.py +0 -0
  56. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/request.py +0 -0
  57. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/response.py +0 -0
  58. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/upload.py +0 -0
  59. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/models/websocket.py +0 -0
  60. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/routes/__init__.py +0 -0
  61. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/routes/document.py +0 -0
  62. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/routes/health.py +0 -0
  63. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/routes/pipeline.py +0 -0
  64. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/routes/query.py +0 -0
  65. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/services/__init__.py +0 -0
  66. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/services/auth_service.py +0 -0
  67. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/services/document_service.py +0 -0
  68. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/services/pipeline_manager.py +0 -0
  69. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/websocket/__init__.py +0 -0
  70. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/websocket/connection.py +0 -0
  71. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/websocket/handlers.py +0 -0
  72. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/api/websocket/routes.py +0 -0
  73. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/__init__.py +0 -0
  74. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/batch_utils.py +0 -0
  75. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/config.py +0 -0
  76. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/connection_manager.py +0 -0
  77. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/database.py +0 -0
  78. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/database_schema_manager.py +0 -0
  79. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/db_init_with_indexes.py +0 -0
  80. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/db_vector_utils.py +0 -0
  81. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/environment_manager.py +0 -0
  82. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/huggingface_utils.py +0 -0
  83. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/iris_client.py +0 -0
  84. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/iris_connection_pool.py +0 -0
  85. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/iris_connector.py +0 -0
  86. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/iris_index_utils.py +0 -0
  87. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/iris_sql_utils.py +0 -0
  88. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/iris_stream_reader.py +0 -0
  89. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/llm_cache_config.py +0 -0
  90. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/llm_cache_iris.py +0 -0
  91. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/llm_cache_manager.py +0 -0
  92. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/utils.py +0 -0
  93. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/common/vector_sql_utils.py +0 -0
  94. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/config/__init__.py +0 -0
  95. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/config/backend_modes.py +0 -0
  96. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/config/default_config.yaml +0 -0
  97. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/config/embedding_config.py +0 -0
  98. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/config/pipeline_config_service.py +0 -0
  99. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/core/__init__.py +0 -0
  100. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/core/base.py +0 -0
  101. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/core/connection.py +0 -0
  102. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/core/exceptions.py +0 -0
  103. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/core/models.py +0 -0
  104. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/core/response_standardizer.py +0 -0
  105. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/core/validators.py +0 -0
  106. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/core/vector_store.py +0 -0
  107. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/core/vector_store_exceptions.py +0 -0
  108. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/dspy_modules/__init__.py +0 -0
  109. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/dspy_modules/batch_entity_extraction.py +0 -0
  110. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/dspy_modules/entity_extraction_module.py +0 -0
  111. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/embeddings/__init__.py +0 -0
  112. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/embeddings/entity_extractor.py +0 -0
  113. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/embeddings/iris_embedding.py +0 -0
  114. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/embeddings/manager.py +0 -0
  115. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/mcp/__init__.py +0 -0
  116. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/mcp/__main__.py +0 -0
  117. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/mcp/bridge.py +0 -0
  118. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/mcp/cli.py +0 -0
  119. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/mcp/config.py +0 -0
  120. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/mcp/technique_handlers.py +0 -0
  121. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/mcp/tool_schemas.py +0 -0
  122. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/mcp/validation.py +0 -0
  123. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/memory/__init__.py +0 -0
  124. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/memory/knowledge_extractor.py +0 -0
  125. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/memory/models.py +0 -0
  126. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/memory/rag_integration.py +0 -0
  127. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/memory/temporal_manager.py +0 -0
  128. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/ontology/__init__.py +0 -0
  129. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/ontology/loader.py +0 -0
  130. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/ontology/models.py +0 -0
  131. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/ontology/plugins/__init__.py +0 -0
  132. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/ontology/plugins/general_ontology.py +0 -0
  133. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/ontology/reasoner.py +0 -0
  134. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/optimization/cache_manager.py +0 -0
  135. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/optimization/connection_pool.py +0 -0
  136. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/optimization/database_optimizer.py +0 -0
  137. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/optimization/hnsw_tuner.py +0 -0
  138. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/optimization/parallel_processor.py +0 -0
  139. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/optimization/performance_monitor.py +0 -0
  140. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/__init__.py +0 -0
  141. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/_hybrid_utils.py +0 -0
  142. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/basic.py +0 -0
  143. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/basic_rerank.py +0 -0
  144. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/colbert_pylate/__init__.py +0 -0
  145. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/colbert_pylate/pylate_pipeline.py +0 -0
  146. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/crag.py +0 -0
  147. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/factory.py +0 -0
  148. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/graphrag.py +0 -0
  149. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/graphrag_merged.py +0 -0
  150. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/hybrid_graphrag.py +0 -0
  151. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/hybrid_graphrag_discovery.py +0 -0
  152. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/hybrid_graphrag_retrieval.py +0 -0
  153. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/pipelines/multi_query_rrf.py +0 -0
  154. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/plugins/__init__.py +0 -0
  155. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/plugins/interface.py +0 -0
  156. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/services/__init__.py +0 -0
  157. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/services/entity_extraction.py +0 -0
  158. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/storage/__init__.py +0 -0
  159. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/storage/clob_handler.py +0 -0
  160. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/storage/enterprise_storage.py +0 -0
  161. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/storage/hybrid_schema_manager.py +0 -0
  162. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/storage/iris_embedding_ops.py +0 -0
  163. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/storage/vector_store_iris.py +0 -0
  164. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/testing/__init__.py +0 -0
  165. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/testing/backend_manager.py +0 -0
  166. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/testing/connection_pool.py +0 -0
  167. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/testing/exceptions.py +0 -0
  168. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/testing/iris_devtools_bridge.py +0 -0
  169. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/testing/validators.py +0 -0
  170. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/utils/__init__.py +0 -0
  171. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/utils/module_loader.py +0 -0
  172. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/utils/project_root.py +0 -0
  173. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/utils/token_counter.py +0 -0
  174. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/validation/__init__.py +0 -0
  175. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/validation/factory.py +0 -0
  176. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/validation/orchestrator.py +0 -0
  177. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/validation/requirements.py +0 -0
  178. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag/validation/validator.py +0 -0
  179. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag.egg-info/dependency_links.txt +0 -0
  180. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag.egg-info/entry_points.txt +0 -0
  181. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/iris_vector_rag.egg-info/requires.txt +0 -0
  182. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/setup.cfg +0 -0
  183. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_comprehensive_pipeline_validation_e2e.py +0 -0
  184. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_comprehensive_pipeline_validation_e2e_fixed.py +0 -0
  185. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_enterprise_storage.py +0 -0
  186. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_entity_extraction_service.py +0 -0
  187. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_hybrid_graphrag_functional.py +0 -0
  188. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_index_ensure.py +0 -0
  189. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_mcp_integration.py +0 -0
  190. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_mcp_server_integration.py +0 -0
  191. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_ontology_loader.py +0 -0
  192. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_ontology_support.py +0 -0
  193. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_performance_monitor_comprehensive.py +0 -0
  194. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_performance_monitor_working.py +0 -0
  195. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_pylate_colbert_pipeline.py +0 -0
  196. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_schema_manager_bugs.py +0 -0
  197. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/tests/test_temporal_manager.py +0 -0
  198. {iris_vector_rag-0.5.2 → iris_vector_rag-0.5.3}/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.5.2
3
+ Version: 0.5.3
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>
@@ -182,7 +182,7 @@ EOF
182
182
  ### 4. Run Your First Query
183
183
 
184
184
  ```python
185
- from iris_rag import create_pipeline
185
+ from iris_vector_rag import create_pipeline
186
186
 
187
187
  # Create pipeline with automatic validation
188
188
  pipeline = create_pipeline('basic', validate_requirements=True)
@@ -220,22 +220,24 @@ print(f"Retrieved: {len(result['retrieved_documents'])} documents")
220
220
  **Switch RAG strategies with one line** - all pipelines share the same interface:
221
221
 
222
222
  ```python
223
- from iris_rag import create_pipeline
223
+ from iris_vector_rag import create_pipeline
224
224
 
225
- # Try different strategies instantly
226
- for pipeline_type in ['basic', 'basic_rerank', 'crag', 'multi_query_rrf', 'graphrag']:
227
- pipeline = create_pipeline(pipeline_type)
225
+ # Start with basic
226
+ pipeline = create_pipeline('basic')
227
+ result = pipeline.query("What are the latest cancer treatment approaches?", top_k=5)
228
228
 
229
- result = pipeline.query(
230
- query="What are the latest cancer treatment approaches?",
231
- top_k=5,
232
- generate_answer=True
233
- )
229
+ # Upgrade to basic_rerank for better accuracy
230
+ pipeline = create_pipeline('basic_rerank')
231
+ result = pipeline.query("What are the latest cancer treatment approaches?", top_k=5)
232
+
233
+ # Try graphrag for entity reasoning
234
+ pipeline = create_pipeline('graphrag')
235
+ result = pipeline.query("What are the latest cancer treatment approaches?", top_k=5)
234
236
 
235
- print(f"\n{pipeline_type.upper()}:")
236
- print(f" Answer: {result['answer'][:150]}...")
237
- print(f" Retrieved: {len(result['retrieved_documents'])} docs")
238
- print(f" Confidence: {result['metadata'].get('confidence', 'N/A')}")
237
+ # All pipelines return the same response format
238
+ print(f"Answer: {result['answer']}")
239
+ print(f"Sources: {result['sources']}")
240
+ print(f"Retrieved: {len(result['retrieved_documents'])} documents")
239
241
  ```
240
242
 
241
243
  ### Standardized Response Format
@@ -260,94 +262,18 @@ for pipeline_type in ['basic', 'basic_rerank', 'crag', 'multi_query_rrf', 'graph
260
262
  }
261
263
  ```
262
264
 
263
- ## Pipeline Deep Dives
264
-
265
- ### CRAG: Self-Correcting Retrieval
266
-
267
- Automatically evaluates retrieval quality and falls back to web search when needed:
268
-
269
- ```python
270
- from iris_rag import create_pipeline
271
-
272
- pipeline = create_pipeline('crag')
273
-
274
- # CRAG evaluates retrieved documents and uses web search if quality is low
275
- result = pipeline.query(
276
- query="What happened in the 2024 Olympics opening ceremony?",
277
- top_k=5,
278
- generate_answer=True
279
- )
280
-
281
- # Check which retrieval method was used
282
- print(f"Method: {result['metadata']['retrieval_method']}") # 'vector' or 'web_search'
283
- print(f"Confidence: {result['metadata']['confidence']}") # 0.0 - 1.0
284
- ```
285
-
286
- ### HybridGraphRAG: Multi-Modal Search
265
+ ## Pipeline Selection
287
266
 
288
- Combines vector search, text search, and knowledge graph traversal:
267
+ **Each pipeline uses the same API** - just change the pipeline type:
289
268
 
290
- ```python
291
- pipeline = create_pipeline('graphrag')
269
+ - **`basic`** - Fast vector similarity search, great for getting started
270
+ - **`basic_rerank`** - Vector + cross-encoder reranking for higher accuracy
271
+ - **`crag`** - Self-correcting with web search fallback for current events
272
+ - **`graphrag`** - Multi-modal: vector + text + knowledge graph fusion
273
+ - **`multi_query_rrf`** - Query expansion with reciprocal rank fusion
274
+ - **`pylate_colbert`** - ColBERT late interaction for fine-grained matching
292
275
 
293
- result = pipeline.query(
294
- query_text="cancer treatment targets",
295
- method="rrf", # Reciprocal Rank Fusion across all methods
296
- vector_k=30, # Top 30 from vector search
297
- text_k=30, # Top 30 from text search
298
- graph_k=10, # Top 10 from knowledge graph
299
- generate_answer=True
300
- )
301
-
302
- # Rich metadata includes entities and relationships
303
- print(f"Entities: {result['metadata']['entities']}")
304
- print(f"Relationships: {result['metadata']['relationships']}")
305
- print(f"Graph depth: {result['metadata']['graph_depth']}")
306
- ```
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
-
333
- ### MultiQueryRRF: Multi-Perspective Retrieval
334
-
335
- Expands queries into multiple perspectives and fuses results:
336
-
337
- ```python
338
- pipeline = create_pipeline('multi_query_rrf')
339
-
340
- # Automatically generates query variations and combines results
341
- result = pipeline.query(
342
- query="How does machine learning work?",
343
- top_k=10,
344
- generate_answer=True
345
- )
346
-
347
- # See the generated query variations
348
- print(f"Query variations: {result['metadata']['generated_queries']}")
349
- print(f"Fusion method: {result['metadata']['fusion_method']}") # 'rrf'
350
- ```
276
+ 📖 **[Complete Pipeline Guide →](docs/PIPELINE_GUIDE.md)** - Decision tree, performance comparison, configuration examples
351
277
 
352
278
  ## Enterprise Features
353
279
 
@@ -403,150 +329,50 @@ make test-ragas-sample
403
329
  # - Answer Relevance
404
330
  ```
405
331
 
406
- ### IRIS EMBEDDING: 346x Faster Auto-Vectorization
332
+ ### IRIS EMBEDDING: Auto-Vectorization
407
333
 
408
- **Automatic embedding generation with model caching** - eliminates the 720x slowdown from repeated model loading:
334
+ **Automatic embedding generation with model caching** - eliminates repeated model loading overhead for faster document vectorization.
409
335
 
410
- ```python
411
- from iris_rag import create_pipeline
412
-
413
- # Enable IRIS EMBEDDING support (Feature 051)
414
- pipeline = create_pipeline(
415
- 'basic',
416
- embedding_config='medical_embeddings_v1' # IRIS EMBEDDING config name
417
- )
418
-
419
- # Documents auto-vectorize on INSERT with cached models
420
- pipeline.load_documents(documents=docs)
421
-
422
- # Queries auto-vectorize using same cached model
423
- result = pipeline.query("What is diabetes?", top_k=5)
424
- ```
425
-
426
- **Performance Achievements:**
427
- - ⚡ **346x speedup** - 1,746 documents vectorized in 3.5 seconds (vs 20 minutes baseline)
428
- - 🎯 **95% cache hit rate** - Models stay in memory across requests
429
- - 🚀 **50ms average latency** - Cache hits complete in <100ms
430
- - 💾 **Automatic fallback** - GPU OOM? Automatically falls back to CPU
431
-
432
- **Configuration Example:**
336
+ **Key Features**:
337
+ - ⚡ Intelligent model caching - models stay in memory across operations
338
+ - 🎯 Multi-field vectorization - combine title, abstract, and content fields
339
+ - 💾 Automatic device selection - GPU, Apple Silicon (MPS), or CPU fallback
433
340
 
434
341
  ```python
435
- from iris_rag.embeddings.iris_embedding import configure_embedding
436
-
437
- # Create embedding configuration
438
- config = configure_embedding(
439
- name="medical_embeddings_v1",
440
- model_name="sentence-transformers/all-MiniLM-L6-v2",
441
- device_preference="auto", # auto, cuda, mps, cpu
442
- batch_size=32,
443
- enable_entity_extraction=True,
444
- entity_types=["Disease", "Medication", "Symptom"]
445
- )
446
-
447
- # Use with any pipeline
448
- pipeline = create_pipeline('basic', embedding_config='medical_embeddings_v1')
449
- ```
450
-
451
- **Multi-Field Vectorization:**
452
-
453
- Combine multiple document fields into a single embedding:
454
-
455
- ```python
456
- from iris_rag.core.models import Document
457
-
458
- # Document with multiple content fields
459
- doc = Document(
460
- page_content="", # Will be auto-filled from metadata
461
- metadata={
462
- "title": "Type 2 Diabetes Treatment",
463
- "abstract": "A comprehensive review of treatment approaches...",
464
- "conclusions": "Insulin therapy combined with lifestyle changes..."
465
- }
466
- )
342
+ from iris_vector_rag import create_pipeline
467
343
 
468
- # Configure multi-field embedding
344
+ # Enable IRIS EMBEDDING support
469
345
  pipeline = create_pipeline(
470
346
  'basic',
471
- embedding_config='paper_embeddings',
472
- multi_field_source=['title', 'abstract', 'conclusions'] # Concatenate fields
347
+ embedding_config='medical_embeddings_v1'
473
348
  )
474
349
 
475
- pipeline.load_documents(documents=[doc])
476
- # → Embedding generated from: "Type 2 Diabetes Treatment. A comprehensive review..."
350
+ # Documents auto-vectorize on INSERT
351
+ pipeline.load_documents(documents=docs)
477
352
  ```
478
353
 
479
- **When to Use IRIS EMBEDDING:**
480
- - ✅ Large document collections (>1000 documents)
481
- - ✅ Frequent re-indexing or incremental updates
482
- - ✅ Real-time vectorization requirements
483
- - ✅ Memory-constrained environments (model stays in memory)
484
- - ✅ Multi-field vectorization needs
485
-
486
- **Comparison:**
487
-
488
- | Method | 1,746 Docs | Model Loads | Cache Hit Rate |
489
- |--------|-----------|-------------|----------------|
490
- | **Manual** (baseline) | 20 minutes | 1,746 (every row) | 0% |
491
- | **IRIS EMBEDDING** | 3.5 seconds | 1 (cached) | 95% |
492
- | **Speedup** | **346x faster** | **1,746x fewer** | **95% efficient** |
354
+ 📖 **[Complete IRIS EMBEDDING Guide →](docs/IRIS_EMBEDDING_GUIDE.md)** - Configuration, performance tuning, multi-field vectorization, troubleshooting
493
355
 
494
356
  ## Model Context Protocol (MCP) Support
495
357
 
496
- **Expose RAG pipelines as MCP tools** for use with Claude Desktop and other MCP clients:
358
+ **Expose RAG pipelines as MCP tools** for Claude Desktop and other MCP clients - enables conversational RAG workflows where Claude queries your documents during conversations.
497
359
 
498
360
  ```bash
499
361
  # Start MCP server
500
- python -m iris_rag.mcp
501
-
502
- # Available MCP tools:
503
- # - rag_basic
504
- # - rag_basic_rerank
505
- # - rag_crag
506
- # - rag_multi_query_rrf
507
- # - rag_graphrag
508
- # - rag_hybrid_graphrag
509
- # - health_check
510
- # - list_tools
362
+ python -m iris_vector_rag.mcp
511
363
  ```
512
364
 
513
- Configure in Claude Desktop:
365
+ All pipelines available as MCP tools: `rag_basic`, `rag_basic_rerank`, `rag_crag`, `rag_graphrag`, `rag_multi_query_rrf`, `rag_pylate_colbert`.
514
366
 
515
- ```json
516
- {
517
- "mcpServers": {
518
- "iris-rag": {
519
- "command": "python",
520
- "args": ["-m", "iris_rag.mcp"],
521
- "env": {
522
- "OPENAI_API_KEY": "your-key"
523
- }
524
- }
525
- }
526
- }
527
- ```
367
+ 📖 **[Complete MCP Integration Guide →](docs/MCP_INTEGRATION.md)** - Claude Desktop setup, configuration, testing, production deployment
528
368
 
529
369
  ## Architecture Overview
530
370
 
531
- ```
532
- iris_rag/
533
- ├── core/ # Abstract base classes (RAGPipeline, VectorStore)
534
- ├── pipelines/ # Pipeline implementations
535
- │ ├── basic.py # BasicRAG
536
- │ ├── basic_rerank.py # Reranking pipeline
537
- │ ├── crag.py # Corrective RAG
538
- │ ├── multi_query_rrf.py # Multi-query with RRF
539
- │ ├── graphrag.py # Graph-based RAG
540
- │ └── hybrid_graphrag.py # Hybrid multi-modal
541
- ├── storage/ # Vector store implementations
542
- │ ├── vector_store_iris.py # IRIS vector store
543
- │ └── schema_manager.py # Schema management
544
- ├── mcp/ # Model Context Protocol server
545
- ├── api/ # Production REST API
546
- ├── services/ # Business logic (entity extraction, etc.)
547
- ├── config/ # Configuration management
548
- └── validation/ # Pipeline contract validation
549
- ```
371
+ **Framework-first design** with abstract base classes (`RAGPipeline`, `VectorStore`) and concrete implementations for 6 production-ready pipelines.
372
+
373
+ **Key Components**: Core abstractions, pipeline implementations, IRIS vector store, MCP server, REST API, validation framework.
374
+
375
+ 📖 **[Comprehensive Architecture Guide →](docs/architecture/COMPREHENSIVE_ARCHITECTURE_OVERVIEW.md)** - System design, component interactions, extension points
550
376
 
551
377
  ## Documentation
552
378
 
@@ -556,35 +382,16 @@ iris_rag/
556
382
  - **[API Reference](docs/API_REFERENCE.md)** - Detailed API documentation
557
383
  - **[Pipeline Guide](docs/PIPELINE_GUIDE.md)** - When to use each pipeline
558
384
  - **[MCP Integration](docs/MCP_INTEGRATION.md)** - Model Context Protocol setup
559
- - **[Production Deployment](docs/PRODUCTION_DEPLOYMENT.md)** - Deployment checklist
560
- - **[Development Guide](docs/DEVELOPMENT.md)** - Contributing and testing
561
-
562
- ## Performance Benchmarks
563
-
564
- **Native IRIS vector search delivers:**
565
-
566
- - 🚀 **50-100x faster** than traditional solutions for hybrid search
567
- - ⚡ **Sub-second queries** on millions of documents
568
- - 📊 **Linear scaling** with IRIS clustering
569
- - 💾 **10x less memory** than external vector databases
385
+ - **[Production Readiness](docs/PRODUCTION_READINESS_ASSESSMENT.md)** - Deployment checklist
570
386
 
571
387
  ## Testing & Quality
572
388
 
573
389
  ```bash
574
- # Run comprehensive test suite
575
- make test
576
-
577
- # Test specific categories
578
- pytest tests/unit/ # Unit tests (fast)
579
- pytest tests/integration/ # Integration tests (with IRIS)
580
- pytest tests/contract/ # API contract validation
581
-
582
- # Run with coverage
583
- pytest --cov=iris_rag --cov-report=html
390
+ make test # Run comprehensive test suite
391
+ pytest tests/unit/ # Unit tests
392
+ pytest tests/integration/ # Integration tests
584
393
  ```
585
394
 
586
- **For detailed testing documentation**, see [DEVELOPMENT.md](docs/DEVELOPMENT.md)
587
-
588
395
  ## Research & References
589
396
 
590
397
  This implementation is based on peer-reviewed research:
@@ -596,26 +403,14 @@ This implementation is based on peer-reviewed research:
596
403
 
597
404
  ## Contributing
598
405
 
599
- We welcome contributions! See [CONTRIBUTING.md](CONTRIBUTING.md) for:
600
-
601
- - Development setup
602
- - Testing guidelines
603
- - Code style and standards
604
- - Pull request process
406
+ We welcome contributions! See [CONTRIBUTING.md](docs/CONTRIBUTING.md) for development setup, testing guidelines, and pull request process.
605
407
 
606
408
  ## Community & Support
607
409
 
608
- - 💬 **Discussions**: [GitHub Discussions](https://github.com/intersystems-community/iris-rag-templates/discussions)
609
- - 🐛 **Issues**: [GitHub Issues](https://github.com/intersystems-community/iris-rag-templates/issues)
410
+ - 🐛 **Issues**: [GitHub Issues](https://github.com/intersystems-community/iris-vector-rag/issues)
610
411
  - 📖 **Documentation**: [Full Documentation](docs/)
611
412
  - 🏢 **Enterprise Support**: [InterSystems Support](https://www.intersystems.com/support/)
612
413
 
613
414
  ## License
614
415
 
615
416
  MIT License - see [LICENSE](LICENSE) for details.
616
-
617
- ---
618
-
619
- **Built with ❤️ by the InterSystems Community**
620
-
621
- *Powering intelligent applications with enterprise-grade RAG*