ragaai-catalyst 2.1.5b23__tar.gz → 2.1.5b25__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.
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/PKG-INFO +1 -1
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/joke_gen_critique_anthropic.py +39 -8
- ragaai_catalyst-2.1.5b25/examples/llamaindex_examples/joke_gen_critique_async.py +106 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/travel_agent/config.py +1 -1
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/travel_agent/tools.py +13 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/pyproject.toml +1 -2
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/evaluation.py +48 -1
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/agent_tracer.py +5 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/base.py +8 -15
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/llm_tracer.py +32 -34
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/main_tracer.py +1 -1
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/tool_tracer.py +5 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/upload/upload_local_metric.py +13 -11
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/span_attributes.py +10 -8
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst.egg-info/PKG-INFO +1 -1
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst.egg-info/SOURCES.txt +1 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/.gitignore +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/LICENSE +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/README.md +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/docs/dataset_management.md +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/docs/prompt_management.md +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/FinancialAnalysisSystem.ipynb +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/TravelPlanner.ipynb +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/agentic_rag.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/custom_tracer_example.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/customer_support.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/finance.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/langgraph_examples/agentic_rag.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/langgraph_examples/customer_support.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/langgraph_examples/multi_tool.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/langgraph_examples/planning_agent.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/langgraph_multi_tools.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/function_calling_agent.ipynb +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/joke_gen_critique.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/joke_gen_critique_azureopenai.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/joke_gen_critique_gemini.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/joke_gen_critique_litellm.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/joke_gen_critque_vertex.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/react_agent.ipynb +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/tool_call_agent.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/planning_agent.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/prompt_management_litellm.ipynb +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/prompt_management_openai.ipynb +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/sync_sample_call.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/travel_agent/agents.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/travel_agent/main.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/_version.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/dataset.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/experiment.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/guard_executor.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/guardrails_manager.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/internal_api_completion.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/prompt_manager.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/proxy_call.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/ragaai_catalyst.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/redteaming.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/synthetic_data_generation.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/README.md +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/data/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/data/data_structure.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tests/FinancialAnalysisSystem.ipynb +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tests/GameActivityEventPlanner.ipynb +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tests/TravelPlanner.ipynb +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tests/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tests/ai_travel_agent.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tests/unique_decorator_test.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/custom_tracer.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/langgraph_tracer.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/network_tracer.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/tracers/user_interaction_tracer.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/upload/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/upload/upload_agentic_traces.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/upload/upload_code.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/upload/upload_trace_metric.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/api_utils.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/create_dataset_schema.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/file_name_tracker.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/generic.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/get_user_trace_metrics.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/llm_utils.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/model_costs.json +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/supported_llm_provider.toml +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/system_monitor.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/trace_utils.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/unique_decorator.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/agentic_tracing/utils/zip_list_of_unique_files.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/distributed.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/exporters/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/exporters/file_span_exporter.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/exporters/raga_exporter.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/instrumentators/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/instrumentators/langchain.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/instrumentators/llamaindex.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/instrumentators/openai.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/langchain_callback.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/llamaindex_callback.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/tracer.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/upload_traces.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/utils/__init__.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/utils/convert_langchain_callbacks_output.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/utils/langchain_tracer_extraction_logic.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/utils/utils.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/utils.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst.egg-info/dependency_links.txt +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst.egg-info/requires.txt +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst.egg-info/top_level.txt +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/requirements.txt +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/setup.cfg +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/autonomous_research_agent/.env.example +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/autonomous_research_agent/agents/base_agent.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/autonomous_research_agent/agents/coordinator.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/autonomous_research_agent/agents/discovery.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/autonomous_research_agent/agents/synthesis.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/autonomous_research_agent/research_script.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/autonomous_research_agent/utils/llm.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_configuration.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_dataset.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_evaluation.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_llm_providers.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_prompt_manager.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_redteaming.py +0 -0
- {ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_synthetic_data_generation.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: ragaai_catalyst
|
3
|
-
Version: 2.1.
|
3
|
+
Version: 2.1.5b25
|
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>
|
6
6
|
Requires-Python: <3.13,>=3.9
|
@@ -1,4 +1,6 @@
|
|
1
|
-
|
1
|
+
import sys
|
2
|
+
sys.path.append(".")
|
3
|
+
|
2
4
|
from llama_index.core.workflow import (
|
3
5
|
Event,
|
4
6
|
StartEvent,
|
@@ -10,13 +12,11 @@ from llama_index.core.workflow import (
|
|
10
12
|
from llama_index.llms.anthropic import Anthropic
|
11
13
|
from dotenv import load_dotenv
|
12
14
|
import os
|
13
|
-
|
14
|
-
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '../..')))
|
15
|
+
|
15
16
|
|
16
17
|
load_dotenv()
|
17
|
-
|
18
|
-
from ragaai_catalyst import RagaAICatalyst, init_tracing
|
19
|
-
from ragaai_catalyst import trace_llm
|
18
|
+
|
19
|
+
from ragaai_catalyst import RagaAICatalyst, Tracer, init_tracing, trace_llm, current_span
|
20
20
|
|
21
21
|
catalyst = RagaAICatalyst(
|
22
22
|
access_key=os.getenv("RAGAAI_CATALYST_ACCESS_KEY"),
|
@@ -41,15 +41,46 @@ class JokeFlow(Workflow):
|
|
41
41
|
llm = Anthropic()
|
42
42
|
|
43
43
|
@step
|
44
|
-
|
44
|
+
@trace_llm("generate joke")
|
45
45
|
async def generate_joke(self, ev: StartEvent) -> JokeEvent:
|
46
46
|
topic = ev.topic
|
47
47
|
prompt = f"Write your best joke about {topic}."
|
48
48
|
response = await self.llm.acomplete(prompt)
|
49
|
+
|
50
|
+
current_span().add_metrics(
|
51
|
+
name="toxicity",
|
52
|
+
score=0.5,
|
53
|
+
reason="some reason"
|
54
|
+
)
|
55
|
+
|
56
|
+
# current_span().execute_metrics(
|
57
|
+
# name="Hallucination",
|
58
|
+
# model="gpt-4o-mini",
|
59
|
+
# provider="openai",
|
60
|
+
# display_name="Hallucination_display",
|
61
|
+
# mapping={
|
62
|
+
# 'prompt': prompt,
|
63
|
+
# 'context': "travel agent",
|
64
|
+
# 'response': response
|
65
|
+
# }
|
66
|
+
# )
|
67
|
+
|
68
|
+
# current_span().execute_metrics(
|
69
|
+
# name="Hallucination",
|
70
|
+
# model="gpt-4o-mini",
|
71
|
+
# provider="openai",
|
72
|
+
# display_name="Hallucination_display1",
|
73
|
+
# mapping={
|
74
|
+
# 'prompt': prompt,
|
75
|
+
# 'context': "travel agent",
|
76
|
+
# 'response': response
|
77
|
+
# }
|
78
|
+
# )
|
79
|
+
|
49
80
|
return JokeEvent(joke=str(response))
|
50
81
|
|
51
82
|
@step
|
52
|
-
|
83
|
+
@trace_llm("criticise joke")
|
53
84
|
async def critique_joke(self, ev: JokeEvent) -> StopEvent:
|
54
85
|
joke = ev.joke
|
55
86
|
prompt = f"Give a thorough analysis and critique of the following joke: {joke}"
|
@@ -0,0 +1,106 @@
|
|
1
|
+
import sys
|
2
|
+
|
3
|
+
from ragaai_catalyst.tracers.distributed import trace_agent
|
4
|
+
sys.path.append('.')
|
5
|
+
|
6
|
+
import os
|
7
|
+
from llama_index.llms.openai import OpenAI
|
8
|
+
from llama_index.core.workflow import (
|
9
|
+
Event,
|
10
|
+
StartEvent,
|
11
|
+
StopEvent,
|
12
|
+
Workflow,
|
13
|
+
step,
|
14
|
+
)
|
15
|
+
|
16
|
+
from ragaai_catalyst import RagaAICatalyst, Tracer, init_tracing, trace_llm, current_span, trace_agent
|
17
|
+
|
18
|
+
from dotenv import load_dotenv
|
19
|
+
load_dotenv(override=True)
|
20
|
+
|
21
|
+
catalyst = RagaAICatalyst(
|
22
|
+
access_key=os.getenv("RAGAAI_CATALYST_ACCESS_KEY"),
|
23
|
+
secret_key=os.getenv("RAGAAI_CATALYST_SECRET_KEY"),
|
24
|
+
base_url=os.getenv("RAGAAI_CATALYST_BASE_URL"),
|
25
|
+
)
|
26
|
+
|
27
|
+
# Initialize tracer
|
28
|
+
tracer = Tracer(
|
29
|
+
project_name="Execute_Metric_Test1",
|
30
|
+
dataset_name="joke_generation_workflow_async1",
|
31
|
+
tracer_type="Agentic",
|
32
|
+
)
|
33
|
+
|
34
|
+
init_tracing(catalyst=catalyst, tracer=tracer)
|
35
|
+
|
36
|
+
class JokeEvent(Event):
|
37
|
+
joke: str
|
38
|
+
|
39
|
+
|
40
|
+
class JokeFlow(Workflow):
|
41
|
+
llm = OpenAI()
|
42
|
+
|
43
|
+
@step
|
44
|
+
@trace_agent("generate joke")
|
45
|
+
async def generate_joke(self, ev: StartEvent) -> JokeEvent:
|
46
|
+
topic = ev.topic
|
47
|
+
prompt = f"Write your best joke about {topic}."
|
48
|
+
|
49
|
+
# Get the current span and store its attributes
|
50
|
+
span = current_span()
|
51
|
+
span.add_context(context="joke generation")
|
52
|
+
span.add_metrics(
|
53
|
+
name="toxicity",
|
54
|
+
score=0.4,
|
55
|
+
reasoning="Reason for toxicity",
|
56
|
+
)
|
57
|
+
|
58
|
+
# First execute_metrics call
|
59
|
+
span.execute_metrics(
|
60
|
+
name="Hallucination",
|
61
|
+
display_name="hallucination_generate_joke",
|
62
|
+
provider="openai",
|
63
|
+
model="gpt-4o-mini",
|
64
|
+
mapping={
|
65
|
+
"prompt": prompt,
|
66
|
+
"response": "vnvnvs",
|
67
|
+
"context": "Some Context"
|
68
|
+
}
|
69
|
+
)
|
70
|
+
|
71
|
+
# Perform async operation
|
72
|
+
response = await self.llm.acomplete(prompt)
|
73
|
+
|
74
|
+
# Get fresh span after async operation
|
75
|
+
span.execute_metrics(
|
76
|
+
name="Hallucination",
|
77
|
+
display_name="hallucination_generate_joke_2",
|
78
|
+
provider="openai",
|
79
|
+
model="gpt-4o-mini",
|
80
|
+
mapping={
|
81
|
+
"prompt": prompt,
|
82
|
+
"response": response.text,
|
83
|
+
"context": "Some Context"
|
84
|
+
}
|
85
|
+
)
|
86
|
+
|
87
|
+
return JokeEvent(joke=str(response))
|
88
|
+
|
89
|
+
@step
|
90
|
+
@trace_agent("criticise joke")
|
91
|
+
async def critique_joke(self, ev: JokeEvent) -> StopEvent:
|
92
|
+
joke = ev.joke
|
93
|
+
prompt = f"Give a thorough analysis and critique of the following joke: {joke}"
|
94
|
+
response = await self.llm.acomplete(prompt)
|
95
|
+
return StopEvent(result=str(response))
|
96
|
+
|
97
|
+
|
98
|
+
async def main():
|
99
|
+
w = JokeFlow(timeout=60, verbose=False)
|
100
|
+
result = await w.run(topic="climate change")
|
101
|
+
print(str(result))
|
102
|
+
|
103
|
+
if __name__ == "__main__":
|
104
|
+
import asyncio
|
105
|
+
with tracer:
|
106
|
+
asyncio.run(main())
|
@@ -34,6 +34,19 @@ def llm_call(prompt, max_tokens=512, model="gpt-4o-mini", name="default"):
|
|
34
34
|
}
|
35
35
|
)
|
36
36
|
|
37
|
+
current_span().execute_metrics(
|
38
|
+
name="Hallucination",
|
39
|
+
model="gpt-4o-mini",
|
40
|
+
provider="openai",
|
41
|
+
display_name="Hallucination_display1",
|
42
|
+
mapping={
|
43
|
+
'prompt': "goa to mumbai price",
|
44
|
+
'context': "travel agent",
|
45
|
+
'response': "approximately 10",
|
46
|
+
"gt": "10"
|
47
|
+
}
|
48
|
+
)
|
49
|
+
|
37
50
|
response = client.chat.completions.create(
|
38
51
|
model=model,
|
39
52
|
messages=[{"role": "user", "content": prompt}],
|
@@ -8,8 +8,7 @@ description = "RAGA AI CATALYST"
|
|
8
8
|
readme = "README.md"
|
9
9
|
requires-python = ">=3.9,<3.13"
|
10
10
|
# license = {file = "LICENSE"}
|
11
|
-
|
12
|
-
version = "2.1.5.b23"
|
11
|
+
version = "2.1.5.b25"
|
13
12
|
authors = [
|
14
13
|
{name = "Kiran Scaria", email = "kiran.scaria@raga.ai"},
|
15
14
|
{name = "Kedar Gaikwad", email = "kedar.gaikwad@raga.ai"},
|
@@ -4,6 +4,7 @@ import pandas as pd
|
|
4
4
|
import io
|
5
5
|
from .ragaai_catalyst import RagaAICatalyst
|
6
6
|
import logging
|
7
|
+
import json
|
7
8
|
|
8
9
|
logger = logging.getLogger(__name__)
|
9
10
|
|
@@ -18,7 +19,7 @@ class Evaluation:
|
|
18
19
|
self.project_name = project_name
|
19
20
|
self.dataset_name = dataset_name
|
20
21
|
self.base_url = f"{RagaAICatalyst.BASE_URL}"
|
21
|
-
self.timeout =
|
22
|
+
self.timeout = 20
|
22
23
|
self.jobId = None
|
23
24
|
self.num_projects=99999
|
24
25
|
|
@@ -357,6 +358,52 @@ class Evaluation:
|
|
357
358
|
except Exception as e:
|
358
359
|
logger.error(f"An unexpected error occurred: {e}")
|
359
360
|
|
361
|
+
def append_metrics(self, display_name):
|
362
|
+
if not isinstance(display_name, str):
|
363
|
+
raise ValueError("display_name should be a string")
|
364
|
+
|
365
|
+
headers = {
|
366
|
+
"Authorization": f"Bearer {os.getenv('RAGAAI_CATALYST_TOKEN')}",
|
367
|
+
'X-Project-Id': str(self.project_id),
|
368
|
+
'Content-Type': 'application/json',
|
369
|
+
}
|
370
|
+
|
371
|
+
payload = json.dumps({
|
372
|
+
"datasetId": self.dataset_id,
|
373
|
+
"metricParams": [
|
374
|
+
{
|
375
|
+
"metricSpec": {
|
376
|
+
"displayName": display_name
|
377
|
+
}
|
378
|
+
}
|
379
|
+
]
|
380
|
+
})
|
381
|
+
|
382
|
+
try:
|
383
|
+
response = requests.request(
|
384
|
+
"POST",
|
385
|
+
f'{self.base_url}/v2/llm/metric-evaluation-rerun',
|
386
|
+
headers=headers,
|
387
|
+
data=payload,
|
388
|
+
timeout=self.timeout)
|
389
|
+
if response.status_code == 400:
|
390
|
+
raise ValueError(response.json()["message"])
|
391
|
+
response.raise_for_status()
|
392
|
+
if response.json()["success"]:
|
393
|
+
print(response.json()["message"])
|
394
|
+
self.jobId = response.json()["data"]["jobId"]
|
395
|
+
|
396
|
+
except requests.exceptions.HTTPError as http_err:
|
397
|
+
logger.error(f"HTTP error occurred: {http_err}")
|
398
|
+
except requests.exceptions.ConnectionError as conn_err:
|
399
|
+
logger.error(f"Connection error occurred: {conn_err}")
|
400
|
+
except requests.exceptions.Timeout as timeout_err:
|
401
|
+
logger.error(f"Timeout error occurred: {timeout_err}")
|
402
|
+
except requests.exceptions.RequestException as req_err:
|
403
|
+
logger.error(f"An error occurred: {req_err}")
|
404
|
+
except Exception as e:
|
405
|
+
logger.error(f"An unexpected error occurred: {e}")
|
406
|
+
|
360
407
|
def get_status(self):
|
361
408
|
headers = {
|
362
409
|
'Content-Type': 'application/json',
|
@@ -9,6 +9,7 @@ import contextvars
|
|
9
9
|
import asyncio
|
10
10
|
from ..utils.file_name_tracker import TrackName
|
11
11
|
from ..utils.span_attributes import SpanAttributes
|
12
|
+
from .base import BaseTracer
|
12
13
|
import logging
|
13
14
|
|
14
15
|
logger = logging.getLogger(__name__)
|
@@ -555,6 +556,10 @@ class AgentTracerMixin:
|
|
555
556
|
metrics.append(metric)
|
556
557
|
|
557
558
|
# TODO agent_trace execute metric
|
559
|
+
formatted_metrics = BaseTracer.get_formatted_metric(self.span_attributes_dict, self.project_id, name)
|
560
|
+
if formatted_metrics:
|
561
|
+
metrics.extend(formatted_metrics)
|
562
|
+
|
558
563
|
component = {
|
559
564
|
"id": kwargs["component_id"],
|
560
565
|
"hash_id": kwargs["hash_id"],
|
@@ -1055,29 +1055,20 @@ class BaseTracer:
|
|
1055
1055
|
return self.span_attributes_dict[span_name]
|
1056
1056
|
|
1057
1057
|
@staticmethod
|
1058
|
-
def get_formatted_metric(span_attributes_dict, project_id, name
|
1058
|
+
def get_formatted_metric(span_attributes_dict, project_id, name):
|
1059
1059
|
if name in span_attributes_dict:
|
1060
1060
|
local_metrics = span_attributes_dict[name].local_metrics or []
|
1061
|
+
local_metrics_results = []
|
1061
1062
|
for metric in local_metrics:
|
1062
1063
|
try:
|
1063
|
-
if metric.get("prompt") is not None:
|
1064
|
-
prompt = metric['prompt']
|
1065
|
-
if metric.get("response") is not None:
|
1066
|
-
response = metric['response']
|
1067
|
-
if metric.get('context') is not None:
|
1068
|
-
span_context = metric['context']
|
1069
|
-
if metric.get('gt') is not None:
|
1070
|
-
span_gt = metric['gt']
|
1071
|
-
|
1072
1064
|
logger.info("calculating the metric, please wait....")
|
1065
|
+
|
1066
|
+
mapping = metric.get("mapping", {})
|
1073
1067
|
result = calculate_metric(project_id=project_id,
|
1074
1068
|
metric_name=metric.get("name"),
|
1075
1069
|
model=metric.get("model"),
|
1076
1070
|
provider=metric.get("provider"),
|
1077
|
-
|
1078
|
-
context=span_context,
|
1079
|
-
response=response,
|
1080
|
-
expected_response=span_gt
|
1071
|
+
**mapping
|
1081
1072
|
)
|
1082
1073
|
|
1083
1074
|
result = result['data']['data'][0]
|
@@ -1107,9 +1098,11 @@ class BaseTracer:
|
|
1107
1098
|
"mappings": [],
|
1108
1099
|
"config": metric_config
|
1109
1100
|
}
|
1110
|
-
|
1101
|
+
local_metrics_results.append(formatted_metric)
|
1111
1102
|
except ValueError as e:
|
1112
1103
|
logger.error(f"Validation Error: {e}")
|
1113
1104
|
except Exception as e:
|
1114
1105
|
logger.error(f"Error executing metric: {e}")
|
1115
1106
|
|
1107
|
+
return local_metrics_results
|
1108
|
+
|
@@ -630,9 +630,9 @@ class LLMTracerMixin:
|
|
630
630
|
#print("Response output: ",response)
|
631
631
|
|
632
632
|
# TODO: Execute & Add the User requested metrics here
|
633
|
-
|
634
|
-
if
|
635
|
-
metrics.
|
633
|
+
formatted_metrics = BaseTracer.get_formatted_metric(self.span_attributes_dict, self.project_id, name)
|
634
|
+
if formatted_metrics:
|
635
|
+
metrics.extend(formatted_metrics)
|
636
636
|
|
637
637
|
component = {
|
638
638
|
"id": component_id,
|
@@ -683,38 +683,36 @@ class LLMTracerMixin:
|
|
683
683
|
# return "\n".join(process_content(msg.get("content", "")) for msg in messages if msg.get("content"))
|
684
684
|
|
685
685
|
def convert_to_content(self, input_data):
|
686
|
-
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
|
691
|
-
|
692
|
-
|
693
|
-
|
694
|
-
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
701
|
-
|
702
|
-
|
703
|
-
|
686
|
+
try:
|
687
|
+
if isinstance(input_data, dict):
|
688
|
+
messages = input_data.get("kwargs", {}).get("messages", [])
|
689
|
+
elif isinstance(input_data, list):
|
690
|
+
if len(input_data)>0 and isinstance(input_data[0]['content'],ChatResponse):
|
691
|
+
extracted_messages = []
|
692
|
+
|
693
|
+
for item in input_data:
|
694
|
+
chat_response = item.get('content')
|
695
|
+
if hasattr(chat_response, 'message') and hasattr(chat_response.message, 'blocks'):
|
696
|
+
for block in chat_response.message.blocks:
|
697
|
+
if hasattr(block, 'text'):
|
698
|
+
extracted_messages.append(block.text)
|
699
|
+
messages=extracted_messages
|
700
|
+
if isinstance(messages,list):
|
701
|
+
return "\n".join(messages)
|
702
|
+
|
703
|
+
#messages=[msg["content"] for msg in input_data if isinstance(msg, dict) and "content" in msg]
|
704
|
+
#messages = [msg["content"].message for msg in input_data if isinstance(msg, dict) and "content" in msg and isinstance(msg["content"], ChatResponse)]
|
705
|
+
else:
|
706
|
+
messages = input_data
|
707
|
+
elif isinstance(input_data,ChatResponse):
|
708
|
+
messages=input_data['content']
|
704
709
|
else:
|
705
|
-
|
706
|
-
|
707
|
-
|
708
|
-
|
709
|
-
|
710
|
-
|
711
|
-
# try:
|
712
|
-
res="\n".join(msg.get("content", "").strip() for msg in messages if msg.get("content"))
|
713
|
-
# except Exception as e:
|
714
|
-
# print("Exception occured for: ",e)
|
715
|
-
# print("Input: ",input_data,"Meeage: ",messages)
|
716
|
-
# # import sys
|
717
|
-
# # sys.exit()
|
710
|
+
return ""
|
711
|
+
res=""
|
712
|
+
# try:
|
713
|
+
res="\n".join(msg.get("content", "").strip() for msg in messages if msg.get("content"))
|
714
|
+
except Exception as e:
|
715
|
+
res=str(messages)
|
718
716
|
return res
|
719
717
|
|
720
718
|
def process_content(content):
|
@@ -361,7 +361,7 @@ class AgenticTracing(
|
|
361
361
|
|
362
362
|
# Check if there's an active agent context
|
363
363
|
current_agent_id = self.current_agent_id.get()
|
364
|
-
if current_agent_id and component_data["type"] in ["llm", "tool"]:
|
364
|
+
if current_agent_id and component_data["type"] in ["llm", "tool", "custom"]:
|
365
365
|
# Add this component as a child of the current agent
|
366
366
|
current_children = self.agent_children.get()
|
367
367
|
current_children.append(component_data)
|
@@ -7,6 +7,7 @@ import functools
|
|
7
7
|
from typing import Optional, Any, Dict, List
|
8
8
|
|
9
9
|
from pydantic import tools
|
10
|
+
from .base import BaseTracer
|
10
11
|
from ..utils.unique_decorator import generate_unique_hash_simple
|
11
12
|
import contextvars
|
12
13
|
import asyncio
|
@@ -483,6 +484,10 @@ class ToolTracerMixin:
|
|
483
484
|
metric["name"] = metric_name
|
484
485
|
metrics.append(metric)
|
485
486
|
|
487
|
+
formatted_metrics = BaseTracer.get_formatted_metric(self.span_attributes_dict, self.project_id, name)
|
488
|
+
if formatted_metrics:
|
489
|
+
metrics.extend(formatted_metrics)
|
490
|
+
|
486
491
|
start_time = kwargs["start_time"]
|
487
492
|
component = {
|
488
493
|
"id": kwargs["component_id"],
|
@@ -11,13 +11,14 @@ logging_level = (
|
|
11
11
|
else logger.setLevel(logging.INFO)
|
12
12
|
)
|
13
13
|
|
14
|
-
|
14
|
+
|
15
|
+
def calculate_metric(project_id, metric_name, model, provider, **kwargs):
|
15
16
|
user_id = "1"
|
16
17
|
org_domain = "raga"
|
17
18
|
|
18
19
|
headers = {
|
19
20
|
"Authorization": f"Bearer {os.getenv('RAGAAI_CATALYST_TOKEN')}",
|
20
|
-
"X-Project-Id": str(project_id),
|
21
|
+
"X-Project-Id": str(project_id),
|
21
22
|
"Content-Type": "application/json"
|
22
23
|
}
|
23
24
|
|
@@ -38,18 +39,19 @@ def calculate_metric(project_id, metric_name, model, provider, prompt, response,
|
|
38
39
|
"metric_name": metric_name,
|
39
40
|
"request_id": 1
|
40
41
|
},
|
42
|
+
"variable_mapping": kwargs,
|
41
43
|
"trace_object": {
|
42
44
|
"Data": {
|
43
45
|
"DocId": "doc-1",
|
44
|
-
"Prompt": prompt,
|
45
|
-
"Response": response,
|
46
|
-
"Context": context,
|
47
|
-
"ExpectedResponse": "",
|
48
|
-
"ExpectedContext":
|
49
|
-
"Chat": "",
|
50
|
-
"Instructions": "",
|
51
|
-
"SystemPrompt": "",
|
52
|
-
"Text": ""
|
46
|
+
"Prompt": kwargs.get("prompt"),
|
47
|
+
"Response": kwargs.get("response"),
|
48
|
+
"Context": kwargs.get("context"),
|
49
|
+
"ExpectedResponse": kwargs.get("expected_response"),
|
50
|
+
"ExpectedContext": kwargs.get("expected_context"),
|
51
|
+
"Chat": kwargs.get("chat"),
|
52
|
+
"Instructions": kwargs.get("instructions"),
|
53
|
+
"SystemPrompt": kwargs.get("system_prompt"),
|
54
|
+
"Text": kwargs.get("text")
|
53
55
|
},
|
54
56
|
"claims": {},
|
55
57
|
"last_computed_metrics": {
|
@@ -62,6 +62,7 @@ class SpanAttributes:
|
|
62
62
|
self.feedback = feedback
|
63
63
|
logger.debug(f"Added feedback: {self.feedback}")
|
64
64
|
|
65
|
+
# TODO: Add validation to check if all the required parameters are present
|
65
66
|
def execute_metrics(self, **kwargs: Any):
|
66
67
|
name = kwargs.get("name")
|
67
68
|
model = kwargs.get("model")
|
@@ -91,19 +92,20 @@ class SpanAttributes:
|
|
91
92
|
prompt =None
|
92
93
|
context = None
|
93
94
|
response = None
|
94
|
-
if mapping is not None:
|
95
|
-
|
96
|
-
|
97
|
-
|
95
|
+
# if mapping is not None:
|
96
|
+
# prompt = mapping['prompt']
|
97
|
+
# context = mapping['context']
|
98
|
+
# response = mapping['response']
|
98
99
|
new_metric = {
|
99
100
|
"name": metric_name,
|
100
101
|
"model": model,
|
101
102
|
"provider": provider,
|
102
103
|
"project_id": self.project_id,
|
103
|
-
"prompt": prompt,
|
104
|
-
"context": context,
|
105
|
-
"response": response,
|
106
|
-
"displayName": display_name
|
104
|
+
# "prompt": prompt,
|
105
|
+
# "context": context,
|
106
|
+
# "response": response,
|
107
|
+
"displayName": display_name,
|
108
|
+
"mapping": mapping
|
107
109
|
}
|
108
110
|
self.local_metrics.append(new_metric)
|
109
111
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: ragaai_catalyst
|
3
|
-
Version: 2.1.
|
3
|
+
Version: 2.1.5b25
|
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>
|
6
6
|
Requires-Python: <3.13,>=3.9
|
@@ -26,6 +26,7 @@ examples/langgraph_examples/planning_agent.py
|
|
26
26
|
examples/llamaindex_examples/function_calling_agent.ipynb
|
27
27
|
examples/llamaindex_examples/joke_gen_critique.py
|
28
28
|
examples/llamaindex_examples/joke_gen_critique_anthropic.py
|
29
|
+
examples/llamaindex_examples/joke_gen_critique_async.py
|
29
30
|
examples/llamaindex_examples/joke_gen_critique_azureopenai.py
|
30
31
|
examples/llamaindex_examples/joke_gen_critique_gemini.py
|
31
32
|
examples/llamaindex_examples/joke_gen_critique_litellm.py
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/.github/ISSUE_TEMPLATE/feature_request.md
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/FinancialAnalysisSystem.ipynb
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/langgraph_examples/agentic_rag.py
RENAMED
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/langgraph_examples/multi_tool.py
RENAMED
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/langgraph_examples/planning_agent.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
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/llamaindex_examples/react_agent.ipynb
RENAMED
File without changes
|
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/prompt_management_litellm.ipynb
RENAMED
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/examples/prompt_management_openai.ipynb
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
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/internal_api_completion.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/synthetic_data_generation.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
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/distributed.py
RENAMED
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/exporters/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/langchain_callback.py
RENAMED
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/llamaindex_callback.py
RENAMED
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/upload_traces.py
RENAMED
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/utils/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst/tracers/utils/utils.py
RENAMED
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst.egg-info/dependency_links.txt
RENAMED
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/ragaai_catalyst.egg-info/top_level.txt
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
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_configuration.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_llm_providers.py
RENAMED
File without changes
|
{ragaai_catalyst-2.1.5b23 → ragaai_catalyst-2.1.5b25}/test/test_catalyst/test_prompt_manager.py
RENAMED
File without changes
|
File without changes
|
File without changes
|