ragaai-catalyst 2.2.4.1b8__tar.gz → 2.2.4.1b9__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 (221) hide show
  1. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/.gitignore +1 -77
  2. {ragaai_catalyst-2.2.4.1b8/ragaai_catalyst.egg-info → ragaai_catalyst-2.2.4.1b9}/PKG-INFO +1 -1
  3. ragaai_catalyst-2.2.4.1b8/quickstart.md → ragaai_catalyst-2.2.4.1b9/Quickstart.md +13 -8
  4. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/pyproject.toml +1 -1
  5. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/upload/session_manager.py +27 -3
  6. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/upload/upload_agentic_traces.py +10 -9
  7. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/upload/upload_code.py +9 -8
  8. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9/ragaai_catalyst.egg-info}/PKG-INFO +1 -1
  9. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst.egg-info/SOURCES.txt +1 -1
  10. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  11. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  12. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  13. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/.github/workflows/ci.yml +0 -0
  14. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/.gitmodules +0 -0
  15. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/LICENSE +0 -0
  16. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/README.md +0 -0
  17. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/agentic_tracing.md +0 -0
  18. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/dataset_management.md +0 -0
  19. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/autheticate.gif +0 -0
  20. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/create_project.gif +0 -0
  21. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/custom_metrics.png +0 -0
  22. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/dataset.gif +0 -0
  23. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/dataset.png +0 -0
  24. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/evaluation.gif +0 -0
  25. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/evaluation.png +0 -0
  26. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/guardrails.png +0 -0
  27. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/last_main.png +0 -0
  28. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/main.png +0 -0
  29. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/projects_new.png +0 -0
  30. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/img/trace_comp.png +0 -0
  31. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/prompt_management.md +0 -0
  32. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/docs/trace_management.md +0 -0
  33. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/all_llm_provider/all_llm_provider.py +0 -0
  34. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/all_llm_provider/config.py +0 -0
  35. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/all_llm_provider/run_all_llm_provider.py +0 -0
  36. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/crewai/scifi_writer/README.md +0 -0
  37. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/crewai/scifi_writer/requirements.txt +0 -0
  38. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/crewai/scifi_writer/sample.env +0 -0
  39. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/crewai/scifi_writer/scifi_writer.py +0 -0
  40. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/custom_agents/travel_agent/agents.py +0 -0
  41. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/custom_agents/travel_agent/config.py +0 -0
  42. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/custom_agents/travel_agent/main.py +0 -0
  43. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/custom_agents/travel_agent/tools.py +0 -0
  44. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/haystack/news_fetching/README.md +0 -0
  45. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/haystack/news_fetching/news_fetching.py +0 -0
  46. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/haystack/news_fetching/requirements.txt +0 -0
  47. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langchain/medical_rag/data/medical_texts/handbook1.pdf +0 -0
  48. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langchain/medical_rag/data/medical_texts/handbook2.pdf +0 -0
  49. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langchain/medical_rag/data/symptom_disease_map.csv +0 -0
  50. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langchain/medical_rag/diagnosis_agent.py +0 -0
  51. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langchain/medical_rag/requirements.txt +0 -0
  52. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langchain/medical_rag/sample.env +0 -0
  53. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langgraph/personal_research_assistant/README.md +0 -0
  54. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langgraph/personal_research_assistant/requirements.txt +0 -0
  55. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langgraph/personal_research_assistant/research_assistant.py +0 -0
  56. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/langgraph/personal_research_assistant/sample.env +0 -0
  57. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/llamaindex_examples/legal_research_rag/legal_data/cases/ca_overtime_2021.pdf +0 -0
  58. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/llamaindex_examples/legal_research_rag/legal_data/cases/fl_ada_2022.pdf +0 -0
  59. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/llamaindex_examples/legal_research_rag/legal_data/statutes.csv +0 -0
  60. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/llamaindex_examples/legal_research_rag/legal_rag.py +0 -0
  61. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/llamaindex_examples/legal_research_rag/requirements.txt +0 -0
  62. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/llamaindex_examples/legal_research_rag/sample.env +0 -0
  63. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/openai_agents_sdk/email_data_extraction_agent/README.md +0 -0
  64. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/openai_agents_sdk/email_data_extraction_agent/data_extraction_email.py +0 -0
  65. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/openai_agents_sdk/email_data_extraction_agent/requirements.txt +0 -0
  66. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/openai_agents_sdk/email_data_extraction_agent/sample.env +0 -0
  67. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/openai_agents_sdk/youtube_summary_agent/README.md +0 -0
  68. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/openai_agents_sdk/youtube_summary_agent/requirements.txt +0 -0
  69. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/openai_agents_sdk/youtube_summary_agent/sample.env +0 -0
  70. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/openai_agents_sdk/youtube_summary_agent/youtube_summary_agent.py +0 -0
  71. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/pii_masking_example/llamaindex_agentic_fastapi/app.py +0 -0
  72. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/pii_masking_example/llamaindex_agentic_fastapi/app_presidio.py +0 -0
  73. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/pii_masking_example/llamaindex_agentic_fastapi/request.py +0 -0
  74. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/pii_masking_example/llamaindex_agentic_fastapi/requirements.txt +0 -0
  75. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/smolagents/most_upvoted_paper/README.md +0 -0
  76. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/smolagents/most_upvoted_paper/most_upvoted_paper.py +0 -0
  77. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/smolagents/most_upvoted_paper/requirements.txt +0 -0
  78. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/examples/smolagents/most_upvoted_paper/sample.env +0 -0
  79. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/__init__.py +0 -0
  80. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/_version.py +0 -0
  81. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/dataset.py +0 -0
  82. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/evaluation.py +0 -0
  83. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/experiment.py +0 -0
  84. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/guard_executor.py +0 -0
  85. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/guardrails_manager.py +0 -0
  86. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/internal_api_completion.py +0 -0
  87. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/prompt_manager.py +0 -0
  88. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/proxy_call.py +0 -0
  89. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/ragaai_catalyst.py +0 -0
  90. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/__init__.py +0 -0
  91. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/config/detectors.toml +0 -0
  92. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/data_generator/scenario_generator.py +0 -0
  93. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/data_generator/test_case_generator.py +0 -0
  94. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/evaluator.py +0 -0
  95. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/llm_generator.py +0 -0
  96. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/llm_generator_old.py +0 -0
  97. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/red_teaming.py +0 -0
  98. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/requirements.txt +0 -0
  99. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/tests/grok.ipynb +0 -0
  100. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/tests/stereotype.ipynb +0 -0
  101. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/upload_result.py +0 -0
  102. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/utils/issue_description.py +0 -0
  103. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming/utils/rt.png +0 -0
  104. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/redteaming_old.py +0 -0
  105. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/synthetic_data_generation.py +0 -0
  106. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/__init__.py +0 -0
  107. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/README.md +0 -0
  108. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/__init__.py +0 -0
  109. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/data/__init__.py +0 -0
  110. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/data/data_structure.py +0 -0
  111. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tests/FinancialAnalysisSystem.ipynb +0 -0
  112. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tests/GameActivityEventPlanner.ipynb +0 -0
  113. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tests/TravelPlanner.ipynb +0 -0
  114. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tests/__init__.py +0 -0
  115. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tests/ai_travel_agent.py +0 -0
  116. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tests/unique_decorator_test.py +0 -0
  117. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/__init__.py +0 -0
  118. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/agent_tracer.py +0 -0
  119. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/base.py +0 -0
  120. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/custom_tracer.py +0 -0
  121. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/langgraph_tracer.py +0 -0
  122. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/llm_tracer.py +0 -0
  123. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/main_tracer.py +0 -0
  124. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/network_tracer.py +0 -0
  125. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/tool_tracer.py +0 -0
  126. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/tracers/user_interaction_tracer.py +0 -0
  127. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/upload/__init__.py +0 -0
  128. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/upload/trace_uploader.py +0 -0
  129. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/upload/upload_local_metric.py +0 -0
  130. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/__init__.py +0 -0
  131. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/api_utils.py +0 -0
  132. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/create_dataset_schema.py +0 -0
  133. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/file_name_tracker.py +0 -0
  134. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/generic.py +0 -0
  135. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/get_user_trace_metrics.py +0 -0
  136. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/llm_utils.py +0 -0
  137. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/model_costs.json +0 -0
  138. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/span_attributes.py +0 -0
  139. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/supported_llm_provider.toml +0 -0
  140. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/system_monitor.py +0 -0
  141. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/trace_utils.py +0 -0
  142. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/unique_decorator.py +0 -0
  143. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/agentic_tracing/utils/zip_list_of_unique_files.py +0 -0
  144. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/distributed.py +0 -0
  145. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/exporters/__init__.py +0 -0
  146. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/exporters/dynamic_trace_exporter.py +0 -0
  147. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/exporters/file_span_exporter.py +0 -0
  148. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/exporters/raga_exporter.py +0 -0
  149. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/exporters/ragaai_trace_exporter.py +0 -0
  150. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/instrumentators/__init__.py +0 -0
  151. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/langchain_callback.py +0 -0
  152. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/llamaindex_callback.py +0 -0
  153. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/llamaindex_instrumentation.py +0 -0
  154. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/tracer.py +0 -0
  155. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/upload_traces.py +0 -0
  156. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/__init__.py +0 -0
  157. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/convert_langchain_callbacks_output.py +0 -0
  158. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/convert_llama_instru_callback.py +0 -0
  159. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/extraction_logic_llama_index.py +0 -0
  160. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/langchain_tracer_extraction_logic.py +0 -0
  161. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/model_prices_and_context_window_backup.json +0 -0
  162. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/rag_extraction_logic_final.py +0 -0
  163. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/rag_trace_json_converter.py +0 -0
  164. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/trace_json_converter.py +0 -0
  165. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/tracers/utils/utils.py +0 -0
  166. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst/utils.py +0 -0
  167. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst.egg-info/dependency_links.txt +0 -0
  168. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst.egg-info/requires.txt +0 -0
  169. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/ragaai_catalyst.egg-info/top_level.txt +0 -0
  170. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/requirements.txt +0 -0
  171. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/setup.cfg +0 -0
  172. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/test_report_20250407_183101.txt +0 -0
  173. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/README.md +0 -0
  174. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/environment.yml +0 -0
  175. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/__init__.py +0 -0
  176. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/all_llm_provider/all_llm_provider.py +0 -0
  177. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/all_llm_provider/config.py +0 -0
  178. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/all_llm_provider/test_all_llm_provider.py +0 -0
  179. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/crewai/scifi_writer/sci_fi_story.md +0 -0
  180. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/crewai/scifi_writer/scifi_writer.py +0 -0
  181. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/crewai/scifi_writer/test_scifi_writer.py +0 -0
  182. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/custom_agents/travel_agent/agents.py +0 -0
  183. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/custom_agents/travel_agent/config.py +0 -0
  184. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/custom_agents/travel_agent/main.py +0 -0
  185. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/custom_agents/travel_agent/test_travel_agent.py +0 -0
  186. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/custom_agents/travel_agent/tools.py +0 -0
  187. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/haystack/news_fetching/news_fetching.py +0 -0
  188. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/haystack/news_fetching/test_news_fetching.py +0 -0
  189. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/langchain/medical_rag/data/medical_texts/handbook1.pdf +0 -0
  190. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/langchain/medical_rag/data/medical_texts/handbook2.pdf +0 -0
  191. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/langchain/medical_rag/data/symptom_disease_map.csv +0 -0
  192. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/langchain/medical_rag/diagnosis_agent.py +0 -0
  193. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/langchain/medical_rag/test_diagnosis_agent.py +0 -0
  194. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/langgraph/personal_research_assistant/research_assistant.py +0 -0
  195. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/langgraph/personal_research_assistant/test_research_assistant.py +0 -0
  196. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/llamaindex_examples/legal_research_rag/legal_data/cases/ca_overtime_2021.pdf +0 -0
  197. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/llamaindex_examples/legal_research_rag/legal_data/cases/fl_ada_2022.pdf +0 -0
  198. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/llamaindex_examples/legal_research_rag/legal_data/statutes.csv +0 -0
  199. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/llamaindex_examples/legal_research_rag/legal_rag.py +0 -0
  200. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/llamaindex_examples/legal_research_rag/test_legal_rag.py +0 -0
  201. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/smolagents/most_upvoted_paper/most_upvoted_paper.py +0 -0
  202. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/smolagents/most_upvoted_paper/paper.pdf +0 -0
  203. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/smolagents/most_upvoted_paper/test_most_upvoted_paper.py +0 -0
  204. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/test_utils/get_components.py +0 -0
  205. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/examples/test_utils/get_trace_data.py +0 -0
  206. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/run_pytest_and_print_and_save_results.py +0 -0
  207. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/table_result.png +0 -0
  208. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_base_tracer_add_metrics.py +0 -0
  209. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_base_tracer_metrics.py +0 -0
  210. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_data/util_synthetic_data_doc.pdf +0 -0
  211. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_data/util_synthetic_data_invalid.csv +0 -0
  212. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_data/util_synthetic_data_valid.csv +0 -0
  213. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_data/util_test_dataset.csv +0 -0
  214. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_data/util_test_langchain_tracing.pdf +0 -0
  215. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_dataset.py +0 -0
  216. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_evaluation.py +0 -0
  217. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_evaluation_metrics.py +0 -0
  218. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_prompt_manager.py +0 -0
  219. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_synthetic_data_generation.py +0 -0
  220. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests/test_catalyst/test_the_configuration.py +0 -0
  221. {ragaai_catalyst-2.2.4.1b8 → ragaai_catalyst-2.2.4.1b9}/tests_requirements.txt +0 -0
@@ -166,80 +166,4 @@ cython_debug/
166
166
  # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
167
167
  # and can be added to the global gitignore or merged into this file. For a more nuclear
168
168
  # option (not recommended) you can uncomment the following to ignore the entire idea folder.
169
- #.idea/
170
-
171
- LOAD_TEST_README.md
172
- RAG_LOAD_TEST_README.md
173
- advanced_agent.py
174
- ai_document_061023_2.pdf
175
- catalyst_v2.ipynb
176
- chroma_db/
177
- clean_multi_dataset_example.py
178
- custom_cost_bug.ipynb
179
- custom_cost_bug.py
180
- data/
181
- deephealth_sample_50_data.csv
182
- dh_full_test.ipynb
183
- dh_full_test.py
184
- diagnosis_agent.py
185
- direct_anthropic.json
186
- direct_llm_call_test.py
187
- direct_llm_examples.py
188
- direct_opanai.json
189
- docker_gt_dataset1.csv
190
- ex_google_adk.py
191
- fastapi_requirements.txt
192
- fastapi_server.py
193
- fastapi_server_simple.py
194
- final_dataset_routing_demo.py
195
- google_adk_agent_ex.py
196
- google_adk_agent_user_data.py
197
- google_adk_storyflow_agent.py
198
- langchain_rag.py
199
- langchain_sample_trace.json
200
- legal_rag.py
201
- llamaindex_rag.py
202
- load_test_streaming.py
203
- load_test_v1.py
204
- load_test_v2.py
205
- locust_mini_endpoint.py
206
- locust_nano_endpoint.py
207
- locustfile.py
208
- locustfile_fixed.py
209
- locustfile_rag.py
210
- masking_example.py
211
- minio-file.json
212
- model_gemini_15_flash_002_w_stream.json
213
- model_gemini_15_flash_002_wo_stream.json
214
- model_gpt_41_w_stream.json
215
- model_gpt_41_wo_stream.json
216
- model_gpt_4o_mini_w_stream.json
217
- model_gpt_4o_mini_wo_stream.json
218
- model_prices_and_context_window_backup.json
219
- multi_llm_test.py
220
- multi_tool_agent/
221
- multi_tracer_test.py
222
- new_feature_test.ipynb
223
- pydantic_test.ipynb
224
- rag_agent_traces.json
225
- rag_agent_traces_adk_agent.json
226
- rag_agent_traces_with_streaming.json
227
- rag_agent_traces_wo_streaming.json
228
- rag_extraction_logic_final.py
229
- ragaai_catalyst/tracers/processors/__init__.py
230
- research_assistant.py
231
- run_rag_load_test.py
232
- sci_fi_story.md
233
- scifi_writer.py
234
- set_dataset_name_test.py
235
- simple_rag_app.py
236
- stress_test_langchain.py
237
- test.ipynb
238
- test_2.py
239
- test_dataset_routing.py
240
- test_fastapi.py
241
- test_simple_langchain.py
242
- test_token_refresh.py
243
- trace_upload_analysis.md
244
- updated_pydantic_test.py
245
- uplaod_numerical_col_csv.py
169
+ #.idea/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ragaai_catalyst
3
- Version: 2.2.4.1b8
3
+ Version: 2.2.4.1b9
4
4
  Summary: RAGA AI CATALYST
5
5
  Author-email: Kiran Scaria <kiran.scaria@raga.ai>, Kedar Gaikwad <kedar.gaikwad@raga.ai>, Dushyant Mahajan <dushyant.mahajan@raga.ai>, Siddhartha Kosti <siddhartha.kosti@raga.ai>, Ritika Goel <ritika.goel@raga.ai>, Vijay Chaurasia <vijay.chaurasia@raga.ai>, Tushar Kumar <tushar.kumar@raga.ai>, Rishabh Pandey <rishabh.pandey@raga.ai>, Jyotsana C G <jyotsana@raga.ai>
6
6
  Requires-Python: <=3.13.2,>=3.10
@@ -1,4 +1,4 @@
1
- # Quickstart
1
+ # Quickstart | RagaAI Catalyst
2
2
 
3
3
  ## **1. Install RagaAI Catalyst**
4
4
 
@@ -17,8 +17,6 @@ pip install ragaai-catalyst
17
17
  2. Navigate to **Profile Settings** → **Authentication**.
18
18
  3. Click **Generate New Key** to obtain your **Access Key** and **Secret Key**.
19
19
 
20
- ![How to generate authentication keys](docs/img/autheticate.gif)
21
-
22
20
  ### **Initialize the SDK**
23
21
 
24
22
  To begin using Catalyst, initialize it as follows:
@@ -33,6 +31,7 @@ catalyst = RagaAICatalyst(
33
31
  )
34
32
  ```
35
33
 
34
+
36
35
  ## **3. Create Your First Project**
37
36
 
38
37
  Create a new project and choose a use case from the available options:
@@ -47,8 +46,6 @@ project = catalyst.create_project(
47
46
  # List available use cases
48
47
  print(catalyst.project_use_cases())
49
48
  ```
50
- ![Projects](docs/img/create_project.gif)
51
-
52
49
 
53
50
  ### **Add a Dataset**
54
51
  Initialize the dataset manager and create a dataset from a CSV file, DataFrame, or JSONl file.
@@ -74,7 +71,7 @@ dataset_manager.create_from_csv(
74
71
  # View dataset schema
75
72
  print(dataset_manager.get_schema_mapping())
76
73
  ```
77
- ![Dataset](docs/img/dataset.gif)
74
+
78
75
 
79
76
  ## **4. Trace Your Application**
80
77
 
@@ -147,7 +144,7 @@ tracer.stop()
147
144
  # Verify data capture
148
145
  print(tracer.get_upload_status())
149
146
  ```
150
- ![Tracing](docs/img/last_main.png)
147
+
151
148
 
152
149
 
153
150
  ## **5. Evaluation Framework**
@@ -192,4 +189,12 @@ evaluation.add_metrics(
192
189
  print(f"Status: {evaluation.get_status()}")
193
190
  print(f"Results: {evaluation.get_results()}")
194
191
  ```
195
- ![Evaluation](docs/img/evaluation.gif)
192
+
193
+
194
+
195
+ ## **Next Steps**
196
+ - **Explore the Dashboard:** Visualize metrics and insights in the RagaAI Web UI.
197
+
198
+
199
+
200
+ **Version:** 1.0.0 | **Last Updated:** Mar 2025
@@ -8,7 +8,7 @@ description = "RAGA AI CATALYST"
8
8
  readme = "README.md"
9
9
  requires-python = ">=3.10,<=3.13.2"
10
10
  # license = {file = "LICENSE"}
11
- version = "2.2.4.1.beta.8"
11
+ version = "2.2.4.1.beta.9"
12
12
  authors = [
13
13
  {name = "Kiran Scaria", email = "kiran.scaria@raga.ai"},
14
14
  {name = "Kedar Gaikwad", email = "kedar.gaikwad@raga.ai"},
@@ -6,6 +6,7 @@ from requests.adapters import HTTPAdapter
6
6
  from urllib3.util.retry import Retry
7
7
  from urllib3.exceptions import PoolError, MaxRetryError, NewConnectionError
8
8
  from requests.exceptions import ConnectionError, Timeout
9
+ from http.client import RemoteDisconnected
9
10
  from ragaai_catalyst import RagaAICatalyst
10
11
  import requests
11
12
 
@@ -92,11 +93,11 @@ class SessionManager:
92
93
  for i in range(num_connections):
93
94
  try:
94
95
  # Make a lightweight HEAD request to the healthcheck endpoint to warm up the connection
95
- response = self._session.head(healthcheck_url, timeout=5)
96
+ response = self._session.head(healthcheck_url, timeout=10)
96
97
  logger.info(f"Warmup connection {i+1}: Status {response.status_code}")
97
98
  except Exception as e:
98
- logger.warn(f"Warmup connection {i+1} failed (this is normal): {e}")
99
- # Ignore failures during warmup as they're expected
99
+ logger.warning(f"Warmup connection {i+1} failed (this may be normal): {e}")
100
+ # Ignore other failures during warmup as they're expected
100
101
  continue
101
102
 
102
103
  logger.info("Connection pool warmup completed")
@@ -118,6 +119,8 @@ class SessionManager:
118
119
  logger.error(f"Connection pool exhausted during {operation_name}: {e}")
119
120
  elif isinstance(e, NewConnectionError):
120
121
  logger.error(f"Failed to establish new connection during {operation_name}: {e}")
122
+ elif isinstance(e, RemoteDisconnected):
123
+ logger.error(f"Remote connection closed unexpectedly during {operation_name}: {e}")
121
124
  elif isinstance(e, ConnectionError):
122
125
  logger.error(f"Connection error during {operation_name}: {e}")
123
126
  elif isinstance(e, Timeout):
@@ -125,6 +128,27 @@ class SessionManager:
125
128
  else:
126
129
  logger.error(f"Unexpected error during {operation_name}: {e}")
127
130
 
131
+ def make_request_with_retry(self, method, url, **kwargs):
132
+ """
133
+ Make HTTP request with additional retry logic for RemoteDisconnected errors
134
+ that may not be caught by urllib3's retry mechanism.
135
+ """
136
+ max_retries = 3
137
+ for attempt in range(max_retries):
138
+ try:
139
+ response = self._session.request(method, url, **kwargs)
140
+ return response
141
+ except (RemoteDisconnected, ConnectionError) as e:
142
+ logger.warning(f"Connection error on attempt {attempt + 1}/{max_retries}: {e}")
143
+ if attempt == max_retries - 1:
144
+ # Re-raise the exception on the last attempt
145
+ raise
146
+ # Wait before retrying (exponential backoff)
147
+ import time
148
+ wait_time = 2 ** attempt
149
+ logger.info(f"Retrying in {wait_time} seconds...")
150
+ time.sleep(wait_time)
151
+
128
152
 
129
153
  # Global session manager instance
130
154
  logger.info("Creating global SessionManager instance")
@@ -6,6 +6,7 @@ import time
6
6
  from urllib.parse import urlparse, urlunparse
7
7
  from urllib3.exceptions import PoolError, MaxRetryError, NewConnectionError
8
8
  from requests.exceptions import ConnectionError, Timeout, RequestException
9
+ from http.client import RemoteDisconnected
9
10
  from .session_manager import session_manager
10
11
 
11
12
  import requests
@@ -51,7 +52,7 @@ class UploadAgenticTraces:
51
52
  start_time = time.time()
52
53
  endpoint = f"{self.base_url}/v1/llm/presigned-url"
53
54
  # Changed to POST from GET
54
- response = session_manager.session.request(
55
+ response = session_manager.make_request_with_retry(
55
56
  "POST", endpoint, headers=headers, data=payload, timeout=self.timeout
56
57
  )
57
58
  elapsed_ms = (time.time() - start_time) * 1000
@@ -65,7 +66,7 @@ class UploadAgenticTraces:
65
66
  return presignedurl
66
67
  else:
67
68
  # If POST fails, try GET
68
- response = session_manager.session.request(
69
+ response = session_manager.make_request_with_retry(
69
70
  "GET", endpoint, headers=headers, data=payload, timeout=self.timeout
70
71
  )
71
72
  elapsed_ms = (time.time() - start_time) * 1000
@@ -86,7 +87,7 @@ class UploadAgenticTraces:
86
87
  "Authorization": f"Bearer {token}",
87
88
  "X-Project-Name": self.project_name,
88
89
  }
89
- response = session_manager.session.request(
90
+ response = session_manager.make_request_with_retry(
90
91
  "POST",
91
92
  endpoint,
92
93
  headers=headers,
@@ -113,7 +114,7 @@ class UploadAgenticTraces:
113
114
  f"Error while getting presigned url: {response.json()['message']}"
114
115
  )
115
116
  return None
116
- except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout) as e:
117
+ except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout, RemoteDisconnected) as e:
117
118
  session_manager.handle_request_exceptions(e, "getting presigned URL")
118
119
  return None
119
120
  except RequestException as e:
@@ -152,7 +153,7 @@ class UploadAgenticTraces:
152
153
  return False
153
154
  try:
154
155
  start_time = time.time()
155
- response = session_manager.session.request(
156
+ response = session_manager.make_request_with_retry(
156
157
  "PUT", presignedUrl, headers=headers, data=payload, timeout=self.timeout
157
158
  )
158
159
  elapsed_ms = (time.time() - start_time) * 1000
@@ -162,7 +163,7 @@ class UploadAgenticTraces:
162
163
  if response.status_code != 200 or response.status_code != 201:
163
164
  return response, response.status_code
164
165
  return True
165
- except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout) as e:
166
+ except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout, RemoteDisconnected) as e:
166
167
  session_manager.handle_request_exceptions(e, "uploading trace to presigned URL")
167
168
  return False
168
169
  except RequestException as e:
@@ -185,7 +186,7 @@ class UploadAgenticTraces:
185
186
  try:
186
187
  start_time = time.time()
187
188
  endpoint = f"{self.base_url}/v1/llm/insert/trace"
188
- response = session_manager.session.request(
189
+ response = session_manager.make_request_with_retry(
189
190
  "POST", endpoint, headers=headers, data=payload, timeout=self.timeout
190
191
  )
191
192
  elapsed_ms = (time.time() - start_time) * 1000
@@ -203,7 +204,7 @@ class UploadAgenticTraces:
203
204
  "Content-Type": "application/json",
204
205
  "X-Project-Name": self.project_name,
205
206
  }
206
- response = session_manager.session.request(
207
+ response = session_manager.make_request_with_retry(
207
208
  "POST",
208
209
  endpoint,
209
210
  headers=headers,
@@ -223,7 +224,7 @@ class UploadAgenticTraces:
223
224
  else:
224
225
  logger.error(f"Error while inserting traces: {response.json()['message']}")
225
226
  return False
226
- except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout) as e:
227
+ except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout, RemoteDisconnected) as e:
227
228
  session_manager.handle_request_exceptions(e, "inserting traces")
228
229
  return False
229
230
  except RequestException as e:
@@ -6,6 +6,7 @@ import json
6
6
  from urllib.parse import urlparse, urlunparse
7
7
  from urllib3.exceptions import PoolError, MaxRetryError, NewConnectionError
8
8
  from requests.exceptions import ConnectionError, Timeout, RequestException
9
+ from http.client import RemoteDisconnected
9
10
 
10
11
  import requests
11
12
 
@@ -71,7 +72,7 @@ def _fetch_dataset_code_hashes(project_name, dataset_name, base_url=None, timeou
71
72
  url_base = base_url if base_url is not None else RagaAICatalyst.BASE_URL
72
73
  start_time = time.time()
73
74
  endpoint = f"{url_base}/v2/llm/dataset/code?datasetName={dataset_name}"
74
- response = session_manager.session.request(
75
+ response = session_manager.make_request_with_retry(
75
76
  "GET", endpoint, headers=headers, data=payload, timeout=timeout
76
77
  )
77
78
  elapsed_ms = (time.time() - start_time) * 1000
@@ -88,7 +89,7 @@ def _fetch_dataset_code_hashes(project_name, dataset_name, base_url=None, timeou
88
89
  "Authorization": f"Bearer {os.getenv('RAGAAI_CATALYST_TOKEN')}",
89
90
  "X-Project-Name": project_name,
90
91
  }
91
- response = session_manager.session.request(
92
+ response = session_manager.make_request_with_retry(
92
93
  "GET", endpoint, headers=headers, data=payload, timeout=timeout
93
94
  )
94
95
  elapsed_ms = (time.time() - start_time) * 1000
@@ -101,7 +102,7 @@ def _fetch_dataset_code_hashes(project_name, dataset_name, base_url=None, timeou
101
102
  else:
102
103
  logger.error(f"Error while fetching dataset code hashes: {response.json()['message']}")
103
104
  return None
104
- except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout) as e:
105
+ except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout, RemoteDisconnected) as e:
105
106
  session_manager.handle_request_exceptions(e, "fetching dataset code hashes")
106
107
  return None
107
108
  except RequestException as e:
@@ -213,7 +214,7 @@ def _put_zip_presigned_url(project_name, presignedUrl, filename, timeout=120):
213
214
  payload = f.read()
214
215
 
215
216
  start_time = time.time()
216
- response = session_manager.session.request(
217
+ response = session_manager.make_request_with_retry(
217
218
  "PUT", presignedUrl, headers=headers, data=payload, timeout=timeout
218
219
  )
219
220
  elapsed_ms = (time.time() - start_time) * 1000
@@ -223,7 +224,7 @@ def _put_zip_presigned_url(project_name, presignedUrl, filename, timeout=120):
223
224
  if response.status_code not in [200, 201]:
224
225
  return response, response.status_code
225
226
  return True
226
- except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout) as e:
227
+ except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout, RemoteDisconnected) as e:
227
228
  session_manager.handle_request_exceptions(e, "uploading zip to presigned URL")
228
229
  return False
229
230
  except RequestException as e:
@@ -251,7 +252,7 @@ def _insert_code(
251
252
  url_base = base_url if base_url is not None else RagaAICatalyst.BASE_URL
252
253
  start_time = time.time()
253
254
  endpoint = f"{url_base}/v2/llm/dataset/code"
254
- response = session_manager.session.request(
255
+ response = session_manager.make_request_with_retry(
255
256
  "POST", endpoint, headers=headers, data=payload, timeout=timeout
256
257
  )
257
258
  elapsed_ms = (time.time() - start_time) * 1000
@@ -269,7 +270,7 @@ def _insert_code(
269
270
  "Content-Type": "application/json",
270
271
  "Authorization": f"Bearer {token}",
271
272
  }
272
- response = session_manager.session.request(
273
+ response = session_manager.make_request_with_retry(
273
274
  "POST", endpoint, headers=headers, data=payload, timeout=timeout
274
275
  )
275
276
  elapsed_ms = (time.time() - start_time) * 1000
@@ -285,7 +286,7 @@ def _insert_code(
285
286
  else:
286
287
  logger.error(f"Failed to insert code: {response.json()['message']}")
287
288
  return None
288
- except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout) as e:
289
+ except (PoolError, MaxRetryError, NewConnectionError, ConnectionError, Timeout, RemoteDisconnected) as e:
289
290
  session_manager.handle_request_exceptions(e, "inserting code")
290
291
  return None
291
292
  except RequestException as e:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ragaai_catalyst
3
- Version: 2.2.4.1b8
3
+ Version: 2.2.4.1b9
4
4
  Summary: RAGA AI CATALYST
5
5
  Author-email: Kiran Scaria <kiran.scaria@raga.ai>, Kedar Gaikwad <kedar.gaikwad@raga.ai>, Dushyant Mahajan <dushyant.mahajan@raga.ai>, Siddhartha Kosti <siddhartha.kosti@raga.ai>, Ritika Goel <ritika.goel@raga.ai>, Vijay Chaurasia <vijay.chaurasia@raga.ai>, Tushar Kumar <tushar.kumar@raga.ai>, Rishabh Pandey <rishabh.pandey@raga.ai>, Jyotsana C G <jyotsana@raga.ai>
6
6
  Requires-Python: <=3.13.2,>=3.10
@@ -1,9 +1,9 @@
1
1
  .gitignore
2
2
  .gitmodules
3
3
  LICENSE
4
+ Quickstart.md
4
5
  README.md
5
6
  pyproject.toml
6
- quickstart.md
7
7
  requirements.txt
8
8
  test_report_20250407_183101.txt
9
9
  tests_requirements.txt