ragaai-catalyst 2.1.5b33__py3-none-any.whl → 2.1.5b34__py3-none-any.whl

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.
@@ -5,7 +5,9 @@ import time
5
5
  from typing import Dict, Optional, Union
6
6
  import re
7
7
  logger = logging.getLogger("RagaAICatalyst")
8
-
8
+ logging_level = (
9
+ logger.setLevel(logging.DEBUG) if os.getenv("DEBUG") == "1" else logging.INFO
10
+ )
9
11
 
10
12
  class RagaAICatalyst:
11
13
  BASE_URL = None
@@ -16,17 +16,26 @@ import queue
16
16
  from datetime import datetime
17
17
  import atexit
18
18
  import glob
19
+ from logging.handlers import RotatingFileHandler
19
20
 
20
21
  # Set up logging
21
22
  log_dir = os.path.join(tempfile.gettempdir(), "ragaai_logs")
22
23
  os.makedirs(log_dir, exist_ok=True)
23
24
 
25
+ # Define maximum file size (e.g., 5 MB) and backup count
26
+ max_file_size = 5 * 1024 * 1024 # 5 MB
27
+ backup_count = 1 # Number of backup files to keep
28
+
24
29
  logging.basicConfig(
25
30
  level=logging.DEBUG,
26
31
  format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
27
32
  handlers=[
28
33
  logging.StreamHandler(),
29
- logging.FileHandler(os.path.join(log_dir, "trace_uploader.log"))
34
+ RotatingFileHandler(
35
+ os.path.join(log_dir, "trace_uploader.log"),
36
+ maxBytes=max_file_size,
37
+ backupCount=backup_count
38
+ )
30
39
  ]
31
40
  )
32
41
  logger = logging.getLogger("trace_uploader")
@@ -170,7 +179,7 @@ class UploadTask:
170
179
  def list_pending_tasks():
171
180
  """List all pending tasks"""
172
181
  tasks = []
173
- logger.info("Listing pending tasks from queue directory: {}".format(QUEUE_DIR))
182
+ #logger.info("Listing pending tasks from queue directory: {}".format(QUEUE_DIR))
174
183
  for filename in os.listdir(QUEUE_DIR):
175
184
  if filename.endswith(".json"):
176
185
  try:
@@ -245,8 +254,8 @@ class TraceUploader:
245
254
 
246
255
  if not IMPORTS_AVAILABLE:
247
256
  logger.warning(f"Test mode: Simulating processing of task {task.task_id}")
248
- time.sleep(2) # Simulate work
249
- task.update_status(STATUS_COMPLETED)
257
+ #time.sleep(2) # Simulate work
258
+ #task.update_status(STATUS_COMPLETED)
250
259
  return
251
260
 
252
261
  logger.info(f"Processing task {task.task_id} (attempt {task.attempts+1}/{task.max_attempts})")
@@ -62,6 +62,8 @@ class UploadAgenticTraces:
62
62
  def update_presigned_url(self, presigned_url, base_url):
63
63
  """Replaces the domain (and port, if applicable) of the presigned URL
64
64
  with that of the base URL only if the base URL contains 'localhost' or an IP address."""
65
+ #To Do: If Proxy URL has domain name how do we handle such cases
66
+
65
67
  presigned_parts = urlparse(presigned_url)
66
68
  base_parts = urlparse(base_url)
67
69
  # Check if base_url contains localhost or an IP address
@@ -52,6 +52,8 @@ def _fetch_dataset_code_hashes(project_name, dataset_name, base_url=None):
52
52
 
53
53
  def update_presigned_url(presigned_url, base_url):
54
54
  """Replaces the domain (and port, if applicable) of the presigned URL with that of the base URL."""
55
+ #To Do: If Proxy URL has domain name how do we handle such cases? Engineering Dependency.
56
+
55
57
  presigned_parts = urlparse(presigned_url)
56
58
  base_parts = urlparse(base_url)
57
59
  # Check if base_url contains localhost or an IP address
@@ -92,7 +94,7 @@ def _fetch_presigned_url(project_name, dataset_name, base_url=None):
92
94
 
93
95
  if response.status_code == 200:
94
96
  presigned_url = response.json()["data"]["presignedUrls"][0]
95
- presigned_url = update_presigned_url(presigned_url,RagaAICatalyst.BASE_URL)
97
+ presigned_url = update_presigned_url(presigned_url,url_base)
96
98
  return presigned_url
97
99
  else:
98
100
  raise Exception(f"Failed to fetch code hashes: {response.json()['message']}")
@@ -15,6 +15,10 @@ import logging
15
15
  logger = logging.getLogger(__name__)
16
16
 
17
17
  def get_model_cost():
18
+ """Load model costs from a JSON file.
19
+ Note: This file should be updated periodically or whenever a new package is created to ensure accurate cost calculations.
20
+ To Do: Implement to do this automatically.
21
+ """
18
22
  file="model_prices_and_context_window_backup.json"
19
23
  d={}
20
24
  with resources.open_text("ragaai_catalyst.tracers.utils", file) as f:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: ragaai_catalyst
3
- Version: 2.1.5b33
3
+ Version: 2.1.5b34
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>
6
6
  Requires-Python: <3.13,>=3.9
@@ -8,7 +8,7 @@ ragaai_catalyst/guardrails_manager.py,sha256=DILMOAASK57FH9BLq_8yC1AQzRJ8McMFLwC
8
8
  ragaai_catalyst/internal_api_completion.py,sha256=DdICI5yfEudiOAIC8L4oxH0Qz7kX-BZCdo9IWsi2gNo,2965
9
9
  ragaai_catalyst/prompt_manager.py,sha256=W8ypramzOprrJ7-22d5vkBXIuIQ8v9XAzKDGxKsTK28,16550
10
10
  ragaai_catalyst/proxy_call.py,sha256=CHxldeceZUaLU-to_hs_Kf1z_b2vHMssLS_cOBedu78,5499
11
- ragaai_catalyst/ragaai_catalyst.py,sha256=l6aoBEXMAxPzdsd0X04SeHCLuD5tBR-9qZTq3hiD5ls,19479
11
+ ragaai_catalyst/ragaai_catalyst.py,sha256=1FaeK_VZpJLQ1ZqEWpMyI8J8M2MI0abLLLDFWY9W-4A,19580
12
12
  ragaai_catalyst/redteaming_old.py,sha256=W2d89Ok8W-C8g7TBM3fDIFLof3q9FuYSr0jcryH2XQo,7097
13
13
  ragaai_catalyst/synthetic_data_generation.py,sha256=rJPWj6luKMa6CTs1cEAmtnZhUMEQsr67O_C4jG47dMQ,37547
14
14
  ragaai_catalyst/utils.py,sha256=TlhEFwLyRU690HvANbyoRycR3nQ67lxVUQoUOfTPYQ0,3772
@@ -54,9 +54,9 @@ ragaai_catalyst/tracers/agentic_tracing/tracers/network_tracer.py,sha256=m8CxYkl
54
54
  ragaai_catalyst/tracers/agentic_tracing/tracers/tool_tracer.py,sha256=xxrliKPfdfbIZRZqMnUewsaTD8_Hv0dbuoBivNZGD4U,21674
55
55
  ragaai_catalyst/tracers/agentic_tracing/tracers/user_interaction_tracer.py,sha256=bhSUhNQCuJXKjgJAXhjKEYjnHMpYN90FSZdR84fNIKU,4614
56
56
  ragaai_catalyst/tracers/agentic_tracing/upload/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
- ragaai_catalyst/tracers/agentic_tracing/upload/trace_uploader.py,sha256=JZDnZcDCnFu3WbOYj6b2dSw_1AHXFo--iJxObhJF7yA,26157
58
- ragaai_catalyst/tracers/agentic_tracing/upload/upload_agentic_traces.py,sha256=FWrijnaKV7o37gcLVe84OQT4Y6f4Jy8yxqqihJBsyws,8459
59
- ragaai_catalyst/tracers/agentic_tracing/upload/upload_code.py,sha256=dUBxtadRUX5QFBzzHStjFI61Icedk-QAj9xgeCpjSqU,6378
57
+ ragaai_catalyst/tracers/agentic_tracing/upload/trace_uploader.py,sha256=pklyXsz1_tKsU-Kon0ZxsV11BGRLV66bCh8UG9tfrhc,26454
58
+ ragaai_catalyst/tracers/agentic_tracing/upload/upload_agentic_traces.py,sha256=icycLgfA0734xxoM1rTMG_iIrI3iM94th8RQggJ7sSw,8541
59
+ ragaai_catalyst/tracers/agentic_tracing/upload/upload_code.py,sha256=aw_eHhUYRbR_9IbIkNjYb7NOsmETD3k1p4a6gxaGI7Q,6462
60
60
  ragaai_catalyst/tracers/agentic_tracing/upload/upload_local_metric.py,sha256=m1O8lKpxKwtHofXLW3fTHX5yfqDW5GxoveARlg5cTw4,2571
61
61
  ragaai_catalyst/tracers/agentic_tracing/upload/upload_trace_metric.py,sha256=dmgcFZtCUpTGV2GayKQ9znaFRDLlXY8NW6RiyNwerOk,4278
62
62
  ragaai_catalyst/tracers/agentic_tracing/utils/__init__.py,sha256=XdB3X_ufe4RVvGorxSqAiB9dYv4UD7Hvvuw3bsDUppY,60
@@ -65,7 +65,7 @@ ragaai_catalyst/tracers/agentic_tracing/utils/create_dataset_schema.py,sha256=xH
65
65
  ragaai_catalyst/tracers/agentic_tracing/utils/file_name_tracker.py,sha256=YG601l1a29ov9VPu9Vl4RXxgL7l16k54_WWnoTNoG58,2064
66
66
  ragaai_catalyst/tracers/agentic_tracing/utils/generic.py,sha256=WwXT01xmp8MSr7KinuDCSK9a1ifpLcT7ajFkvYviG_A,1190
67
67
  ragaai_catalyst/tracers/agentic_tracing/utils/get_user_trace_metrics.py,sha256=vPZ4dn4EHFW0kqd1GyRpsYXbfrRrd0DXCmh-pzsDBNE,1109
68
- ragaai_catalyst/tracers/agentic_tracing/utils/llm_utils.py,sha256=-XhdAkMULNfR7kZUE7-YK_YYCxFU5NEEiVZieRNX8W8,21324
68
+ ragaai_catalyst/tracers/agentic_tracing/utils/llm_utils.py,sha256=Z01wEEGVlWx-45rHPCKDmeusfpjdS2-LXKYNhsAgjJE,21548
69
69
  ragaai_catalyst/tracers/agentic_tracing/utils/model_costs.json,sha256=2tzGw_cKCTPcfjEm7iGvFE6pTw7gMTPzeBov_MTaXNY,321336
70
70
  ragaai_catalyst/tracers/agentic_tracing/utils/span_attributes.py,sha256=qmODERcFZhc8MX24boFCXkkh6sJ-vZngRHPvxhyWFeE,4347
71
71
  ragaai_catalyst/tracers/agentic_tracing/utils/supported_llm_provider.toml,sha256=LvFDivDIE96Zasp-fgDEqUJ5GEQZUawQucR3aOcSUTY,926
@@ -87,8 +87,8 @@ ragaai_catalyst/tracers/utils/extraction_logic_llama_index.py,sha256=ZhPs0YhVtB8
87
87
  ragaai_catalyst/tracers/utils/langchain_tracer_extraction_logic.py,sha256=XS2_x2qneqEx9oAighLg-LRiueWcESLwIC2r7eJT-Ww,3117
88
88
  ragaai_catalyst/tracers/utils/model_prices_and_context_window_backup.json,sha256=C3uwkibJ08C9sOX-54kulZYmJlIpZ-SQpfE6HNGrjbM,343502
89
89
  ragaai_catalyst/tracers/utils/utils.py,sha256=ViygfJ7vZ7U0CTSA1lbxVloHp4NSlmfDzBRNCJuMhis,2374
90
- ragaai_catalyst-2.1.5b33.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
91
- ragaai_catalyst-2.1.5b33.dist-info/METADATA,sha256=KHP_0o1qGuahcTZ4ZIY3idwT9Ef4hh-2CpPJ9QMrc2M,21884
92
- ragaai_catalyst-2.1.5b33.dist-info/WHEEL,sha256=nn6H5-ilmfVryoAQl3ZQ2l8SH5imPWFpm1A5FgEuFV4,91
93
- ragaai_catalyst-2.1.5b33.dist-info/top_level.txt,sha256=HpgsdRgEJMk8nqrU6qdCYk3di7MJkDL0B19lkc7dLfM,16
94
- ragaai_catalyst-2.1.5b33.dist-info/RECORD,,
90
+ ragaai_catalyst-2.1.5b34.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
91
+ ragaai_catalyst-2.1.5b34.dist-info/METADATA,sha256=Nuu6aspLxz8lsGv1UmUlDvEAEwK4bYvWh9PHKQcoRsg,21884
92
+ ragaai_catalyst-2.1.5b34.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
93
+ ragaai_catalyst-2.1.5b34.dist-info/top_level.txt,sha256=HpgsdRgEJMk8nqrU6qdCYk3di7MJkDL0B19lkc7dLfM,16
94
+ ragaai_catalyst-2.1.5b34.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.1)
2
+ Generator: setuptools (75.8.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5