openlit 1.33.16__tar.gz → 1.33.17__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 (129) hide show
  1. {openlit-1.33.16 → openlit-1.33.17}/PKG-INFO +1 -1
  2. {openlit-1.33.16 → openlit-1.33.17}/pyproject.toml +1 -1
  3. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/langchain/langchain.py +2 -28
  4. {openlit-1.33.16 → openlit-1.33.17}/LICENSE +0 -0
  5. {openlit-1.33.16 → openlit-1.33.17}/README.md +0 -0
  6. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/__helpers.py +0 -0
  7. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/__init__.py +0 -0
  8. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/evals/__init__.py +0 -0
  9. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/evals/all.py +0 -0
  10. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/evals/bias_detection.py +0 -0
  11. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/evals/hallucination.py +0 -0
  12. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/evals/toxicity.py +0 -0
  13. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/evals/utils.py +0 -0
  14. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/guard/__init__.py +0 -0
  15. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/guard/all.py +0 -0
  16. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/guard/prompt_injection.py +0 -0
  17. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/guard/restrict_topic.py +0 -0
  18. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/guard/sensitive_topic.py +0 -0
  19. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/guard/utils.py +0 -0
  20. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ag2/__init__.py +0 -0
  21. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ag2/ag2.py +0 -0
  22. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ai21/__init__.py +0 -0
  23. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ai21/ai21.py +0 -0
  24. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ai21/async_ai21.py +0 -0
  25. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ai21/utils.py +0 -0
  26. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/anthropic/__init__.py +0 -0
  27. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/anthropic/anthropic.py +0 -0
  28. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/anthropic/async_anthropic.py +0 -0
  29. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/anthropic/utils.py +0 -0
  30. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/assemblyai/__init__.py +0 -0
  31. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/assemblyai/assemblyai.py +0 -0
  32. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/astra/__init__.py +0 -0
  33. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/astra/astra.py +0 -0
  34. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/astra/async_astra.py +0 -0
  35. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/astra/utils.py +0 -0
  36. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/azure_ai_inference/__init__.py +0 -0
  37. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/azure_ai_inference/async_azure_ai_inference.py +0 -0
  38. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/azure_ai_inference/azure_ai_inference.py +0 -0
  39. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/bedrock/__init__.py +0 -0
  40. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/bedrock/bedrock.py +0 -0
  41. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/chroma/__init__.py +0 -0
  42. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/chroma/chroma.py +0 -0
  43. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/cohere/__init__.py +0 -0
  44. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/cohere/async_cohere.py +0 -0
  45. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/cohere/cohere.py +0 -0
  46. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/controlflow/__init__.py +0 -0
  47. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/controlflow/controlflow.py +0 -0
  48. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/crawl4ai/__init__.py +0 -0
  49. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/crawl4ai/async_crawl4ai.py +0 -0
  50. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/crawl4ai/crawl4ai.py +0 -0
  51. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/crewai/__init__.py +0 -0
  52. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/crewai/crewai.py +0 -0
  53. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/dynamiq/__init__.py +0 -0
  54. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/dynamiq/dynamiq.py +0 -0
  55. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/elevenlabs/__init__.py +0 -0
  56. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/elevenlabs/async_elevenlabs.py +0 -0
  57. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/elevenlabs/elevenlabs.py +0 -0
  58. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/embedchain/__init__.py +0 -0
  59. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/embedchain/embedchain.py +0 -0
  60. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/firecrawl/__init__.py +0 -0
  61. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/firecrawl/firecrawl.py +0 -0
  62. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/google_ai_studio/__init__.py +0 -0
  63. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/google_ai_studio/async_google_ai_studio.py +0 -0
  64. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/google_ai_studio/google_ai_studio.py +0 -0
  65. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/gpt4all/__init__.py +0 -0
  66. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/gpt4all/gpt4all.py +0 -0
  67. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/gpu/__init__.py +0 -0
  68. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/groq/__init__.py +0 -0
  69. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/groq/async_groq.py +0 -0
  70. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/groq/groq.py +0 -0
  71. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/haystack/__init__.py +0 -0
  72. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/haystack/haystack.py +0 -0
  73. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/julep/__init__.py +0 -0
  74. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/julep/async_julep.py +0 -0
  75. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/julep/julep.py +0 -0
  76. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/langchain/__init__.py +0 -0
  77. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/langchain/async_langchain.py +0 -0
  78. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/letta/__init__.py +0 -0
  79. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/letta/letta.py +0 -0
  80. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/litellm/__init__.py +0 -0
  81. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/litellm/async_litellm.py +0 -0
  82. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/litellm/litellm.py +0 -0
  83. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/llamaindex/__init__.py +0 -0
  84. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/llamaindex/llamaindex.py +0 -0
  85. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/mem0/__init__.py +0 -0
  86. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/mem0/mem0.py +0 -0
  87. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/milvus/__init__.py +0 -0
  88. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/milvus/milvus.py +0 -0
  89. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/mistral/__init__.py +0 -0
  90. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/mistral/async_mistral.py +0 -0
  91. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/mistral/mistral.py +0 -0
  92. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/multion/__init__.py +0 -0
  93. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/multion/async_multion.py +0 -0
  94. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/multion/multion.py +0 -0
  95. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ollama/__init__.py +0 -0
  96. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ollama/async_ollama.py +0 -0
  97. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ollama/ollama.py +0 -0
  98. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/ollama/utils.py +0 -0
  99. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/openai/__init__.py +0 -0
  100. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/openai/async_openai.py +0 -0
  101. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/openai/openai.py +0 -0
  102. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/openai_agents/__init__.py +0 -0
  103. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/openai_agents/openai_agents.py +0 -0
  104. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/phidata/__init__.py +0 -0
  105. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/phidata/phidata.py +0 -0
  106. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/pinecone/__init__.py +0 -0
  107. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/pinecone/pinecone.py +0 -0
  108. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/premai/__init__.py +0 -0
  109. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/premai/premai.py +0 -0
  110. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/qdrant/__init__.py +0 -0
  111. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/qdrant/async_qdrant.py +0 -0
  112. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/qdrant/qdrant.py +0 -0
  113. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/reka/__init__.py +0 -0
  114. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/reka/async_reka.py +0 -0
  115. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/reka/reka.py +0 -0
  116. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/together/__init__.py +0 -0
  117. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/together/async_together.py +0 -0
  118. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/together/together.py +0 -0
  119. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/transformers/__init__.py +0 -0
  120. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/transformers/transformers.py +0 -0
  121. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/vertexai/__init__.py +0 -0
  122. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/vertexai/async_vertexai.py +0 -0
  123. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/vertexai/vertexai.py +0 -0
  124. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/vllm/__init__.py +0 -0
  125. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/instrumentation/vllm/vllm.py +0 -0
  126. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/otel/events.py +0 -0
  127. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/otel/metrics.py +0 -0
  128. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/otel/tracing.py +0 -0
  129. {openlit-1.33.16 → openlit-1.33.17}/src/openlit/semcov/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: openlit
3
- Version: 1.33.16
3
+ Version: 1.33.17
4
4
  Summary: OpenTelemetry-native Auto instrumentation library for monitoring LLM Applications and GPUs, facilitating the integration of observability into your GenAI-driven projects
5
5
  License: Apache-2.0
6
6
  Keywords: OpenTelemetry,otel,otlp,llm,tracing,openai,anthropic,claude,cohere,llm monitoring,observability,monitoring,gpt,Generative AI,chatGPT,gpu
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "openlit"
3
- version = "1.33.16"
3
+ version = "1.33.17"
4
4
  description = "OpenTelemetry-native Auto instrumentation library for monitoring LLM Applications and GPUs, facilitating the integration of observability into your GenAI-driven projects"
5
5
  authors = ["OpenLIT"]
6
6
  license = "Apache-2.0"
@@ -14,6 +14,7 @@ from openlit.__helpers import (
14
14
  calculate_ttft,
15
15
  calculate_tbt,
16
16
  create_metrics_attributes,
17
+ extract_and_format_input,
17
18
  )
18
19
  from openlit.semcov import SemanticConvetion
19
20
 
@@ -249,34 +250,7 @@ def chat(gen_ai_endpoint, version, environment, application_name,
249
250
  end_time = time.time()
250
251
 
251
252
  try:
252
- # Format 'messages' into a single string
253
- message_prompt = kwargs.get("messages", "") or args[0]
254
- formatted_messages = []
255
-
256
- for message in message_prompt:
257
- # Handle the case where message is a tuple
258
- if isinstance(message, tuple) and len(message) == 2:
259
- role, content = message
260
- # Handle the case where message is a dictionary
261
- elif isinstance(message, dict):
262
- role = message["role"]
263
- content = message["content"]
264
- else:
265
- continue
266
-
267
- # Check if the content is a list
268
- if isinstance(content, list):
269
- content_str = ", ".join(
270
- f'{item["type"]}: {item["text"] if "text" in item else item["image_url"]}'
271
- if "type" in item else f'text: {item["text"]}'
272
- for item in content
273
- )
274
- formatted_messages.append(f"{role}: {content_str}")
275
- else:
276
- formatted_messages.append(f"{role}: {content}")
277
-
278
- # Join all formatted messages with newline
279
- prompt = "\n".join(formatted_messages)
253
+ prompt = str(kwargs.get('messages', '') or args[0])
280
254
 
281
255
  input_tokens = general_tokens(str(prompt))
282
256
  output_tokens = general_tokens(str(response))
File without changes
File without changes