langtrace-python-sdk 2.1.7__tar.gz → 2.1.9__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.
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/PKG-INFO +1 -1
- langtrace_python_sdk-2.1.9/src/langtrace_python_sdk/constants/__init__.py +1 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/anthropic/patch.py +4 -1
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/chroma/patch.py +4 -1
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/cohere/patch.py +7 -4
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/groq/patch.py +5 -2
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langchain/patch.py +2 -1
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langchain_community/patch.py +4 -1
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langchain_core/patch.py +5 -2
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langgraph/patch.py +4 -1
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/llamaindex/patch.py +5 -2
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/openai/patch.py +9 -6
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/pinecone/patch.py +4 -1
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/qdrant/patch.py +4 -1
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/weaviate/patch.py +4 -1
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/langtrace.py +2 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/utils/__init__.py +8 -0
- langtrace_python_sdk-2.1.9/src/langtrace_python_sdk/utils/sdk_version_checker.py +53 -0
- langtrace_python_sdk-2.1.9/src/langtrace_python_sdk/version.py +1 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/anthropic/test_anthropic.py +4 -2
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/test_cohere_chat.py +4 -2
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/test_cohere_embed.py +5 -5
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/test_cohere_rerank.py +4 -7
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/test_chat_completion.py +7 -13
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/test_image_generation.py +5 -9
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/pinecone/test_pinecone.py +5 -9
- langtrace_python_sdk-2.1.7/src/langtrace_python_sdk/version.py +0 -1
- langtrace_python_sdk-2.1.7/src/tests/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/.gitignore +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/LICENSE +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/README.md +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/pyproject.toml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/anthropic_example/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/anthropic_example/completion.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/chroma_example/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/chroma_example/basic.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/cohere_example/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/cohere_example/chat.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/cohere_example/chat_stream.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/cohere_example/embed.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/cohere_example/rerank.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/cohere_example/tools.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/fastapi_example/basic_route.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/hiveagent_example/basic.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/langchain_example/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/langchain_example/basic.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/langchain_example/groq_example.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/langchain_example/langgraph_example.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/langchain_example/tool.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/llamaindex_example/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/llamaindex_example/agent.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/llamaindex_example/basic.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/llamaindex_example/data/abramov.txt +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/async_tool_calling_nonstreaming.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/async_tool_calling_streaming.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/chat_completion.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/embeddings_create.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/function_calling.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/images_generate.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/tool_calling.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/tool_calling_nonstreaming.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/openai_example/tool_calling_streaming.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/perplexity_example/basic.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/pinecone_example/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/pinecone_example/basic.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/qdrant_example/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/qdrant_example/basic.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/examples/weaviate_example/query_text.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/exporter/langtrace_exporter.py +0 -0
- {langtrace_python_sdk-2.1.7/src/langtrace_python_sdk/constants → langtrace_python_sdk-2.1.9/src/langtrace_python_sdk/constants/instrumentation}/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/instrumentation/anthropic.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/instrumentation/chroma.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/instrumentation/cohere.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/instrumentation/common.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/instrumentation/groq.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/instrumentation/openai.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/instrumentation/pinecone.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/instrumentation/qdrant.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/constants/instrumentation/weaviate.py +0 -0
- {langtrace_python_sdk-2.1.7/src/langtrace_python_sdk/constants/instrumentation → langtrace_python_sdk-2.1.9/src/langtrace_python_sdk/extensions}/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/extensions/langtrace_exporter.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/anthropic/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/anthropic/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/chroma/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/chroma/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/cohere/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/cohere/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/groq/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/groq/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langchain/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langchain/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langchain_community/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langchain_community/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langchain_core/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langchain_core/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langgraph/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/langgraph/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/llamaindex/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/llamaindex/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/openai/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/openai/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/pinecone/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/pinecone/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/qdrant/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/qdrant/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/weaviate/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/instrumentation/weaviate/instrumentation.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/types/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/utils/llm.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/utils/misc.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/utils/prompt_registry.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/utils/silently_fail.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/utils/types.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/utils/with_root_span.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/run_example.py +0 -0
- {langtrace_python_sdk-2.1.7/src/langtrace_python_sdk/extensions → langtrace_python_sdk-2.1.9/src/tests}/__init__.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/anthropic/cassettes/test_anthropic.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/anthropic/cassettes/test_anthropic_streaming.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/anthropic/cassettes/test_async_anthropic_streaming.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/anthropic/conftest.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/chroma/conftest.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/chroma/test_chroma.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/cassettes/test_cohere_chat.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/cassettes/test_cohere_chat_streaming.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/cassettes/test_cohere_embed.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/cassettes/test_cohere_rerank.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/conftest.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/conftest.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/langchain/cassettes/test_langchain.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/langchain/conftest.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/langchain/test_langchain.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/cassettes/test_async_chat_completion_streaming.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/cassettes/test_async_image_generation.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/cassettes/test_chat_completion.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/cassettes/test_chat_completion_streaming.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/cassettes/test_image_generation.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/conftest.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/test_embeddings.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/pinecone/cassettes/test_query.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/pinecone/cassettes/test_upsert.yaml +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/pinecone/conftest.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/qdrant/conftest.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/qdrant/test_qdrant.py +0 -0
- {langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/utils.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
LANGTRACE_SDK_NAME = "langtrace-python-sdk"
|
|
@@ -26,6 +26,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
26
26
|
LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY,
|
|
27
27
|
SERVICE_PROVIDERS,
|
|
28
28
|
)
|
|
29
|
+
from importlib_metadata import version as v
|
|
30
|
+
|
|
31
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
29
32
|
|
|
30
33
|
|
|
31
34
|
def messages_create(original_method, version, tracer):
|
|
@@ -54,7 +57,7 @@ def messages_create(original_method, version, tracer):
|
|
|
54
57
|
"langtrace.service.name": service_provider,
|
|
55
58
|
"langtrace.service.type": "llm",
|
|
56
59
|
"langtrace.service.version": version,
|
|
57
|
-
"langtrace.version":
|
|
60
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
58
61
|
"url.full": base_url,
|
|
59
62
|
"llm.api": APIS["MESSAGES_CREATE"]["ENDPOINT"],
|
|
60
63
|
"llm.model": kwargs.get("model"),
|
|
@@ -27,6 +27,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
27
27
|
SERVICE_PROVIDERS,
|
|
28
28
|
)
|
|
29
29
|
import json
|
|
30
|
+
from importlib_metadata import version as v
|
|
31
|
+
|
|
32
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
30
33
|
|
|
31
34
|
|
|
32
35
|
def collection_patch(method, version, tracer):
|
|
@@ -44,7 +47,7 @@ def collection_patch(method, version, tracer):
|
|
|
44
47
|
"langtrace.service.name": service_provider,
|
|
45
48
|
"langtrace.service.type": "vectordb",
|
|
46
49
|
"langtrace.service.version": version,
|
|
47
|
-
"langtrace.version":
|
|
50
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
48
51
|
"db.system": "chromadb",
|
|
49
52
|
"db.operation": api["OPERATION"],
|
|
50
53
|
"db.query": json.dumps(kwargs.get("query")),
|
|
@@ -26,6 +26,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
26
26
|
LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY,
|
|
27
27
|
SERVICE_PROVIDERS,
|
|
28
28
|
)
|
|
29
|
+
from importlib_metadata import version as v
|
|
30
|
+
|
|
31
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
29
32
|
|
|
30
33
|
|
|
31
34
|
def rerank(original_method, version, tracer):
|
|
@@ -40,7 +43,7 @@ def rerank(original_method, version, tracer):
|
|
|
40
43
|
"langtrace.service.name": service_provider,
|
|
41
44
|
"langtrace.service.type": "llm",
|
|
42
45
|
"langtrace.service.version": version,
|
|
43
|
-
"langtrace.version":
|
|
46
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
44
47
|
"url.full": APIS["RERANK"]["URL"],
|
|
45
48
|
"llm.api": APIS["RERANK"]["ENDPOINT"],
|
|
46
49
|
"llm.model": kwargs.get("model"),
|
|
@@ -132,7 +135,7 @@ def embed(original_method, version, tracer):
|
|
|
132
135
|
"langtrace.service.name": service_provider,
|
|
133
136
|
"langtrace.service.type": "llm",
|
|
134
137
|
"langtrace.service.version": version,
|
|
135
|
-
"langtrace.version":
|
|
138
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
136
139
|
"url.full": APIS["EMBED"]["URL"],
|
|
137
140
|
"llm.api": APIS["EMBED"]["ENDPOINT"],
|
|
138
141
|
"llm.model": kwargs.get("model"),
|
|
@@ -242,7 +245,7 @@ def chat_create(original_method, version, tracer):
|
|
|
242
245
|
"langtrace.service.name": service_provider,
|
|
243
246
|
"langtrace.service.type": "llm",
|
|
244
247
|
"langtrace.service.version": version,
|
|
245
|
-
"langtrace.version":
|
|
248
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
246
249
|
"url.full": APIS["CHAT_CREATE"]["URL"],
|
|
247
250
|
"llm.api": APIS["CHAT_CREATE"]["ENDPOINT"],
|
|
248
251
|
"llm.model": (
|
|
@@ -437,7 +440,7 @@ def chat_stream(original_method, version, tracer):
|
|
|
437
440
|
"langtrace.service.name": service_provider,
|
|
438
441
|
"langtrace.service.type": "llm",
|
|
439
442
|
"langtrace.service.version": version,
|
|
440
|
-
"langtrace.version":
|
|
443
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
441
444
|
"url.full": APIS["CHAT_STREAM"]["URL"],
|
|
442
445
|
"llm.api": APIS["CHAT_STREAM"]["ENDPOINT"],
|
|
443
446
|
"llm.model": (
|
|
@@ -27,6 +27,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
27
27
|
)
|
|
28
28
|
from langtrace_python_sdk.constants.instrumentation.groq import APIS
|
|
29
29
|
from langtrace_python_sdk.utils.llm import calculate_prompt_tokens, estimate_tokens
|
|
30
|
+
from importlib_metadata import version as v
|
|
31
|
+
|
|
32
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
30
33
|
|
|
31
34
|
|
|
32
35
|
def chat_completions_create(original_method, version, tracer):
|
|
@@ -80,7 +83,7 @@ def chat_completions_create(original_method, version, tracer):
|
|
|
80
83
|
"langtrace.service.name": service_provider,
|
|
81
84
|
"langtrace.service.type": "llm",
|
|
82
85
|
"langtrace.service.version": version,
|
|
83
|
-
"langtrace.version":
|
|
86
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
84
87
|
"url.full": base_url,
|
|
85
88
|
"llm.api": APIS["CHAT_COMPLETION"]["ENDPOINT"],
|
|
86
89
|
"llm.prompts": json.dumps(llm_prompts),
|
|
@@ -340,7 +343,7 @@ def async_chat_completions_create(original_method, version, tracer):
|
|
|
340
343
|
"langtrace.service.name": service_provider,
|
|
341
344
|
"langtrace.service.type": "llm",
|
|
342
345
|
"langtrace.service.version": version,
|
|
343
|
-
"langtrace.version":
|
|
346
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
344
347
|
"url.full": base_url,
|
|
345
348
|
"llm.api": APIS["CHAT_COMPLETION"]["ENDPOINT"],
|
|
346
349
|
"llm.prompts": json.dumps(llm_prompts),
|
|
@@ -25,6 +25,7 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
25
25
|
LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY,
|
|
26
26
|
SERVICE_PROVIDERS,
|
|
27
27
|
)
|
|
28
|
+
from importlib_metadata import version as v
|
|
28
29
|
|
|
29
30
|
|
|
30
31
|
def generic_patch(
|
|
@@ -43,7 +44,7 @@ def generic_patch(
|
|
|
43
44
|
"langtrace.service.name": service_provider,
|
|
44
45
|
"langtrace.service.type": "framework",
|
|
45
46
|
"langtrace.service.version": version,
|
|
46
|
-
"langtrace.version":
|
|
47
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
47
48
|
"langchain.task.name": task,
|
|
48
49
|
**(extra_attributes if extra_attributes is not None else {}),
|
|
49
50
|
}
|
|
@@ -25,6 +25,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
25
25
|
LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY,
|
|
26
26
|
SERVICE_PROVIDERS,
|
|
27
27
|
)
|
|
28
|
+
from importlib_metadata import version as v
|
|
29
|
+
|
|
30
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
28
31
|
|
|
29
32
|
|
|
30
33
|
def generic_patch(
|
|
@@ -39,7 +42,7 @@ def generic_patch(
|
|
|
39
42
|
"langtrace.service.name": service_provider,
|
|
40
43
|
"langtrace.service.type": "framework",
|
|
41
44
|
"langtrace.service.version": version,
|
|
42
|
-
"langtrace.version":
|
|
45
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
43
46
|
"langchain.task.name": task,
|
|
44
47
|
**(extra_attributes if extra_attributes is not None else {}),
|
|
45
48
|
}
|
|
@@ -25,6 +25,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
25
25
|
LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY,
|
|
26
26
|
SERVICE_PROVIDERS,
|
|
27
27
|
)
|
|
28
|
+
from importlib_metadata import version as v
|
|
29
|
+
|
|
30
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
28
31
|
|
|
29
32
|
|
|
30
33
|
def generic_patch(
|
|
@@ -49,7 +52,7 @@ def generic_patch(
|
|
|
49
52
|
"langtrace.service.name": service_provider,
|
|
50
53
|
"langtrace.service.type": "framework",
|
|
51
54
|
"langtrace.service.version": version,
|
|
52
|
-
"langtrace.version":
|
|
55
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
53
56
|
"langchain.task.name": task,
|
|
54
57
|
**(extra_attributes if extra_attributes is not None else {}),
|
|
55
58
|
}
|
|
@@ -115,7 +118,7 @@ def runnable_patch(
|
|
|
115
118
|
"langtrace.service.name": service_provider,
|
|
116
119
|
"langtrace.service.type": "framework",
|
|
117
120
|
"langtrace.service.version": version,
|
|
118
|
-
"langtrace.version":
|
|
121
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
119
122
|
"langchain.task.name": task,
|
|
120
123
|
}
|
|
121
124
|
|
|
@@ -25,6 +25,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
25
25
|
LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY,
|
|
26
26
|
SERVICE_PROVIDERS,
|
|
27
27
|
)
|
|
28
|
+
from importlib_metadata import version as v
|
|
29
|
+
|
|
30
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
28
31
|
|
|
29
32
|
|
|
30
33
|
def patch_graph_methods(method_name, tracer, version):
|
|
@@ -37,7 +40,7 @@ def patch_graph_methods(method_name, tracer, version):
|
|
|
37
40
|
"langtrace.service.name": service_provider,
|
|
38
41
|
"langtrace.service.type": "framework",
|
|
39
42
|
"langtrace.service.version": version,
|
|
40
|
-
"langtrace.version":
|
|
43
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
41
44
|
**(extra_attributes if extra_attributes is not None else {}),
|
|
42
45
|
}
|
|
43
46
|
|
|
@@ -23,6 +23,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
23
23
|
LANGTRACE_ADDITIONAL_SPAN_ATTRIBUTES_KEY,
|
|
24
24
|
SERVICE_PROVIDERS,
|
|
25
25
|
)
|
|
26
|
+
from importlib_metadata import version as v
|
|
27
|
+
|
|
28
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
26
29
|
|
|
27
30
|
|
|
28
31
|
def generic_patch(method, task, tracer, version):
|
|
@@ -38,7 +41,7 @@ def generic_patch(method, task, tracer, version):
|
|
|
38
41
|
"langtrace.service.name": service_provider,
|
|
39
42
|
"langtrace.service.type": "framework",
|
|
40
43
|
"langtrace.service.version": version,
|
|
41
|
-
"langtrace.version":
|
|
44
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
42
45
|
"llamaindex.task.name": task,
|
|
43
46
|
**(extra_attributes if extra_attributes is not None else {}),
|
|
44
47
|
}
|
|
@@ -80,7 +83,7 @@ def async_generic_patch(method, task, tracer, version):
|
|
|
80
83
|
"langtrace.service.name": service_provider,
|
|
81
84
|
"langtrace.service.type": "framework",
|
|
82
85
|
"langtrace.service.version": version,
|
|
83
|
-
"langtrace.version":
|
|
86
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
84
87
|
"llamaindex.task.name": task,
|
|
85
88
|
**(extra_attributes if extra_attributes is not None else {}),
|
|
86
89
|
}
|
|
@@ -27,6 +27,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
27
27
|
)
|
|
28
28
|
from langtrace_python_sdk.constants.instrumentation.openai import APIS
|
|
29
29
|
from langtrace_python_sdk.utils.llm import calculate_prompt_tokens, estimate_tokens
|
|
30
|
+
from importlib_metadata import version as v
|
|
31
|
+
|
|
32
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
30
33
|
|
|
31
34
|
|
|
32
35
|
def images_generate(original_method, version, tracer):
|
|
@@ -48,7 +51,7 @@ def images_generate(original_method, version, tracer):
|
|
|
48
51
|
"langtrace.service.name": service_provider,
|
|
49
52
|
"langtrace.service.type": "llm",
|
|
50
53
|
"langtrace.service.version": version,
|
|
51
|
-
"langtrace.version":
|
|
54
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
52
55
|
"url.full": base_url,
|
|
53
56
|
"llm.api": APIS["IMAGES_GENERATION"]["ENDPOINT"],
|
|
54
57
|
"llm.model": kwargs.get("model"),
|
|
@@ -125,7 +128,7 @@ def async_images_generate(original_method, version, tracer):
|
|
|
125
128
|
"langtrace.service.name": service_provider,
|
|
126
129
|
"langtrace.service.type": "llm",
|
|
127
130
|
"langtrace.service.version": version,
|
|
128
|
-
"langtrace.version":
|
|
131
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
129
132
|
"url.full": base_url,
|
|
130
133
|
"llm.api": APIS["IMAGES_GENERATION"]["ENDPOINT"],
|
|
131
134
|
"llm.model": kwargs.get("model"),
|
|
@@ -235,7 +238,7 @@ def chat_completions_create(original_method, version, tracer):
|
|
|
235
238
|
"langtrace.service.name": service_provider,
|
|
236
239
|
"langtrace.service.type": "llm",
|
|
237
240
|
"langtrace.service.version": version,
|
|
238
|
-
"langtrace.version":
|
|
241
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
239
242
|
"url.full": base_url,
|
|
240
243
|
"llm.api": APIS["CHAT_COMPLETION"]["ENDPOINT"],
|
|
241
244
|
"llm.prompts": json.dumps(llm_prompts),
|
|
@@ -495,7 +498,7 @@ def async_chat_completions_create(original_method, version, tracer):
|
|
|
495
498
|
"langtrace.service.name": service_provider,
|
|
496
499
|
"langtrace.service.type": "llm",
|
|
497
500
|
"langtrace.service.version": version,
|
|
498
|
-
"langtrace.version":
|
|
501
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
499
502
|
"url.full": base_url,
|
|
500
503
|
"llm.api": APIS["CHAT_COMPLETION"]["ENDPOINT"],
|
|
501
504
|
"llm.prompts": json.dumps(llm_prompts),
|
|
@@ -725,7 +728,7 @@ def embeddings_create(original_method, version, tracer):
|
|
|
725
728
|
"langtrace.service.name": service_provider,
|
|
726
729
|
"langtrace.service.type": "llm",
|
|
727
730
|
"langtrace.service.version": version,
|
|
728
|
-
"langtrace.version":
|
|
731
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
729
732
|
"url.full": base_url,
|
|
730
733
|
"llm.api": APIS["EMBEDDINGS_CREATE"]["ENDPOINT"],
|
|
731
734
|
"llm.model": kwargs.get("model"),
|
|
@@ -792,7 +795,7 @@ def async_embeddings_create(original_method, version, tracer):
|
|
|
792
795
|
"langtrace.service.name": service_provider,
|
|
793
796
|
"langtrace.service.type": "llm",
|
|
794
797
|
"langtrace.service.version": version,
|
|
795
|
-
"langtrace.version":
|
|
798
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
796
799
|
"url.full": base_url,
|
|
797
800
|
"llm.api": APIS["EMBEDDINGS_CREATE"]["ENDPOINT"],
|
|
798
801
|
"llm.model": kwargs.get("model"),
|
|
@@ -28,6 +28,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
28
28
|
from langtrace_python_sdk.constants.instrumentation.pinecone import APIS
|
|
29
29
|
from langtrace_python_sdk.utils import set_span_attribute
|
|
30
30
|
from langtrace_python_sdk.utils.silently_fail import silently_fail
|
|
31
|
+
from importlib_metadata import version as v
|
|
32
|
+
|
|
33
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
31
34
|
|
|
32
35
|
|
|
33
36
|
def generic_patch(operation_name, version, tracer):
|
|
@@ -44,7 +47,7 @@ def generic_patch(operation_name, version, tracer):
|
|
|
44
47
|
"langtrace.service.name": service_provider,
|
|
45
48
|
"langtrace.service.type": "vectordb",
|
|
46
49
|
"langtrace.service.version": version,
|
|
47
|
-
"langtrace.version":
|
|
50
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
48
51
|
"db.system": "pinecone",
|
|
49
52
|
"db.operation": api["OPERATION"],
|
|
50
53
|
"db.query": json.dumps(kwargs.get("query")),
|
|
@@ -27,6 +27,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
27
27
|
SERVICE_PROVIDERS,
|
|
28
28
|
)
|
|
29
29
|
from langtrace_python_sdk.constants.instrumentation.qdrant import APIS
|
|
30
|
+
from importlib_metadata import version as v
|
|
31
|
+
|
|
32
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
30
33
|
|
|
31
34
|
|
|
32
35
|
def collection_patch(method, version, tracer):
|
|
@@ -44,7 +47,7 @@ def collection_patch(method, version, tracer):
|
|
|
44
47
|
"langtrace.service.name": service_provider,
|
|
45
48
|
"langtrace.service.type": "vectordb",
|
|
46
49
|
"langtrace.service.version": version,
|
|
47
|
-
"langtrace.version":
|
|
50
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
48
51
|
"db.system": "qdrant",
|
|
49
52
|
"db.operation": api["OPERATION"],
|
|
50
53
|
"db.query": json.dumps(kwargs.get("query")),
|
|
@@ -27,6 +27,9 @@ from langtrace_python_sdk.constants.instrumentation.common import (
|
|
|
27
27
|
)
|
|
28
28
|
from langtrace_python_sdk.constants.instrumentation.weaviate import APIS
|
|
29
29
|
from langtrace_python_sdk.utils.misc import extract_input_params, to_iso_format
|
|
30
|
+
from importlib_metadata import version as v
|
|
31
|
+
|
|
32
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
30
33
|
|
|
31
34
|
# Predefined metadata response attributes
|
|
32
35
|
METADATA_ATTRIBUTES = [
|
|
@@ -118,7 +121,7 @@ def create_traced_method(method_name, version, tracer, get_collection_name=None)
|
|
|
118
121
|
"langtrace.service.name": service_provider,
|
|
119
122
|
"langtrace.service.type": "vectordb",
|
|
120
123
|
"langtrace.service.version": version,
|
|
121
|
-
"langtrace.version":
|
|
124
|
+
"langtrace.version": v(LANGTRACE_SDK_NAME),
|
|
122
125
|
"db.system": "weaviate",
|
|
123
126
|
"db.operation": api["OPERATION"],
|
|
124
127
|
"db.collection.name": collection_name,
|
{langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/langtrace.py
RENAMED
|
@@ -45,6 +45,7 @@ from langtrace_python_sdk.instrumentation import (
|
|
|
45
45
|
)
|
|
46
46
|
from opentelemetry.instrumentation.sqlalchemy import SQLAlchemyInstrumentor
|
|
47
47
|
from colorama import Fore
|
|
48
|
+
from langtrace_python_sdk.utils import check_if_sdk_is_outdated
|
|
48
49
|
|
|
49
50
|
|
|
50
51
|
def init(
|
|
@@ -55,6 +56,7 @@ def init(
|
|
|
55
56
|
api_host: Optional[str] = None,
|
|
56
57
|
disable_instrumentations: Optional[DisableInstrumentations] = None,
|
|
57
58
|
):
|
|
59
|
+
check_if_sdk_is_outdated()
|
|
58
60
|
print(Fore.GREEN + "Initializing Langtrace SDK.." + Fore.RESET)
|
|
59
61
|
provider = TracerProvider(resource=Resource.create({"service.name": sys.argv[0]}))
|
|
60
62
|
|
{langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/langtrace_python_sdk/utils/__init__.py
RENAMED
|
@@ -1,5 +1,13 @@
|
|
|
1
|
+
from .sdk_version_checker import SDKVersionChecker
|
|
2
|
+
|
|
3
|
+
|
|
1
4
|
def set_span_attribute(span, name, value):
|
|
2
5
|
if value is not None:
|
|
3
6
|
if value != "":
|
|
4
7
|
span.set_attribute(name, value)
|
|
5
8
|
return
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def check_if_sdk_is_outdated():
|
|
12
|
+
SDKVersionChecker().check()
|
|
13
|
+
return
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
from importlib.metadata import version
|
|
2
|
+
import time
|
|
3
|
+
import requests
|
|
4
|
+
from colorama import Fore
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class SDKVersionChecker:
|
|
8
|
+
_cache: None
|
|
9
|
+
_cache_duration: int
|
|
10
|
+
_current_version: str
|
|
11
|
+
_latest_version: str
|
|
12
|
+
|
|
13
|
+
def __init__(self):
|
|
14
|
+
self._cache = {"timestamp": 0, "latest_version": None}
|
|
15
|
+
self._cache_duration = 3600 # Cache for 1 hour
|
|
16
|
+
self._current_version = version("langtrace_python_sdk")
|
|
17
|
+
|
|
18
|
+
def fetch_latest(self):
|
|
19
|
+
try:
|
|
20
|
+
current_time = time.time()
|
|
21
|
+
if (
|
|
22
|
+
current_time - self._cache["timestamp"] < self._cache_duration
|
|
23
|
+
and self._cache["latest_version"]
|
|
24
|
+
):
|
|
25
|
+
return self._cache["latest_version"]
|
|
26
|
+
|
|
27
|
+
response = requests.get(
|
|
28
|
+
"https://api.github.com/repos/Scale3-Labs/langtrace-python-sdk/releases/latest",
|
|
29
|
+
timeout=20,
|
|
30
|
+
)
|
|
31
|
+
response.raise_for_status()
|
|
32
|
+
latest_version = response.json()["tag_name"]
|
|
33
|
+
self._cache.update(
|
|
34
|
+
{"timestamp": current_time, "latest_version": latest_version}
|
|
35
|
+
)
|
|
36
|
+
self._latest_version = latest_version
|
|
37
|
+
return latest_version
|
|
38
|
+
except Exception as err:
|
|
39
|
+
return None
|
|
40
|
+
|
|
41
|
+
def is_outdated(self):
|
|
42
|
+
latest_version = self.fetch_latest()
|
|
43
|
+
if latest_version:
|
|
44
|
+
return self._current_version < latest_version
|
|
45
|
+
return False
|
|
46
|
+
|
|
47
|
+
def check(self):
|
|
48
|
+
if self.is_outdated():
|
|
49
|
+
print(
|
|
50
|
+
Fore.YELLOW
|
|
51
|
+
+ f"Warning: Your Langtrace SDK version {self._current_version} is outdated. Please upgrade to {self._latest_version}."
|
|
52
|
+
+ Fore.RESET
|
|
53
|
+
)
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "2.1.9"
|
{langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/anthropic/test_anthropic.py
RENAMED
|
@@ -2,7 +2,9 @@ import pytest
|
|
|
2
2
|
import json
|
|
3
3
|
import importlib
|
|
4
4
|
from langtrace_python_sdk.constants.instrumentation.anthropic import APIS
|
|
5
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
5
6
|
from tests.utils import assert_response_format, assert_token_count
|
|
7
|
+
from importlib_metadata import version as v
|
|
6
8
|
|
|
7
9
|
|
|
8
10
|
@pytest.mark.vcr()
|
|
@@ -30,7 +32,7 @@ def test_anthropic(anthropic_client, exporter):
|
|
|
30
32
|
assert attributes.get("langtrace.service.version") == importlib.metadata.version(
|
|
31
33
|
"anthropic"
|
|
32
34
|
)
|
|
33
|
-
assert attributes.get("langtrace.version") ==
|
|
35
|
+
assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME)
|
|
34
36
|
assert attributes.get("url.full") == "https://api.anthropic.com"
|
|
35
37
|
assert attributes.get("llm.api") == APIS["MESSAGES_CREATE"]["ENDPOINT"]
|
|
36
38
|
assert attributes.get("llm.model") == llm_model_value
|
|
@@ -72,7 +74,7 @@ def test_anthropic_streaming(anthropic_client, exporter):
|
|
|
72
74
|
assert attributes.get("langtrace.service.version") == importlib.metadata.version(
|
|
73
75
|
"anthropic"
|
|
74
76
|
)
|
|
75
|
-
assert attributes.get("langtrace.version") ==
|
|
77
|
+
assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME)
|
|
76
78
|
assert attributes.get("url.full") == "https://api.anthropic.com"
|
|
77
79
|
assert attributes.get("llm.api") == APIS["MESSAGES_CREATE"]["ENDPOINT"]
|
|
78
80
|
assert attributes.get("llm.model") == llm_model_value
|
{langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/test_cohere_chat.py
RENAMED
|
@@ -3,7 +3,9 @@ from langtrace_python_sdk.constants.instrumentation.cohere import APIS
|
|
|
3
3
|
from langtrace_python_sdk.constants.instrumentation.common import SERVICE_PROVIDERS
|
|
4
4
|
import pytest
|
|
5
5
|
import importlib
|
|
6
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
6
7
|
from tests.utils import assert_response_format, assert_token_count
|
|
8
|
+
from importlib_metadata import version as v
|
|
7
9
|
|
|
8
10
|
|
|
9
11
|
@pytest.mark.vcr
|
|
@@ -39,7 +41,7 @@ def test_cohere_chat(cohere_client, exporter):
|
|
|
39
41
|
"cohere"
|
|
40
42
|
)
|
|
41
43
|
|
|
42
|
-
assert attributes.get("langtrace.version") ==
|
|
44
|
+
assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME)
|
|
43
45
|
assert attributes.get("url.full") == APIS["CHAT_CREATE"]["URL"]
|
|
44
46
|
assert attributes.get("llm.api") == APIS["CHAT_CREATE"]["ENDPOINT"]
|
|
45
47
|
assert attributes.get("llm.model") == llm_model_value
|
|
@@ -97,7 +99,7 @@ def test_cohere_chat_streaming(cohere_client, exporter):
|
|
|
97
99
|
"cohere"
|
|
98
100
|
)
|
|
99
101
|
|
|
100
|
-
assert attributes.get("langtrace.version") ==
|
|
102
|
+
assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME)
|
|
101
103
|
assert attributes.get("url.full") == APIS["CHAT_STREAM"]["URL"]
|
|
102
104
|
assert attributes.get("llm.api") == APIS["CHAT_STREAM"]["ENDPOINT"]
|
|
103
105
|
assert attributes.get("llm.model") == llm_model_value
|
{langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/test_cohere_embed.py
RENAMED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
from langtrace_python_sdk.constants.instrumentation.cohere import APIS
|
|
2
2
|
from langtrace_python_sdk.constants.instrumentation.common import SERVICE_PROVIDERS
|
|
3
3
|
import pytest
|
|
4
|
-
import
|
|
4
|
+
from importlib_metadata import version as v
|
|
5
|
+
|
|
6
|
+
from langtrace_python_sdk.constants import LANGTRACE_SDK_NAME
|
|
5
7
|
|
|
6
8
|
|
|
7
9
|
@pytest.mark.vcr
|
|
@@ -25,11 +27,9 @@ def test_cohere_embed(cohere_client, exporter):
|
|
|
25
27
|
assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk"
|
|
26
28
|
assert attributes.get("langtrace.service.name") == SERVICE_PROVIDERS["COHERE"]
|
|
27
29
|
assert attributes.get("langtrace.service.type") == "llm"
|
|
28
|
-
assert attributes.get("langtrace.service.version") ==
|
|
29
|
-
"cohere"
|
|
30
|
-
)
|
|
30
|
+
assert attributes.get("langtrace.service.version") == v("cohere")
|
|
31
31
|
|
|
32
|
-
assert attributes.get("langtrace.version") ==
|
|
32
|
+
assert attributes.get("langtrace.version") == v(LANGTRACE_SDK_NAME)
|
|
33
33
|
assert attributes.get("url.full") == APIS["EMBED"]["URL"]
|
|
34
34
|
assert attributes.get("llm.api") == APIS["EMBED"]["ENDPOINT"]
|
|
35
35
|
assert attributes.get("llm.model") == llm_model_value
|
{langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/cohere/test_cohere_rerank.py
RENAMED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
from langtrace_python_sdk.constants.instrumentation.common import SERVICE_PROVIDERS
|
|
2
2
|
import pytest
|
|
3
3
|
import json
|
|
4
|
-
import importlib
|
|
5
4
|
from langtrace_python_sdk.constants.instrumentation.cohere import APIS
|
|
6
|
-
from tests.utils import
|
|
7
|
-
import
|
|
5
|
+
from tests.utils import assert_token_count
|
|
6
|
+
from importlib_metadata import version as v
|
|
8
7
|
|
|
9
8
|
|
|
10
9
|
@pytest.mark.vcr
|
|
@@ -34,11 +33,9 @@ def test_cohere_rerank(cohere_client, exporter):
|
|
|
34
33
|
assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk"
|
|
35
34
|
assert attributes.get("langtrace.service.name") == SERVICE_PROVIDERS["COHERE"]
|
|
36
35
|
assert attributes.get("langtrace.service.type") == "llm"
|
|
37
|
-
assert attributes.get("langtrace.service.version") ==
|
|
38
|
-
"cohere"
|
|
39
|
-
)
|
|
36
|
+
assert attributes.get("langtrace.service.version") == v("cohere")
|
|
40
37
|
|
|
41
|
-
assert attributes.get("langtrace.version") == "
|
|
38
|
+
assert attributes.get("langtrace.version") == v("langtrace-python-sdk")
|
|
42
39
|
assert attributes.get("url.full") == APIS["RERANK"]["URL"]
|
|
43
40
|
assert attributes.get("llm.api") == APIS["RERANK"]["ENDPOINT"]
|
|
44
41
|
assert attributes.get("llm.model") == llm_model_value
|
{langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/test_chat_completion.py
RENAMED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import pytest
|
|
2
|
-
import importlib
|
|
3
2
|
import json
|
|
4
3
|
from langtrace_python_sdk.constants.instrumentation.openai import APIS
|
|
5
4
|
from tests.utils import assert_response_format, assert_token_count
|
|
5
|
+
from importlib_metadata import version as v
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
@pytest.mark.vcr()
|
|
@@ -25,10 +25,8 @@ def test_chat_completion(exporter, openai_client):
|
|
|
25
25
|
assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk"
|
|
26
26
|
assert attributes.get("langtrace.service.name") == "OpenAI"
|
|
27
27
|
assert attributes.get("langtrace.service.type") == "llm"
|
|
28
|
-
assert attributes.get("langtrace.service.version") ==
|
|
29
|
-
|
|
30
|
-
)
|
|
31
|
-
assert attributes.get("langtrace.version") == "1.0.0"
|
|
28
|
+
assert attributes.get("langtrace.service.version") == v("openai")
|
|
29
|
+
assert attributes.get("langtrace.version") == v("langtrace-python-sdk")
|
|
32
30
|
assert attributes.get("url.full") == "https://api.openai.com/v1/"
|
|
33
31
|
assert attributes.get("llm.api") == APIS["CHAT_COMPLETION"]["ENDPOINT"]
|
|
34
32
|
assert attributes.get("llm.model") == "gpt-4-0613"
|
|
@@ -78,10 +76,8 @@ def test_chat_completion_streaming(exporter, openai_client):
|
|
|
78
76
|
assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk"
|
|
79
77
|
assert attributes.get("langtrace.service.name") == "OpenAI"
|
|
80
78
|
assert attributes.get("langtrace.service.type") == "llm"
|
|
81
|
-
assert attributes.get("langtrace.service.version") ==
|
|
82
|
-
|
|
83
|
-
)
|
|
84
|
-
assert attributes.get("langtrace.version") == "1.0.0"
|
|
79
|
+
assert attributes.get("langtrace.service.version") == v("openai")
|
|
80
|
+
assert attributes.get("langtrace.version") == v("langtrace-python-sdk")
|
|
85
81
|
assert attributes.get("url.full") == "https://api.openai.com/v1/"
|
|
86
82
|
assert attributes.get("llm.api") == APIS["CHAT_COMPLETION"]["ENDPOINT"]
|
|
87
83
|
assert attributes.get("llm.model") == "gpt-4-0613"
|
|
@@ -135,10 +131,8 @@ async def test_async_chat_completion_streaming(exporter, async_openai_client):
|
|
|
135
131
|
assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk"
|
|
136
132
|
assert attributes.get("langtrace.service.name") == "OpenAI"
|
|
137
133
|
assert attributes.get("langtrace.service.type") == "llm"
|
|
138
|
-
assert attributes.get("langtrace.service.version") ==
|
|
139
|
-
|
|
140
|
-
)
|
|
141
|
-
assert attributes.get("langtrace.version") == "1.0.0"
|
|
134
|
+
assert attributes.get("langtrace.service.version") == v("openai")
|
|
135
|
+
assert attributes.get("langtrace.version") == v("langtrace-python-sdk")
|
|
142
136
|
assert attributes.get("url.full") == "https://api.openai.com/v1/"
|
|
143
137
|
assert attributes.get("llm.api") == APIS["CHAT_COMPLETION"]["ENDPOINT"]
|
|
144
138
|
assert attributes.get("llm.model") == "gpt-4-0613"
|
{langtrace_python_sdk-2.1.7 → langtrace_python_sdk-2.1.9}/src/tests/openai/test_image_generation.py
RENAMED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import pytest
|
|
2
2
|
import json
|
|
3
|
-
import importlib
|
|
4
3
|
from langtrace_python_sdk.constants.instrumentation.openai import APIS
|
|
4
|
+
from importlib_metadata import version as v
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
@pytest.mark.vcr()
|
|
@@ -23,10 +23,8 @@ def test_image_generation(openai_client, exporter):
|
|
|
23
23
|
assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk"
|
|
24
24
|
assert attributes.get("langtrace.service.name") == "OpenAI"
|
|
25
25
|
assert attributes.get("langtrace.service.type") == "llm"
|
|
26
|
-
assert attributes.get("langtrace.service.version") ==
|
|
27
|
-
|
|
28
|
-
)
|
|
29
|
-
assert attributes.get("langtrace.version") == "1.0.0"
|
|
26
|
+
assert attributes.get("langtrace.service.version") == v("openai")
|
|
27
|
+
assert attributes.get("langtrace.version") == v("langtrace-python-sdk")
|
|
30
28
|
assert attributes.get("url.full") == "https://api.openai.com/v1/"
|
|
31
29
|
assert attributes.get("llm.api") == APIS["IMAGES_GENERATION"]["ENDPOINT"]
|
|
32
30
|
assert attributes.get("llm.model") == llm_model_value
|
|
@@ -66,10 +64,8 @@ async def test_async_image_generation(async_openai_client, exporter):
|
|
|
66
64
|
assert attributes.get("langtrace.sdk.name") == "langtrace-python-sdk"
|
|
67
65
|
assert attributes.get("langtrace.service.name") == "OpenAI"
|
|
68
66
|
assert attributes.get("langtrace.service.type") == "llm"
|
|
69
|
-
assert attributes.get("langtrace.service.version") ==
|
|
70
|
-
|
|
71
|
-
)
|
|
72
|
-
assert attributes.get("langtrace.version") == "1.0.0"
|
|
67
|
+
assert attributes.get("langtrace.service.version") == v("openai")
|
|
68
|
+
assert attributes.get("langtrace.version") == v("langtrace-python-sdk")
|
|
73
69
|
assert attributes.get("url.full") == "https://api.openai.com/v1/"
|
|
74
70
|
assert attributes.get("llm.api") == APIS["IMAGES_GENERATION"]["ENDPOINT"]
|
|
75
71
|
assert attributes.get("llm.model") == llm_model_value
|