langtrace-python-sdk 3.8.0__tar.gz → 3.8.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (307) hide show
  1. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/PKG-INFO +1 -1
  2. langtrace_python_sdk-3.8.2/src/examples/cleanlab_example/simple.py +18 -0
  3. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/common.py +2 -1
  4. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/__init__.py +5 -6
  5. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/agno/patch.py +142 -88
  6. langtrace_python_sdk-3.8.2/src/langtrace_python_sdk/instrumentation/cleanlab/__init__.py +5 -0
  7. langtrace_python_sdk-3.8.2/src/langtrace_python_sdk/instrumentation/cleanlab/instrumentation.py +62 -0
  8. langtrace_python_sdk-3.8.2/src/langtrace_python_sdk/instrumentation/cleanlab/patch.py +75 -0
  9. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/graphlit/patch.py +4 -5
  10. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/langtrace.py +14 -57
  11. langtrace_python_sdk-3.8.2/src/langtrace_python_sdk/version.py +1 -0
  12. langtrace_python_sdk-3.8.0/src/langtrace_python_sdk/version.py +0 -1
  13. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/.gitignore +0 -0
  14. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/LICENSE +0 -0
  15. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/README.md +0 -0
  16. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/pyproject.toml +0 -0
  17. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/__init__.py +0 -0
  18. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/__init__.py +0 -0
  19. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/anthropic_example/__init__.py +0 -0
  20. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/anthropic_example/completion.py +0 -0
  21. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/autogen_example/__init__.py +0 -0
  22. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/autogen_example/main.py +0 -0
  23. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/awsbedrock_examples/__init__.py +0 -0
  24. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/awsbedrock_examples/converse.py +0 -0
  25. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/azureopenai_example/__init__.py +0 -0
  26. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/azureopenai_example/completion.py +0 -0
  27. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cerebras_example/__init__.py +0 -0
  28. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cerebras_example/main.py +0 -0
  29. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/chroma_example/__init__.py +0 -0
  30. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/chroma_example/basic.py +0 -0
  31. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cohere_example/__init__.py +0 -0
  32. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cohere_example/chat.py +0 -0
  33. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cohere_example/chat_stream.py +0 -0
  34. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cohere_example/chat_streamv2.py +0 -0
  35. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cohere_example/chatv2.py +0 -0
  36. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cohere_example/embed.py +0 -0
  37. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cohere_example/rerank.py +0 -0
  38. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cohere_example/rerankv2.py +0 -0
  39. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/cohere_example/tools.py +0 -0
  40. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/__init__.py +0 -0
  41. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/basic.py +0 -0
  42. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/instagram_post/__init__.py +0 -0
  43. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/instagram_post/agents.py +0 -0
  44. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/instagram_post/main.py +0 -0
  45. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/instagram_post/tasks.py +0 -0
  46. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/instagram_post/tools/__init__.py +0 -0
  47. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/instagram_post/tools/browser_tools.py +0 -0
  48. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/simple_agent/__init__.py +0 -0
  49. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/simple_agent/agents.py +0 -0
  50. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/simple_agent/main.py +0 -0
  51. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/simple_agent/tasks.py +0 -0
  52. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/trip_planner/__init__.py +0 -0
  53. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/trip_planner/agents.py +0 -0
  54. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/trip_planner/main.py +0 -0
  55. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/trip_planner/tasks.py +0 -0
  56. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/trip_planner/tools/calculator.py +0 -0
  57. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/crewai_example/trip_planner/tools/search_tools.py +0 -0
  58. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/QA_basic.py +0 -0
  59. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/QA_basic_with_chain_of_thought.py +0 -0
  60. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/QA_basic_with_signature.py +0 -0
  61. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/QA_multi_step_with_chain_of_thought.py +0 -0
  62. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/math_problems_cot.py +0 -0
  63. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/math_problems_cot_parallel.py +0 -0
  64. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/optimizers/bootstrap_fewshot.py +0 -0
  65. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/program_of_thought_basic.py +0 -0
  66. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/quiz_gen.py +0 -0
  67. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/dspy_example/react.py +0 -0
  68. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/embedchain_example/simple.py +0 -0
  69. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/fastapi_example/__init__.py +0 -0
  70. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/fastapi_example/basic_route.py +0 -0
  71. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/gemini_example/__init__.py +0 -0
  72. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/gemini_example/function_tools.py +0 -0
  73. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/gemini_example/main.py +0 -0
  74. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/google_genai_example/__init__.py +0 -0
  75. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/google_genai_example/main.py +0 -0
  76. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/graphlit_example/__init__.py +0 -0
  77. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/graphlit_example/conversation.py +0 -0
  78. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/hiveagent_example/basic.py +0 -0
  79. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/inspect_ai_example/basic_eval.py +0 -0
  80. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/langchain_example/__init__.py +0 -0
  81. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/langchain_example/basic.py +0 -0
  82. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/langchain_example/groq_example.py +0 -0
  83. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/langchain_example/langchain_google_example.py +0 -0
  84. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/langchain_example/langgraph_example.py +0 -0
  85. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/langchain_example/langgraph_example_tools.py +0 -0
  86. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/langchain_example/sagemaker.py +0 -0
  87. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/langchain_example/tool.py +0 -0
  88. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/langgraph_example/main.py +0 -0
  89. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/litellm_example/basic.py +0 -0
  90. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/litellm_example/config.yaml +0 -0
  91. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/litellm_example/proxy_basic.py +0 -0
  92. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/llamaindex_example/__init__.py +0 -0
  93. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/llamaindex_example/agent.py +0 -0
  94. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/llamaindex_example/basic.py +0 -0
  95. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/llamaindex_example/data/abramov.txt +0 -0
  96. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/milvus_example/main.py +0 -0
  97. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/mistral_example/__init__.py +0 -0
  98. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/mistral_example/complete.py +0 -0
  99. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/mistral_example/complete_async.py +0 -0
  100. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/mistral_example/embeddings.py +0 -0
  101. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/mongo_vector_search_example/main.py +0 -0
  102. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/ollama_example/__init__.py +0 -0
  103. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/ollama_example/basic.py +0 -0
  104. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/__init__.py +0 -0
  105. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/async_tool_calling_nonstreaming.py +0 -0
  106. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/async_tool_calling_streaming.py +0 -0
  107. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/chat_completion.py +0 -0
  108. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/chat_completion_tool_choice.py +0 -0
  109. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/embeddings_create.py +0 -0
  110. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/function_calling.py +0 -0
  111. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/images_edit.py +0 -0
  112. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/images_generate.py +0 -0
  113. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/resources/lounge_flamingo.png +0 -0
  114. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/resources/mask.png +0 -0
  115. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/send_user_feedback.py +0 -0
  116. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/tool_calling.py +0 -0
  117. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/tool_calling_nonstreaming.py +0 -0
  118. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/openai_example/tool_calling_streaming.py +0 -0
  119. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/otlp_example/otlp_basic.py +0 -0
  120. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/otlp_example/otlp_with_langtrace.py +0 -0
  121. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/perplexity_example/basic.py +0 -0
  122. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/phidata_example/__init__.py +0 -0
  123. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/phidata_example/agent.py +0 -0
  124. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/pinecone_example/__init__.py +0 -0
  125. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/pinecone_example/basic.py +0 -0
  126. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/qdrant_example/__init__.py +0 -0
  127. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/qdrant_example/basic.py +0 -0
  128. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/routellm_example/basic.py +0 -0
  129. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/vertexai_example/__init__.py +0 -0
  130. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/vertexai_example/main.py +0 -0
  131. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/weaviate_example/__init__.py +0 -0
  132. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/examples/weaviate_example/query_text.py +0 -0
  133. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/__init__.py +0 -0
  134. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/__init__.py +0 -0
  135. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/exporter/langtrace_exporter.py +0 -0
  136. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/__init__.py +0 -0
  137. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/anthropic.py +0 -0
  138. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/aws_bedrock.py +0 -0
  139. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/chroma.py +0 -0
  140. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/cohere.py +0 -0
  141. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/embedchain.py +0 -0
  142. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/gemini.py +0 -0
  143. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/groq.py +0 -0
  144. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/litellm.py +0 -0
  145. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/milvus.py +0 -0
  146. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/mistral.py +0 -0
  147. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/ollama.py +0 -0
  148. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/openai.py +0 -0
  149. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/pinecone.py +0 -0
  150. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/pymongo.py +0 -0
  151. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/qdrant.py +0 -0
  152. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/vertexai.py +0 -0
  153. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/constants/instrumentation/weaviate.py +0 -0
  154. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/extensions/__init__.py +0 -0
  155. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/extensions/langtrace_exporter.py +0 -0
  156. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/extensions/langtrace_filesystem.py +0 -0
  157. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/agno/__init__.py +0 -0
  158. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/agno/instrumentation.py +0 -0
  159. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/anthropic/__init__.py +0 -0
  160. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/anthropic/instrumentation.py +0 -0
  161. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/anthropic/patch.py +0 -0
  162. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/anthropic/types.py +0 -0
  163. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/autogen/__init__.py +0 -0
  164. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/autogen/instrumentation.py +0 -0
  165. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/autogen/patch.py +0 -0
  166. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/aws_bedrock/__init__.py +0 -0
  167. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/aws_bedrock/bedrock_streaming_wrapper.py +0 -0
  168. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/aws_bedrock/instrumentation.py +0 -0
  169. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/aws_bedrock/patch.py +0 -0
  170. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/aws_bedrock/stream_body_wrapper.py +0 -0
  171. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/cerebras/__init__.py +0 -0
  172. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/cerebras/instrumentation.py +0 -0
  173. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/cerebras/patch.py +0 -0
  174. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/chroma/__init__.py +0 -0
  175. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/chroma/instrumentation.py +0 -0
  176. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/chroma/patch.py +0 -0
  177. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/cohere/__init__.py +0 -0
  178. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/cohere/instrumentation.py +0 -0
  179. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/cohere/patch.py +0 -0
  180. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/crewai/__init__.py +0 -0
  181. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/crewai/instrumentation.py +0 -0
  182. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/crewai/patch.py +0 -0
  183. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/crewai_tools/__init__.py +0 -0
  184. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/crewai_tools/instrumentation.py +0 -0
  185. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/crewai_tools/patch.py +0 -0
  186. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/dspy/__init__.py +0 -0
  187. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/dspy/instrumentation.py +0 -0
  188. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/dspy/patch.py +0 -0
  189. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/embedchain/__init__.py +0 -0
  190. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/embedchain/instrumentation.py +0 -0
  191. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/embedchain/patch.py +0 -0
  192. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/gemini/__init__.py +0 -0
  193. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/gemini/instrumentation.py +0 -0
  194. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/gemini/patch.py +0 -0
  195. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/google_genai/__init__.py +0 -0
  196. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/google_genai/instrumentation.py +0 -0
  197. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/google_genai/patch.py +0 -0
  198. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/graphlit/__init__.py +0 -0
  199. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/graphlit/instrumentation.py +0 -0
  200. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/groq/__init__.py +0 -0
  201. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/groq/instrumentation.py +0 -0
  202. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/groq/patch.py +0 -0
  203. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langchain/__init__.py +0 -0
  204. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langchain/instrumentation.py +0 -0
  205. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langchain/patch.py +0 -0
  206. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langchain_community/__init__.py +0 -0
  207. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langchain_community/instrumentation.py +0 -0
  208. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langchain_community/patch.py +0 -0
  209. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langchain_core/__init__.py +0 -0
  210. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langchain_core/instrumentation.py +0 -0
  211. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langchain_core/patch.py +0 -0
  212. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langgraph/__init__.py +0 -0
  213. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langgraph/instrumentation.py +0 -0
  214. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/langgraph/patch.py +0 -0
  215. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/litellm/__init__.py +0 -0
  216. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/litellm/instrumentation.py +0 -0
  217. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/litellm/patch.py +0 -0
  218. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/litellm/types.py +0 -0
  219. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/llamaindex/__init__.py +0 -0
  220. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/llamaindex/instrumentation.py +0 -0
  221. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/llamaindex/patch.py +0 -0
  222. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/milvus/__init__.py +0 -0
  223. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/milvus/instrumentation.py +0 -0
  224. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/milvus/patch.py +0 -0
  225. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/mistral/__init__.py +0 -0
  226. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/mistral/instrumentation.py +0 -0
  227. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/mistral/patch.py +0 -0
  228. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/ollama/__init__.py +0 -0
  229. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/ollama/instrumentation.py +0 -0
  230. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/ollama/patch.py +0 -0
  231. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/openai/__init__.py +0 -0
  232. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/openai/instrumentation.py +0 -0
  233. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/openai/patch.py +0 -0
  234. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/openai/types.py +0 -0
  235. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/phidata/__init__.py +0 -0
  236. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/phidata/instrumentation.py +0 -0
  237. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/phidata/patch.py +0 -0
  238. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/pinecone/__init__.py +0 -0
  239. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/pinecone/instrumentation.py +0 -0
  240. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/pinecone/patch.py +0 -0
  241. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/pymongo/__init__.py +0 -0
  242. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/pymongo/instrumentation.py +0 -0
  243. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/pymongo/patch.py +0 -0
  244. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/qdrant/__init__.py +0 -0
  245. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/qdrant/instrumentation.py +0 -0
  246. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/qdrant/patch.py +0 -0
  247. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/vertexai/__init__.py +0 -0
  248. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/vertexai/instrumentation.py +0 -0
  249. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/vertexai/patch.py +0 -0
  250. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/weaviate/__init__.py +0 -0
  251. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/weaviate/instrumentation.py +0 -0
  252. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/instrumentation/weaviate/patch.py +0 -0
  253. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/types/__init__.py +0 -0
  254. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/utils/__init__.py +0 -0
  255. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/utils/langtrace_sampler.py +0 -0
  256. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/utils/llm.py +0 -0
  257. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/utils/misc.py +0 -0
  258. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/utils/prompt_registry.py +0 -0
  259. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/utils/sdk_version_checker.py +0 -0
  260. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/utils/silently_fail.py +0 -0
  261. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/utils/types.py +0 -0
  262. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/langtrace_python_sdk/utils/with_root_span.py +0 -0
  263. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/run_example.py +0 -0
  264. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/__init__.py +0 -0
  265. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/anthropic/cassettes/test_anthropic.yaml +0 -0
  266. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/anthropic/cassettes/test_anthropic_streaming.yaml +0 -0
  267. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/anthropic/cassettes/test_async_anthropic_streaming.yaml +0 -0
  268. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/anthropic/conftest.py +0 -0
  269. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/anthropic/test_anthropic.py +0 -0
  270. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/chroma/conftest.py +0 -0
  271. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/chroma/test_chroma.py +0 -0
  272. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/cohere/cassettes/test_cohere_chat.yaml +0 -0
  273. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/cohere/cassettes/test_cohere_chat_streaming.yaml +0 -0
  274. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/cohere/cassettes/test_cohere_embed.yaml +0 -0
  275. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/cohere/cassettes/test_cohere_rerank.yaml +0 -0
  276. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/cohere/conftest.py +0 -0
  277. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/cohere/test_cohere_chat.py +0 -0
  278. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/cohere/test_cohere_embed.py +0 -0
  279. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/cohere/test_cohere_rerank.py +0 -0
  280. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/conftest.py +0 -0
  281. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/groq/cassettes/test_async_chat_completion.yaml +0 -0
  282. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/groq/cassettes/test_async_chat_completion_streaming.yaml +0 -0
  283. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/groq/cassettes/test_chat_completion.yaml +0 -0
  284. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/groq/cassettes/test_chat_completion_streaming.yaml +0 -0
  285. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/groq/conftest.py +0 -0
  286. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/groq/test_groq.py +0 -0
  287. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/langchain/cassettes/test_langchain.yaml +0 -0
  288. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/langchain/conftest.py +0 -0
  289. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/langchain/test_langchain.py +0 -0
  290. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/cassettes/test_async_chat_completion_streaming.yaml +0 -0
  291. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/cassettes/test_async_image_generation.yaml +0 -0
  292. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/cassettes/test_chat_completion.yaml +0 -0
  293. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/cassettes/test_chat_completion_streaming.yaml +0 -0
  294. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/cassettes/test_embeddings_base_url.yaml +0 -0
  295. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/cassettes/test_image_generation.yaml +0 -0
  296. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/conftest.py +0 -0
  297. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/test_chat_completion.py +0 -0
  298. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/test_embeddings.py +0 -0
  299. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/openai/test_image_generation.py +0 -0
  300. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/pinecone/cassettes/test_query.yaml +0 -0
  301. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/pinecone/cassettes/test_upsert.yaml +0 -0
  302. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/pinecone/conftest.py +0 -0
  303. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/pinecone/test_pinecone.py +0 -0
  304. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/qdrant/conftest.py +0 -0
  305. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/qdrant/test_qdrant.py +0 -0
  306. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/test_session_id.py +0 -0
  307. {langtrace_python_sdk-3.8.0 → langtrace_python_sdk-3.8.2}/src/tests/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: langtrace-python-sdk
3
- Version: 3.8.0
3
+ Version: 3.8.2
4
4
  Summary: Python SDK for LangTrace
5
5
  Project-URL: Homepage, https://github.com/Scale3-Labs/langtrace-python-sdk
6
6
  Author-email: Scale3 Labs <engineering@scale3labs.com>
@@ -0,0 +1,18 @@
1
+ import os
2
+
3
+ from cleanlab_tlm import TLM
4
+ from dotenv import find_dotenv, load_dotenv
5
+
6
+ from langtrace_python_sdk import langtrace
7
+
8
+ _ = load_dotenv(find_dotenv())
9
+
10
+ langtrace.init()
11
+
12
+ api_key = os.getenv("CLEANLAB_API_KEY")
13
+ tlm = TLM(api_key=api_key, options={"log": ["explanation"], "model": "gpt-4o-mini"}) # GPT, Claude, etc
14
+ out = tlm.prompt("What's the third month of the year alphabetically?")
15
+ trustworthiness_score = tlm.get_trustworthiness_score("What's the first month of the year?", response="January")
16
+
17
+ print(out)
18
+ print(trustworthiness_score)
@@ -13,6 +13,8 @@ SERVICE_PROVIDERS = {
13
13
  "ARCH": "Arch",
14
14
  "AZURE": "Azure",
15
15
  "CHROMA": "Chroma",
16
+ "CLEANLAB": "CleanLab",
17
+ "COHERE": "Cohere",
16
18
  "CREWAI": "CrewAI",
17
19
  "DEEPSEEK": "DeepSeek",
18
20
  "DSPY": "DSPy",
@@ -25,7 +27,6 @@ SERVICE_PROVIDERS = {
25
27
  "LLAMAINDEX": "LlamaIndex",
26
28
  "OPENAI": "OpenAI",
27
29
  "PINECONE": "Pinecone",
28
- "COHERE": "Cohere",
29
30
  "PPLX": "Perplexity",
30
31
  "QDRANT": "Qdrant",
31
32
  "WEAVIATE": "Weaviate",
@@ -1,8 +1,10 @@
1
+ from .agno import AgnoInstrumentation
1
2
  from .anthropic import AnthropicInstrumentation
2
3
  from .autogen import AutogenInstrumentation
3
4
  from .aws_bedrock import AWSBedrockInstrumentation
4
5
  from .cerebras import CerebrasInstrumentation
5
6
  from .chroma import ChromaInstrumentation
7
+ from .cleanlab import CleanLabInstrumentation
6
8
  from .cohere import CohereInstrumentation
7
9
  from .crewai import CrewAIInstrumentation
8
10
  from .crewai_tools import CrewaiToolsInstrumentation
@@ -10,6 +12,7 @@ from .dspy import DspyInstrumentation
10
12
  from .embedchain import EmbedchainInstrumentation
11
13
  from .gemini import GeminiInstrumentation
12
14
  from .google_genai import GoogleGenaiInstrumentation
15
+ from .graphlit import GraphlitInstrumentation
13
16
  from .groq import GroqInstrumentation
14
17
  from .langchain import LangchainInstrumentation
15
18
  from .langchain_community import LangchainCommunityInstrumentation
@@ -21,17 +24,12 @@ from .milvus import MilvusInstrumentation
21
24
  from .mistral import MistralInstrumentation
22
25
  from .ollama import OllamaInstrumentor
23
26
  from .openai import OpenAIInstrumentation
27
+ from .phidata import PhiDataInstrumentation
24
28
  from .pinecone import PineconeInstrumentation
25
29
  from .pymongo import PyMongoInstrumentation
26
30
  from .qdrant import QdrantInstrumentation
27
31
  from .vertexai import VertexAIInstrumentation
28
32
  from .weaviate import WeaviateInstrumentation
29
- from .cerebras import CerebrasInstrumentation
30
- from .milvus import MilvusInstrumentation
31
- from .google_genai import GoogleGenaiInstrumentation
32
- from .graphlit import GraphlitInstrumentation
33
- from .phidata import PhiDataInstrumentation
34
- from .agno import AgnoInstrumentation
35
33
 
36
34
  __all__ = [
37
35
  "AnthropicInstrumentation",
@@ -65,4 +63,5 @@ __all__ = [
65
63
  "GraphlitInstrumentation",
66
64
  "PhiDataInstrumentation",
67
65
  "AgnoInstrumentation",
66
+ "CleanLabInstrumentation",
68
67
  ]
@@ -15,26 +15,46 @@ from langtrace_python_sdk.utils import set_span_attribute
15
15
  from langtrace_python_sdk.utils.llm import get_span_name, set_span_attributes
16
16
  from langtrace_python_sdk.utils.misc import serialize_args, serialize_kwargs
17
17
 
18
+ def _safe_serialize(obj):
19
+ """Safely serialize objects that might not be JSON serializable"""
20
+ if hasattr(obj, 'to_dict'):
21
+ return obj.to_dict()
22
+ elif hasattr(obj, '__dict__'):
23
+ return {k: _safe_serialize(v) for k, v in obj.__dict__.items() if not k.startswith('_')}
24
+ elif isinstance(obj, dict):
25
+ return {k: _safe_serialize(v) for k, v in obj.items()}
26
+ elif isinstance(obj, (list, tuple)):
27
+ return [_safe_serialize(i) for i in obj]
28
+ return str(obj)
29
+
30
+ def _safe_json_dumps(obj):
31
+ """Safely dump an object to JSON, handling non-serializable types"""
32
+ try:
33
+ return json.dumps(obj)
34
+ except (TypeError, ValueError):
35
+ return json.dumps(_safe_serialize(obj))
36
+
18
37
  def _extract_metrics(metrics: Dict[str, Any]) -> Dict[str, Any]:
19
38
  """Helper function to extract and format metrics"""
20
- formatted_metrics = {}
39
+ if not metrics:
40
+ return {}
41
+
42
+ if hasattr(metrics, 'to_dict'):
43
+ metrics = metrics.to_dict()
44
+ elif hasattr(metrics, '__dict__'):
45
+ metrics = {k: v for k, v in metrics.__dict__.items() if not k.startswith('_')}
21
46
 
22
- # Extract basic metrics
47
+ formatted_metrics = {}
48
+
23
49
  for key in ['time', 'time_to_first_token', 'input_tokens', 'output_tokens',
24
- 'prompt_tokens', 'completion_tokens', 'total_tokens']:
50
+ 'prompt_tokens', 'completion_tokens', 'total_tokens',
51
+ 'prompt_tokens_details', 'completion_tokens_details', 'tool_call_times']:
25
52
  if key in metrics:
26
53
  formatted_metrics[key] = metrics[key]
27
-
28
- # Extract nested metric details if present
29
- if 'prompt_tokens_details' in metrics:
30
- formatted_metrics['prompt_tokens_details'] = metrics['prompt_tokens_details']
31
- if 'completion_tokens_details' in metrics:
32
- formatted_metrics['completion_tokens_details'] = metrics['completion_tokens_details']
33
- if 'tool_call_times' in metrics:
34
- formatted_metrics['tool_call_times'] = metrics['tool_call_times']
35
-
54
+
36
55
  return formatted_metrics
37
56
 
57
+
38
58
  def patch_memory(operation_name, version, tracer: Tracer):
39
59
  def traced_method(wrapped, instance, args, kwargs):
40
60
  service_provider = SERVICE_PROVIDERS["AGNO"]
@@ -110,86 +130,120 @@ def patch_agent(operation_name, version, tracer: Tracer):
110
130
  try:
111
131
  set_span_attributes(span, attributes)
112
132
  AgnoSpanAttributes(span=span, instance=instance)
113
- result_generator = wrapped(*args, **kwargs)
114
-
115
- accumulated_content = ""
116
- current_tool_call = None
117
- response_metadata = None
118
- seen_tool_calls = set()
119
-
120
- try:
121
- for response in result_generator:
122
- if not hasattr(response, 'to_dict'):
123
- yield response
124
- continue
125
-
126
- if not response_metadata:
127
- response_metadata = {
128
- "run_id": response.run_id,
129
- "agent_id": response.agent_id,
130
- "session_id": response.session_id,
131
- "model": response.model,
132
- "content_type": response.content_type,
133
- }
134
- for key, value in response_metadata.items():
135
- if value is not None:
136
- set_span_attribute(span, f"agno.agent.{key}", str(value))
137
-
138
- if response.content:
139
- accumulated_content += response.content
140
- set_span_attribute(span, "agno.agent.response", accumulated_content)
141
-
142
- if response.messages:
143
- for msg in response.messages:
144
- if msg.tool_calls:
145
- for tool_call in msg.tool_calls:
146
- tool_id = tool_call.get('id')
147
- if tool_id and tool_id not in seen_tool_calls:
148
- seen_tool_calls.add(tool_id)
149
- tool_info = {
150
- 'id': tool_id,
151
- 'name': tool_call.get('function', {}).get('name'),
152
- 'arguments': tool_call.get('function', {}).get('arguments'),
153
- 'start_time': msg.created_at,
154
- }
155
- current_tool_call = tool_info
156
- set_span_attribute(span, f"agno.agent.tool_call.{tool_id}", json.dumps(tool_info))
157
-
158
- if msg.metrics:
159
- metrics = _extract_metrics(msg.metrics)
160
- role_prefix = f"agno.agent.metrics.{msg.role}"
161
- for key, value in metrics.items():
162
- set_span_attribute(span, f"{role_prefix}.{key}", str(value))
163
-
164
- if response.tools:
165
- for tool in response.tools:
166
- tool_id = tool.get('tool_call_id')
167
- if tool_id and current_tool_call and current_tool_call['id'] == tool_id:
168
- tool_result = {
169
- **current_tool_call,
170
- 'result': tool.get('content'),
171
- 'error': tool.get('tool_call_error'),
172
- 'end_time': tool.get('created_at'),
173
- 'metrics': tool.get('metrics'),
174
- }
175
- set_span_attribute(span, f"agno.agent.tool_call.{tool_id}", json.dumps(tool_result))
176
- current_tool_call = None
177
-
178
- yield response
179
-
180
- except Exception as err:
181
- span.record_exception(err)
182
- span.set_status(Status(StatusCode.ERROR, str(err)))
183
- raise
184
- finally:
185
- span.set_status(Status(StatusCode.OK))
186
- if len(seen_tool_calls) > 0:
187
- span.set_attribute("agno.agent.total_tool_calls", len(seen_tool_calls))
133
+ is_streaming = kwargs.get('stream', False)
134
+ result = wrapped(*args, **kwargs)
135
+
136
+ if not is_streaming and not operation_name.startswith('Agent._'):
137
+ if hasattr(result, 'to_dict'):
138
+ _process_response(span, result)
139
+ return result
140
+
141
+ # Handle streaming (generator) case
142
+ return _process_generator(span, result)
143
+
188
144
  except Exception as err:
189
145
  span.record_exception(err)
190
146
  span.set_status(Status(StatusCode.ERROR, str(err)))
191
147
  raise
192
148
 
149
+ # Helper function to process a generator
150
+ def _process_generator(span, result_generator):
151
+ accumulated_content = ""
152
+ current_tool_call = None
153
+ response_metadata = None
154
+ seen_tool_calls = set()
155
+
156
+ try:
157
+ for response in result_generator:
158
+ if not hasattr(response, 'to_dict'):
159
+ yield response
160
+ continue
161
+
162
+ _process_response(span, response,
163
+ accumulated_content=accumulated_content,
164
+ current_tool_call=current_tool_call,
165
+ response_metadata=response_metadata,
166
+ seen_tool_calls=seen_tool_calls)
167
+
168
+ if response.content:
169
+ accumulated_content += response.content
170
+
171
+ yield response
172
+
173
+ except Exception as err:
174
+ span.record_exception(err)
175
+ span.set_status(Status(StatusCode.ERROR, str(err)))
176
+ raise
177
+ finally:
178
+ span.set_status(Status(StatusCode.OK))
179
+ if len(seen_tool_calls) > 0:
180
+ span.set_attribute("agno.agent.total_tool_calls", len(seen_tool_calls))
181
+
182
+ def _process_response(span, response, accumulated_content="", current_tool_call=None,
183
+ response_metadata=None, seen_tool_calls=set()):
184
+ if not response_metadata:
185
+ response_metadata = {
186
+ "run_id": response.run_id,
187
+ "agent_id": response.agent_id,
188
+ "session_id": response.session_id,
189
+ "model": response.model,
190
+ "content_type": response.content_type,
191
+ }
192
+ for key, value in response_metadata.items():
193
+ if value is not None:
194
+ set_span_attribute(span, f"agno.agent.{key}", str(value))
195
+
196
+ if response.content:
197
+ if accumulated_content:
198
+ accumulated_content += response.content
199
+ else:
200
+ accumulated_content = response.content
201
+ set_span_attribute(span, "agno.agent.response", accumulated_content)
202
+
203
+ if response.messages:
204
+ for msg in response.messages:
205
+ if msg.tool_calls:
206
+ for tool_call in msg.tool_calls:
207
+ tool_id = tool_call.get('id')
208
+ if tool_id and tool_id not in seen_tool_calls:
209
+ seen_tool_calls.add(tool_id)
210
+ tool_info = {
211
+ 'id': tool_id,
212
+ 'name': tool_call.get('function', {}).get('name'),
213
+ 'arguments': tool_call.get('function', {}).get('arguments'),
214
+ 'start_time': msg.created_at,
215
+ }
216
+ current_tool_call = tool_info
217
+ set_span_attribute(span, f"agno.agent.tool_call.{tool_id}", _safe_json_dumps(tool_info))
218
+
219
+ if msg.metrics:
220
+ metrics = _extract_metrics(msg.metrics)
221
+ role_prefix = f"agno.agent.metrics.{msg.role}"
222
+ for key, value in metrics.items():
223
+ set_span_attribute(span, f"{role_prefix}.{key}", str(value))
224
+
225
+ if response.tools:
226
+ for tool in response.tools:
227
+ tool_id = tool.get('tool_call_id')
228
+ if tool_id and current_tool_call and current_tool_call['id'] == tool_id:
229
+ tool_result = {
230
+ **current_tool_call,
231
+ 'result': tool.get('content'),
232
+ 'error': tool.get('tool_call_error'),
233
+ 'end_time': tool.get('created_at'),
234
+ 'metrics': tool.get('metrics'),
235
+ }
236
+ set_span_attribute(span, f"agno.agent.tool_call.{tool_id}", _safe_json_dumps(tool_result))
237
+ current_tool_call = None
238
+
239
+ if response.metrics:
240
+ metrics = _extract_metrics(response.metrics)
241
+ for key, value in metrics.items():
242
+ set_span_attribute(span, f"agno.agent.metrics.{key}", str(value))
243
+
244
+ if len(seen_tool_calls) > 0:
245
+ span.set_attribute("agno.agent.total_tool_calls", len(seen_tool_calls))
246
+
193
247
  return traced_method
194
248
 
195
249
  class AgnoSpanAttributes:
@@ -238,7 +292,7 @@ class AgnoSpanAttributes:
238
292
 
239
293
  if hasattr(self.instance.model, 'metrics') and self.instance.model.metrics:
240
294
  metrics = _extract_metrics(self.instance.model.metrics)
241
- set_span_attribute(self.span, "agno.agent.model.metrics", json.dumps(metrics))
295
+ set_span_attribute(self.span, "agno.agent.model.metrics", _safe_json_dumps(metrics))
242
296
 
243
297
  if self.instance.tools:
244
298
  tool_list = []
@@ -0,0 +1,5 @@
1
+ from .instrumentation import CleanLabInstrumentation
2
+
3
+ __all__ = [
4
+ "CleanLabInstrumentation",
5
+ ]
@@ -0,0 +1,62 @@
1
+ """
2
+ Copyright (c) 2025 Scale3 Labs
3
+ Licensed under the Apache License, Version 2.0 (the "License");
4
+ you may not use this file except in compliance with the License.
5
+ You may obtain a copy of the License at
6
+ http://www.apache.org/licenses/LICENSE-2.0
7
+ Unless required by applicable law or agreed to in writing, software
8
+ distributed under the License is distributed on an "AS IS" BASIS,
9
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ See the License for the specific language governing permissions and
11
+ limitations under the License.
12
+ """
13
+
14
+ import importlib.metadata
15
+ import logging
16
+ from typing import Any, Collection, Optional
17
+
18
+ from opentelemetry.instrumentation.instrumentor import BaseInstrumentor
19
+ from opentelemetry.trace import TracerProvider, get_tracer
20
+ from wrapt import wrap_function_wrapper
21
+
22
+ from langtrace_python_sdk.instrumentation.cleanlab.patch import generic_patch
23
+
24
+ logging.basicConfig(level=logging.FATAL)
25
+
26
+
27
+ class CleanLabInstrumentation(BaseInstrumentor): # type: ignore
28
+
29
+ def instrumentation_dependencies(self) -> Collection[str]:
30
+ return ["cleanlab-tlm >= 1.0.7", "trace-attributes >= 4.0.5"]
31
+
32
+ def _instrument(self, **kwargs: Any) -> None:
33
+ tracer_provider: Optional[TracerProvider] = kwargs.get("tracer_provider")
34
+ tracer = get_tracer(__name__, "", tracer_provider)
35
+ version: str = importlib.metadata.version("cleanlab_tlm")
36
+
37
+ wrap_function_wrapper(
38
+ "cleanlab_tlm.tlm",
39
+ "TLM.prompt",
40
+ generic_patch(version, tracer),
41
+ )
42
+
43
+ wrap_function_wrapper(
44
+ "cleanlab_tlm.tlm",
45
+ "TLM.get_trustworthiness_score",
46
+ generic_patch(version, tracer),
47
+ )
48
+
49
+ wrap_function_wrapper(
50
+ "cleanlab_tlm.tlm",
51
+ "TLM.try_prompt",
52
+ generic_patch(version, tracer),
53
+ )
54
+
55
+ wrap_function_wrapper(
56
+ "cleanlab_tlm.tlm",
57
+ "TLM.try_get_trustworthiness_score",
58
+ generic_patch(version, tracer),
59
+ )
60
+
61
+ def _uninstrument(self, **kwargs: Any) -> None:
62
+ pass
@@ -0,0 +1,75 @@
1
+ import json
2
+ from typing import Any, Callable, List
3
+
4
+ from importlib_metadata import version as v
5
+ from langtrace.trace_attributes import FrameworkSpanAttributes
6
+ from opentelemetry import baggage
7
+ from opentelemetry.trace import SpanKind, Tracer
8
+ from opentelemetry.trace.status import Status, StatusCode
9
+
10
+ from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
11
+ from langtrace_python_sdk.constants.instrumentation.common import (
12
+ LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY, SERVICE_PROVIDERS)
13
+ from langtrace_python_sdk.instrumentation.openai.types import \
14
+ ChatCompletionsCreateKwargs
15
+ from langtrace_python_sdk.utils.llm import set_span_attributes
16
+ from langtrace_python_sdk.utils.misc import serialize_args, serialize_kwargs
17
+
18
+
19
+ def generic_patch(version: str, tracer: Tracer) -> Callable:
20
+ """Wrap the `prompt` method of the `TLM` class to trace it."""
21
+
22
+ def traced_method(
23
+ wrapped: Callable,
24
+ instance: Any,
25
+ args: List[Any],
26
+ kwargs: ChatCompletionsCreateKwargs,
27
+ ) -> Any:
28
+ service_provider = SERVICE_PROVIDERS["CLEANLAB"]
29
+ extra_attributes = baggage.get_baggage(LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY)
30
+ span_attributes = {
31
+ "langtrace.sdk.name": "langtrace-python-sdk",
32
+ "langtrace.service.name": service_provider,
33
+ "langtrace.service.type": "framework",
34
+ "langtrace.service.version": version,
35
+ "langtrace.version": v(LANGTRACE_SDK_NAME),
36
+ **(extra_attributes if extra_attributes is not None else {}),
37
+ }
38
+
39
+ span_attributes["tlm.metadata"] = serialize_kwargs(**kwargs)
40
+ span_attributes["tlm.inputs"] = serialize_args(*args)
41
+
42
+ attributes = FrameworkSpanAttributes(**span_attributes)
43
+
44
+ with tracer.start_as_current_span(
45
+ name=f"tlm.{wrapped.__name__}", kind=SpanKind.CLIENT
46
+ ) as span:
47
+ try:
48
+ set_span_attributes(span, attributes)
49
+ result = wrapped(*args, **kwargs)
50
+ if result:
51
+ # Handle result serialization based on its type
52
+ if hasattr(result, 'model_dump_json'):
53
+ # For Pydantic models
54
+ result_json = json.loads(result.model_dump_json())
55
+ elif isinstance(result, dict):
56
+ # For dictionary results
57
+ result_json = result
58
+ else:
59
+ # For other types, try to convert to dict or use string representation
60
+ try:
61
+ result_json = json.loads(json.dumps(result, default=str))
62
+ except Exception: # pylint: disable=W0702, W0718
63
+ result_json = str(result)
64
+
65
+ span.set_attribute("tlm.result", str(result_json))
66
+ span.set_status(Status(StatusCode.OK))
67
+
68
+ return result
69
+
70
+ except Exception as err:
71
+ span.record_exception(err)
72
+ span.set_status(Status(StatusCode.ERROR, str(err)))
73
+ raise
74
+
75
+ return traced_method
@@ -1,4 +1,5 @@
1
1
  import json
2
+
2
3
  from importlib_metadata import version as v
3
4
  from langtrace.trace_attributes import FrameworkSpanAttributes
4
5
  from opentelemetry import baggage
@@ -7,9 +8,7 @@ from opentelemetry.trace.status import Status, StatusCode
7
8
 
8
9
  from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
9
10
  from langtrace_python_sdk.constants.instrumentation.common import (
10
- LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY,
11
- SERVICE_PROVIDERS,
12
- )
11
+ LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY, SERVICE_PROVIDERS)
13
12
  from langtrace_python_sdk.utils.llm import set_span_attributes
14
13
  from langtrace_python_sdk.utils.misc import serialize_args, serialize_kwargs
15
14
 
@@ -27,8 +26,8 @@ def patch_graphlit_operation(operation_name, version, tracer: Tracer):
27
26
  **(extra_attributes if extra_attributes is not None else {}),
28
27
  }
29
28
 
30
- span_attributes["langchain.metadata"] = serialize_kwargs(**kwargs)
31
- span_attributes["langchain.inputs"] = serialize_args(*args)
29
+ span_attributes["graphlit.metadata"] = serialize_kwargs(**kwargs)
30
+ span_attributes["graphlit.inputs"] = serialize_args(*args)
32
31
 
33
32
  attributes = FrameworkSpanAttributes(**span_attributes)
34
33
 
@@ -29,54 +29,9 @@ from opentelemetry.exporter.otlp.proto.http.trace_exporter import \
29
29
  from opentelemetry.instrumentation.sqlalchemy import SQLAlchemyInstrumentor
30
30
  from opentelemetry.sdk.resources import SERVICE_NAME, Resource
31
31
  from opentelemetry.sdk.trace import TracerProvider
32
- from opentelemetry.sdk.trace.export import (
33
- BatchSpanProcessor,
34
- ConsoleSpanExporter,
35
- SimpleSpanProcessor,
36
- )
37
-
38
- from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import (
39
- OTLPSpanExporter as GRPCExporter,
40
- )
41
- from opentelemetry.exporter.otlp.proto.http.trace_exporter import (
42
- OTLPSpanExporter as HTTPExporter,
43
- )
44
- from langtrace_python_sdk.constants.exporter.langtrace_exporter import (
45
- LANGTRACE_REMOTE_URL,
46
- LANGTRACE_SESSION_ID_HEADER,
47
- )
48
- from langtrace_python_sdk.instrumentation import (
49
- AnthropicInstrumentation,
50
- ChromaInstrumentation,
51
- CohereInstrumentation,
52
- CrewAIInstrumentation,
53
- DspyInstrumentation,
54
- EmbedchainInstrumentation,
55
- GeminiInstrumentation,
56
- GroqInstrumentation,
57
- LangchainCommunityInstrumentation,
58
- LangchainCoreInstrumentation,
59
- LangchainInstrumentation,
60
- LanggraphInstrumentation,
61
- LiteLLMInstrumentation,
62
- LlamaindexInstrumentation,
63
- MistralInstrumentation,
64
- AWSBedrockInstrumentation,
65
- OllamaInstrumentor,
66
- OpenAIInstrumentation,
67
- PineconeInstrumentation,
68
- QdrantInstrumentation,
69
- AutogenInstrumentation,
70
- VertexAIInstrumentation,
71
- WeaviateInstrumentation,
72
- PyMongoInstrumentation,
73
- CerebrasInstrumentation,
74
- MilvusInstrumentation,
75
- GoogleGenaiInstrumentation,
76
- GraphlitInstrumentation,
77
- PhiDataInstrumentation,
78
- AgnoInstrumentation,
79
- )
32
+ from opentelemetry.sdk.trace.export import (BatchSpanProcessor,
33
+ ConsoleSpanExporter,
34
+ SimpleSpanProcessor)
80
35
  from opentelemetry.util.re import parse_env_headers
81
36
  from sentry_sdk.types import Event, Hint
82
37
 
@@ -86,17 +41,18 @@ from langtrace_python_sdk.constants.exporter.langtrace_exporter import (
86
41
  from langtrace_python_sdk.extensions.langtrace_exporter import \
87
42
  LangTraceExporter
88
43
  from langtrace_python_sdk.instrumentation import (
89
- AnthropicInstrumentation, AutogenInstrumentation,
44
+ AgnoInstrumentation, AnthropicInstrumentation, AutogenInstrumentation,
90
45
  AWSBedrockInstrumentation, CerebrasInstrumentation, ChromaInstrumentation,
91
- CohereInstrumentation, CrewAIInstrumentation, CrewaiToolsInstrumentation,
92
- DspyInstrumentation, EmbedchainInstrumentation, GeminiInstrumentation,
93
- GoogleGenaiInstrumentation, GroqInstrumentation,
94
- LangchainCommunityInstrumentation, LangchainCoreInstrumentation,
95
- LangchainInstrumentation, LanggraphInstrumentation, LiteLLMInstrumentation,
46
+ CleanLabInstrumentation, CohereInstrumentation, CrewAIInstrumentation,
47
+ CrewaiToolsInstrumentation, DspyInstrumentation, EmbedchainInstrumentation,
48
+ GeminiInstrumentation, GoogleGenaiInstrumentation, GraphlitInstrumentation,
49
+ GroqInstrumentation, LangchainCommunityInstrumentation,
50
+ LangchainCoreInstrumentation, LangchainInstrumentation,
51
+ LanggraphInstrumentation, LiteLLMInstrumentation,
96
52
  LlamaindexInstrumentation, MilvusInstrumentation, MistralInstrumentation,
97
- OllamaInstrumentor, OpenAIInstrumentation, PineconeInstrumentation,
98
- PyMongoInstrumentation, QdrantInstrumentation, VertexAIInstrumentation,
99
- WeaviateInstrumentation)
53
+ OllamaInstrumentor, OpenAIInstrumentation, PhiDataInstrumentation,
54
+ PineconeInstrumentation, PyMongoInstrumentation, QdrantInstrumentation,
55
+ VertexAIInstrumentation, WeaviateInstrumentation)
100
56
  from langtrace_python_sdk.types import (DisableInstrumentations,
101
57
  InstrumentationMethods)
102
58
  from langtrace_python_sdk.utils import (check_if_sdk_is_outdated,
@@ -334,6 +290,7 @@ def init(
334
290
  "cerebras-cloud-sdk": CerebrasInstrumentation(),
335
291
  "pymilvus": MilvusInstrumentation(),
336
292
  "crewai-tools": CrewaiToolsInstrumentation(),
293
+ "cleanlab-tlm": CleanLabInstrumentation(),
337
294
  }
338
295
 
339
296
  init_instrumentations(config.disable_instrumentations, all_instrumentations)
@@ -0,0 +1 @@
1
+ __version__ = "3.8.2"
@@ -1 +0,0 @@
1
- __version__ = "3.8.0"