langtrace-python-sdk 2.1.25__tar.gz → 2.1.27__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 (173) hide show
  1. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/PKG-INFO +17 -2
  2. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/README.md +16 -1
  3. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/openai/patch.py +11 -5
  4. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/utils/llm.py +12 -0
  5. langtrace_python_sdk-2.1.27/src/langtrace_python_sdk/version.py +1 -0
  6. langtrace_python_sdk-2.1.25/src/langtrace_python_sdk/version.py +0 -1
  7. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/.gitignore +0 -0
  8. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/LICENSE +0 -0
  9. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/pyproject.toml +0 -0
  10. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/__init__.py +0 -0
  11. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/__init__.py +0 -0
  12. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/anthropic_example/__init__.py +0 -0
  13. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/anthropic_example/completion.py +0 -0
  14. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/chroma_example/__init__.py +0 -0
  15. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/chroma_example/basic.py +0 -0
  16. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/cohere_example/__init__.py +0 -0
  17. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/cohere_example/chat.py +0 -0
  18. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/cohere_example/chat_stream.py +0 -0
  19. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/cohere_example/embed.py +0 -0
  20. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/cohere_example/rerank.py +0 -0
  21. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/cohere_example/tools.py +0 -0
  22. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/crewai_example/basic.py +0 -0
  23. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/dspy_example/math_problems_cot.py +0 -0
  24. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/dspy_example/program_of_thought_basic.py +0 -0
  25. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/dspy_example/quiz_gen.py +0 -0
  26. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/dspy_example/react.py +0 -0
  27. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/fastapi_example/__init__.py +0 -0
  28. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/fastapi_example/basic_route.py +0 -0
  29. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/hiveagent_example/basic.py +0 -0
  30. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/inspect_ai_example/basic_eval.py +0 -0
  31. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/langchain_example/__init__.py +0 -0
  32. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/langchain_example/basic.py +0 -0
  33. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/langchain_example/groq_example.py +0 -0
  34. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/langchain_example/langgraph_example.py +0 -0
  35. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/langchain_example/tool.py +0 -0
  36. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/llamaindex_example/__init__.py +0 -0
  37. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/llamaindex_example/agent.py +0 -0
  38. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/llamaindex_example/basic.py +0 -0
  39. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/llamaindex_example/data/abramov.txt +0 -0
  40. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/ollama_example/__init__.py +0 -0
  41. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/ollama_example/basic.py +0 -0
  42. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/__init__.py +0 -0
  43. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/async_tool_calling_nonstreaming.py +0 -0
  44. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/async_tool_calling_streaming.py +0 -0
  45. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/chat_completion.py +0 -0
  46. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/embeddings_create.py +0 -0
  47. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/function_calling.py +0 -0
  48. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/images_edit.py +0 -0
  49. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/images_generate.py +0 -0
  50. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/resources/lounge_flamingo.png +0 -0
  51. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/resources/mask.png +0 -0
  52. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/tool_calling.py +0 -0
  53. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/tool_calling_nonstreaming.py +0 -0
  54. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/openai_example/tool_calling_streaming.py +0 -0
  55. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/perplexity_example/basic.py +0 -0
  56. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/pinecone_example/__init__.py +0 -0
  57. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/pinecone_example/basic.py +0 -0
  58. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/qdrant_example/__init__.py +0 -0
  59. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/qdrant_example/basic.py +0 -0
  60. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/weaviate_example/__init__.py +0 -0
  61. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/examples/weaviate_example/query_text.py +0 -0
  62. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/__init__.py +0 -0
  63. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/__init__.py +0 -0
  64. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/exporter/langtrace_exporter.py +0 -0
  65. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/__init__.py +0 -0
  66. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/anthropic.py +0 -0
  67. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/chroma.py +0 -0
  68. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/cohere.py +0 -0
  69. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/common.py +0 -0
  70. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/groq.py +0 -0
  71. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/ollama.py +0 -0
  72. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/openai.py +0 -0
  73. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/pinecone.py +0 -0
  74. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/qdrant.py +0 -0
  75. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/constants/instrumentation/weaviate.py +0 -0
  76. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/extensions/__init__.py +0 -0
  77. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/extensions/langtrace_exporter.py +0 -0
  78. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/extensions/langtrace_filesystem.py +0 -0
  79. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/__init__.py +0 -0
  80. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/anthropic/__init__.py +0 -0
  81. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/anthropic/instrumentation.py +0 -0
  82. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/anthropic/patch.py +0 -0
  83. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/chroma/__init__.py +0 -0
  84. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/chroma/instrumentation.py +0 -0
  85. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/chroma/patch.py +0 -0
  86. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/cohere/__init__.py +0 -0
  87. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/cohere/instrumentation.py +0 -0
  88. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/cohere/patch.py +0 -0
  89. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/crewai/__init__.py +0 -0
  90. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/crewai/instrumentation.py +0 -0
  91. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/crewai/patch.py +0 -0
  92. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/dspy/__init__.py +0 -0
  93. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/dspy/instrumentation.py +0 -0
  94. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/dspy/patch.py +0 -0
  95. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/groq/__init__.py +0 -0
  96. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/groq/instrumentation.py +0 -0
  97. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/groq/patch.py +0 -0
  98. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langchain/__init__.py +0 -0
  99. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langchain/instrumentation.py +0 -0
  100. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langchain/patch.py +0 -0
  101. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langchain_community/__init__.py +0 -0
  102. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langchain_community/instrumentation.py +0 -0
  103. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langchain_community/patch.py +0 -0
  104. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langchain_core/__init__.py +0 -0
  105. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langchain_core/instrumentation.py +0 -0
  106. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langchain_core/patch.py +0 -0
  107. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langgraph/__init__.py +0 -0
  108. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langgraph/instrumentation.py +0 -0
  109. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/langgraph/patch.py +0 -0
  110. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/llamaindex/__init__.py +0 -0
  111. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/llamaindex/instrumentation.py +0 -0
  112. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/llamaindex/patch.py +0 -0
  113. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/ollama/__init__.py +0 -0
  114. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/ollama/instrumentation.py +0 -0
  115. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/ollama/patch.py +0 -0
  116. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/openai/__init__.py +0 -0
  117. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/openai/instrumentation.py +0 -0
  118. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/pinecone/__init__.py +0 -0
  119. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/pinecone/instrumentation.py +0 -0
  120. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/pinecone/patch.py +0 -0
  121. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/qdrant/__init__.py +0 -0
  122. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/qdrant/instrumentation.py +0 -0
  123. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/qdrant/patch.py +0 -0
  124. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/weaviate/__init__.py +0 -0
  125. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/weaviate/instrumentation.py +0 -0
  126. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/instrumentation/weaviate/patch.py +0 -0
  127. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/langtrace.py +0 -0
  128. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/types/__init__.py +0 -0
  129. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/utils/__init__.py +0 -0
  130. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/utils/langtrace_sampler.py +0 -0
  131. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/utils/misc.py +0 -0
  132. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/utils/prompt_registry.py +0 -0
  133. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/utils/sdk_version_checker.py +0 -0
  134. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/utils/silently_fail.py +0 -0
  135. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/utils/types.py +0 -0
  136. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/langtrace_python_sdk/utils/with_root_span.py +0 -0
  137. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/run_example.py +0 -0
  138. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/__init__.py +0 -0
  139. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/anthropic/cassettes/test_anthropic.yaml +0 -0
  140. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/anthropic/cassettes/test_anthropic_streaming.yaml +0 -0
  141. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/anthropic/cassettes/test_async_anthropic_streaming.yaml +0 -0
  142. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/anthropic/conftest.py +0 -0
  143. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/anthropic/test_anthropic.py +0 -0
  144. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/chroma/conftest.py +0 -0
  145. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/chroma/test_chroma.py +0 -0
  146. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/cohere/cassettes/test_cohere_chat.yaml +0 -0
  147. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/cohere/cassettes/test_cohere_chat_streaming.yaml +0 -0
  148. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/cohere/cassettes/test_cohere_embed.yaml +0 -0
  149. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/cohere/cassettes/test_cohere_rerank.yaml +0 -0
  150. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/cohere/conftest.py +0 -0
  151. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/cohere/test_cohere_chat.py +0 -0
  152. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/cohere/test_cohere_embed.py +0 -0
  153. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/cohere/test_cohere_rerank.py +0 -0
  154. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/conftest.py +0 -0
  155. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/langchain/cassettes/test_langchain.yaml +0 -0
  156. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/langchain/conftest.py +0 -0
  157. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/langchain/test_langchain.py +0 -0
  158. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/openai/cassettes/test_async_chat_completion_streaming.yaml +0 -0
  159. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/openai/cassettes/test_async_image_generation.yaml +0 -0
  160. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/openai/cassettes/test_chat_completion.yaml +0 -0
  161. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/openai/cassettes/test_chat_completion_streaming.yaml +0 -0
  162. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/openai/cassettes/test_image_generation.yaml +0 -0
  163. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/openai/conftest.py +0 -0
  164. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/openai/test_chat_completion.py +0 -0
  165. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/openai/test_embeddings.py +0 -0
  166. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/openai/test_image_generation.py +0 -0
  167. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/pinecone/cassettes/test_query.yaml +0 -0
  168. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/pinecone/cassettes/test_upsert.yaml +0 -0
  169. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/pinecone/conftest.py +0 -0
  170. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/pinecone/test_pinecone.py +0 -0
  171. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/qdrant/conftest.py +0 -0
  172. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/qdrant/test_qdrant.py +0 -0
  173. {langtrace_python_sdk-2.1.25 → langtrace_python_sdk-2.1.27}/src/tests/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: langtrace-python-sdk
3
- Version: 2.1.25
3
+ Version: 2.1.27
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>
@@ -282,11 +282,14 @@ Langtrace automatically captures traces from the following vendors:
282
282
  | Cohere | LLM | :white_check_mark: | :white_check_mark: |
283
283
  | Groq | LLM | :x: | :white_check_mark: |
284
284
  | Langchain | Framework | :x: | :white_check_mark: |
285
+ | Langgraph | Framework | :x: | :white_check_mark: |
285
286
  | LlamaIndex | Framework | :white_check_mark: | :white_check_mark: |
286
287
  | DSPy | Framework | :x: | :white_check_mark: |
287
288
  | CrewAI | Framework | :x: | :white_check_mark: |
289
+ | Ollama | Framework | :x: | :white_check_mark: |
288
290
  | Pinecone | Vector Database | :white_check_mark: | :white_check_mark: |
289
291
  | ChromaDB | Vector Database | :white_check_mark: | :white_check_mark: |
292
+ | Weaviate | Vector Database | :white_check_mark: | :white_check_mark: |
290
293
  | QDrant | Vector Database | :x: | :white_check_mark: |
291
294
 
292
295
  ---
@@ -302,7 +305,19 @@ Langtrace automatically captures traces from the following vendors:
302
305
 
303
306
  We welcome contributions to this project. To get started, fork this repository and start developing. To get involved, join our [Discord](https://discord.langtrace.ai) workspace.
304
307
 
305
- If you want to run any of the examples go to `run_example.py` file, you will find `ENABLED_EXAMPLES`. choose the example you want to run and just toggle the flag to `True` and run the file using `python src/run_example.py`
308
+ - If you want to run any of the examples go to `run_example.py` file, you will find `ENABLED_EXAMPLES`. choose the example you want to run and just toggle the flag to `True` and run the file using `python src/run_example.py`
309
+
310
+ - If you want to run tests, make sure to install dev & test dependencies:
311
+
312
+ ```python
313
+ pip install '.[test]' && pip install '.[dev]'
314
+ ```
315
+
316
+ then run `pytest` using:
317
+
318
+ ```python
319
+ pytest -v
320
+ ```
306
321
 
307
322
  ---
308
323
 
@@ -240,11 +240,14 @@ Langtrace automatically captures traces from the following vendors:
240
240
  | Cohere | LLM | :white_check_mark: | :white_check_mark: |
241
241
  | Groq | LLM | :x: | :white_check_mark: |
242
242
  | Langchain | Framework | :x: | :white_check_mark: |
243
+ | Langgraph | Framework | :x: | :white_check_mark: |
243
244
  | LlamaIndex | Framework | :white_check_mark: | :white_check_mark: |
244
245
  | DSPy | Framework | :x: | :white_check_mark: |
245
246
  | CrewAI | Framework | :x: | :white_check_mark: |
247
+ | Ollama | Framework | :x: | :white_check_mark: |
246
248
  | Pinecone | Vector Database | :white_check_mark: | :white_check_mark: |
247
249
  | ChromaDB | Vector Database | :white_check_mark: | :white_check_mark: |
250
+ | Weaviate | Vector Database | :white_check_mark: | :white_check_mark: |
248
251
  | QDrant | Vector Database | :x: | :white_check_mark: |
249
252
 
250
253
  ---
@@ -260,7 +263,19 @@ Langtrace automatically captures traces from the following vendors:
260
263
 
261
264
  We welcome contributions to this project. To get started, fork this repository and start developing. To get involved, join our [Discord](https://discord.langtrace.ai) workspace.
262
265
 
263
- If you want to run any of the examples go to `run_example.py` file, you will find `ENABLED_EXAMPLES`. choose the example you want to run and just toggle the flag to `True` and run the file using `python src/run_example.py`
266
+ - If you want to run any of the examples go to `run_example.py` file, you will find `ENABLED_EXAMPLES`. choose the example you want to run and just toggle the flag to `True` and run the file using `python src/run_example.py`
267
+
268
+ - If you want to run tests, make sure to install dev & test dependencies:
269
+
270
+ ```python
271
+ pip install '.[test]' && pip install '.[dev]'
272
+ ```
273
+
274
+ then run `pytest` using:
275
+
276
+ ```python
277
+ pytest -v
278
+ ```
264
279
 
265
280
  ---
266
281
 
@@ -28,7 +28,11 @@ from langtrace_python_sdk.constants.instrumentation.common import (
28
28
  SERVICE_PROVIDERS,
29
29
  )
30
30
  from langtrace_python_sdk.constants.instrumentation.openai import APIS
31
- from langtrace_python_sdk.utils.llm import calculate_prompt_tokens, estimate_tokens
31
+ from langtrace_python_sdk.utils.llm import (
32
+ calculate_prompt_tokens,
33
+ estimate_tokens,
34
+ get_tool_calls,
35
+ )
32
36
  from openai._types import NOT_GIVEN
33
37
 
34
38
 
@@ -430,9 +434,10 @@ def chat_completions_create(original_method, version, tracer):
430
434
  # handle tool calls in the kwargs
431
435
  llm_prompts = []
432
436
  for item in kwargs.get("messages", []):
433
- if hasattr(item, "tool_calls") and item.tool_calls is not None:
437
+ tools = get_tool_calls(item)
438
+ if tools is not None:
434
439
  tool_calls = []
435
- for tool_call in item.tool_calls:
440
+ for tool_call in tools:
436
441
  tool_call_dict = {
437
442
  "id": tool_call.id if hasattr(tool_call, "id") else "",
438
443
  "type": tool_call.type if hasattr(tool_call, "type") else "",
@@ -611,9 +616,10 @@ def async_chat_completions_create(original_method, version, tracer):
611
616
  # handle tool calls in the kwargs
612
617
  llm_prompts = []
613
618
  for item in kwargs.get("messages", []):
614
- if hasattr(item, "tool_calls") and item.tool_calls is not None:
619
+ tools = get_tool_calls(item)
620
+ if tools is not None:
615
621
  tool_calls = []
616
- for tool_call in item.tool_calls:
622
+ for tool_call in tools:
617
623
  tool_call_dict = {
618
624
  "id": tool_call.id if hasattr(tool_call, "id") else "",
619
625
  "type": tool_call.type if hasattr(tool_call, "type") else "",
@@ -65,3 +65,15 @@ def set_span_attributes(span, name, value):
65
65
  if value != "":
66
66
  span.set_attribute(name, value)
67
67
  return
68
+
69
+
70
+ def get_tool_calls(item):
71
+ if isinstance(item, dict):
72
+ if "tool_calls" in item and item["tool_calls"] is not None:
73
+ return item["tool_calls"]
74
+ return None
75
+
76
+ else:
77
+ if hasattr(item, "tool_calls") and item.tool_calls is not None:
78
+ return item.tool_calls
79
+ return None
@@ -0,0 +1 @@
1
+ __version__ = "2.1.27"
@@ -1 +0,0 @@
1
- __version__ = "2.1.25"