osmosis-ai 0.1.6__py3-none-any.whl → 0.1.8__py3-none-any.whl

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.

Potentially problematic release.


This version of osmosis-ai might be problematic. Click here for more details.

osmosis_ai/__init__.py CHANGED
@@ -10,38 +10,44 @@ Currently supported adapters:
10
10
  - LangChain (LLMs, Chat Models, and Prompt Templates)
11
11
  """
12
12
 
13
+
13
14
  # Use lazy imports to avoid importing modules during setup
14
15
  def _import_modules():
15
16
  global utils, logger, reconfigure_logger
16
17
  global set_log_destination, log_destination, LogDestination
17
- global init, enabled, disable_osmosis, enable_osmosis
18
-
18
+ global init, enabled, disable_osmosis, enable_osmosis, osmosis_reward
19
+
19
20
  from . import utils
20
21
  from .logger import logger, reconfigure_logger, set_log_destination, log_destination
21
22
  from .consts import LogDestination
23
+
22
24
  # Re-export configuration flags for easy access
23
25
  enabled = utils.enabled
24
-
26
+
25
27
  # Export disable and enable functions
26
28
  disable_osmosis = utils.disable_osmosis
27
29
  enable_osmosis = utils.enable_osmosis
28
-
30
+
29
31
  # Re-export initialization function
30
32
  init = utils.init
31
33
 
34
+ # Export the reward decorator
35
+ osmosis_reward = utils.osmosis_reward
36
+
32
37
  # Initialize wrappers as None
33
38
  global wrap_anthropic, wrap_openai, wrap_langchain
34
39
  global wrap_langchain_openai, wrap_langchain_anthropic
35
-
40
+
36
41
  wrap_anthropic = None
37
42
  wrap_openai = None
38
43
  wrap_langchain = None
39
44
  wrap_langchain_openai = None
40
45
  wrap_langchain_anthropic = None
41
-
46
+
42
47
  # Lazily set up anthropic wrapper if available
43
48
  try:
44
49
  from .adapters import anthropic
50
+
45
51
  wrap_anthropic = anthropic.wrap_anthropic
46
52
  # Apply the wrapper, but don't fail if it doesn't work
47
53
  try:
@@ -49,12 +55,16 @@ def _import_modules():
49
55
  except Exception as e:
50
56
  logger.warning(f"Failed to wrap Anthropic: {str(e)}")
51
57
  except ImportError:
58
+
52
59
  def wrap_anthropic():
53
- logger.warning("Anthropic support not available. Install Anthropic to use this feature.")
54
-
60
+ logger.warning(
61
+ "Anthropic support not available. Install Anthropic to use this feature."
62
+ )
63
+
55
64
  # Lazily set up OpenAI wrapper if available
56
65
  try:
57
66
  from .adapters import openai
67
+
58
68
  wrap_openai = openai.wrap_openai
59
69
  # Apply the wrapper, but don't fail if it doesn't work
60
70
  try:
@@ -62,12 +72,16 @@ def _import_modules():
62
72
  except Exception as e:
63
73
  logger.warning(f"Failed to wrap OpenAI: {str(e)}")
64
74
  except ImportError:
75
+
65
76
  def wrap_openai():
66
- logger.warning("OpenAI support not available. Install OpenAI to use this feature.")
67
-
77
+ logger.warning(
78
+ "OpenAI support not available. Install OpenAI to use this feature."
79
+ )
80
+
68
81
  # Lazily set up LangChain wrapper if available
69
82
  try:
70
83
  from .adapters import langchain
84
+
71
85
  wrap_langchain = langchain.wrap_langchain
72
86
  # Apply the wrapper, but don't fail if it doesn't work
73
87
  try:
@@ -75,12 +89,16 @@ def _import_modules():
75
89
  except Exception as e:
76
90
  logger.warning(f"Failed to wrap LangChain: {str(e)}")
77
91
  except ImportError:
92
+
78
93
  def wrap_langchain():
79
- logger.warning("LangChain support not available. Install LangChain to use this feature.")
80
-
94
+ logger.warning(
95
+ "LangChain support not available. Install LangChain to use this feature."
96
+ )
97
+
81
98
  # Lazily set up LangChain-OpenAI wrapper if available
82
99
  try:
83
100
  from .adapters import langchain_openai
101
+
84
102
  wrap_langchain_openai = langchain_openai.wrap_langchain_openai
85
103
  # Apply the wrapper, but don't fail if it doesn't work
86
104
  try:
@@ -88,12 +106,16 @@ def _import_modules():
88
106
  except Exception as e:
89
107
  logger.warning(f"Failed to wrap LangChain-OpenAI: {str(e)}")
90
108
  except ImportError:
109
+
91
110
  def wrap_langchain_openai():
92
- logger.warning("LangChain-OpenAI support not available. Install LangChain and OpenAI to use this feature.")
93
-
111
+ logger.warning(
112
+ "LangChain-OpenAI support not available. Install LangChain and OpenAI to use this feature."
113
+ )
114
+
94
115
  # Lazily set up LangChain-Anthropic wrapper if available
95
116
  try:
96
117
  from .adapters import langchain_anthropic
118
+
97
119
  wrap_langchain_anthropic = langchain_anthropic.wrap_langchain_anthropic
98
120
  # Apply the wrapper, but don't fail if it doesn't work
99
121
  try:
@@ -101,10 +123,15 @@ def _import_modules():
101
123
  except Exception as e:
102
124
  logger.warning(f"Failed to wrap LangChain-Anthropic: {str(e)}")
103
125
  except ImportError:
126
+
104
127
  def wrap_langchain_anthropic():
105
- logger.warning("LangChain-Anthropic support not available. Install LangChain and Anthropic to use this feature.")
128
+ logger.warning(
129
+ "LangChain-Anthropic support not available. Install LangChain and Anthropic to use this feature."
130
+ )
131
+
106
132
 
107
133
  # Initialize the module on first import, but not during installation
108
134
  import sys
109
- if 'pip' not in sys.modules:
110
- _import_modules()
135
+
136
+ if "pip" not in sys.modules:
137
+ _import_modules()
@@ -6,4 +6,4 @@ Each adapter is conditionally imported based on installed dependencies.
6
6
  """
7
7
 
8
8
  # Don't include adapters in __all__ as they're imported conditionally
9
- __all__ = []
9
+ __all__ = []