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.
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/PKG-INFO +26 -1
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/README.md +25 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/dspy_modules/entity_extraction_module.py +11 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/graphrag.py +52 -1
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/PKG-INFO +26 -1
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/pyproject.toml +1 -1
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/LICENSE +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/adapters/rag_templates_bridge.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/batch_utils.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/config.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/connection_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/connection_pool.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/database.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/database_schema_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/db_init_with_indexes.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/db_vector_utils.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/environment_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/huggingface_utils.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_client.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_connection_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_connection_pool.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_connector.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_dbapi_connector.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_index_utils.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_sql_utils.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/iris_stream_reader.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/llm_cache_config.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/llm_cache_iris.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/llm_cache_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/utils.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/common/vector_sql_utils.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/biomedical_question_generator.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/comparative_analysis_system.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/empirical_reporting.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/evaluation_orchestrator.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/execute_production_evaluation.py +0 -0
- {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
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/pmc_data_pipeline.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/production_evaluation_config.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/ragas_metrics_framework.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/real_production_evaluation.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/run_10k_evaluation.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/simple_test.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/statistical_evaluation_methodology.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/test_framework.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/test_iris_connectivity.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/test_small_scale_evaluation.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/true_e2e_evaluation.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/visualization_engine.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/cleanup_job.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/cli.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/main.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/mcp_routes.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/middleware/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/middleware/auth.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/middleware/logging.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/middleware/rate_limit.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/auth.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/errors.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/health.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/pipeline.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/quota.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/request.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/response.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/upload.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/models/websocket.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/document.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/health.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/pipeline.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/routes/query.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/services/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/services/auth_service.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/services/document_service.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/services/pipeline_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/websocket/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/websocket/connection.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/websocket/handlers.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/api/websocket/routes.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/backend_modes.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/default_config.yaml +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/embedding_config.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/config/pipeline_config_service.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/base.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/connection.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/exceptions.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/models.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/response_standardizer.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/validators.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/vector_store.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/core/vector_store_exceptions.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/dspy_modules/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/dspy_modules/batch_entity_extraction.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/embeddings/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/embeddings/entity_extractor.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/embeddings/iris_embedding.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/embeddings/manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/__main__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/bridge.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/cli.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/config.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/technique_handlers.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/tool_schemas.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/mcp/validation.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/knowledge_extractor.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/models.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/rag_integration.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/memory/temporal_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/loader.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/models.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/plugins/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/plugins/general_ontology.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/reasoner.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/cache_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/connection_pool.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/database_optimizer.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/hnsw_tuner.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/parallel_processor.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/performance_monitor.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/_hybrid_utils.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/basic.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/basic_rerank.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/colbert_pylate/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/colbert_pylate/pylate_pipeline.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/crag.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/factory.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/graphrag_merged.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/hybrid_graphrag.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/hybrid_graphrag_discovery.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/hybrid_graphrag_retrieval.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/iris_global_graphrag.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/multi_query_rrf.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/plugins/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/plugins/interface.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/services/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/services/entity_extraction.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/services/storage.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/clob_handler.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/enterprise_storage.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/hybrid_schema_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/iris_embedding_ops.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/schema_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/storage/vector_store_iris.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/backend_manager.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/connection_pool.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/exceptions.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/iris_devtools_bridge.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/testing/validators.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/utils/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/utils/module_loader.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/utils/project_root.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/utils/token_counter.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/__init__.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/factory.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/orchestrator.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/requirements.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/validation/validator.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/SOURCES.txt +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/dependency_links.txt +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/entry_points.txt +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/requires.txt +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/top_level.txt +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/setup.cfg +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_comprehensive_pipeline_validation_e2e.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_comprehensive_pipeline_validation_e2e_fixed.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_enterprise_storage.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_entity_extraction_service.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_hybrid_graphrag_functional.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_index_ensure.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_mcp_integration.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_mcp_server_integration.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_ontology_loader.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_ontology_support.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_performance_monitor_comprehensive.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_performance_monitor_working.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_pylate_colbert_pipeline.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_schema_manager_bugs.py +0 -0
- {iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_temporal_manager.py +0 -0
- {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.
|
|
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:
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/dspy_modules/entity_extraction_module.py
RENAMED
|
@@ -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
|
-
|
|
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.
|
|
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.
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/comparative_analysis_system.py
RENAMED
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/evaluation_orchestrator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/production_evaluation_config.py
RENAMED
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/ragas_metrics_framework.py
RENAMED
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/real_production_evaluation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/test_iris_connectivity.py
RENAMED
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/test_small_scale_evaluation.py
RENAMED
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/evaluation_framework/visualization_engine.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/dspy_modules/batch_entity_extraction.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/ontology/plugins/general_ontology.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/optimization/performance_monitor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/colbert_pylate/__init__.py
RENAMED
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/colbert_pylate/pylate_pipeline.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/hybrid_graphrag_discovery.py
RENAMED
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_rag/pipelines/hybrid_graphrag_retrieval.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/iris_vector_rag.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_comprehensive_pipeline_validation_e2e.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{iris_vector_rag-0.3.1 → iris_vector_rag-0.3.2}/tests/test_performance_monitor_comprehensive.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|