1- import logging
21from typing import Any , Dict , List , Optional , Tuple
32
43import chevron
5- from ldclient import Context
4+ from ldclient import Context , log
65from ldclient .client import LDClient
76
87from ldai .chat import Chat
1211 AICompletionConfigDefault , AIJudgeConfig ,
1312 AIJudgeConfigDefault , JudgeConfiguration , LDMessage ,
1413 ModelConfig , ProviderConfig )
15- from ldai .providers .ai_provider_factory import (AIProviderFactory ,
16- SupportedAIProvider )
14+ from ldai .providers .ai_provider_factory import AIProviderFactory
1715from ldai .tracker import LDAIConfigTracker
1816
1917
@@ -22,7 +20,6 @@ class LDAIClient:
2220
2321 def __init__ (self , client : LDClient ):
2422 self ._client = client
25- self ._logger = logging .getLogger ('ldclient.ai' )
2623
2724 def completion_config (
2825 self ,
@@ -122,7 +119,7 @@ async def create_judge(
122119 context : Context ,
123120 default_value : AIJudgeConfigDefault ,
124121 variables : Optional [Dict [str , Any ]] = None ,
125- default_ai_provider : Optional [SupportedAIProvider ] = None ,
122+ default_ai_provider : Optional [str ] = None ,
126123 ) -> Optional [Judge ]:
127124 """
128125 Creates and returns a new Judge instance for AI evaluation.
@@ -180,11 +177,11 @@ async def create_judge(
180177 return None
181178
182179 # Create AI provider for the judge
183- provider = await AIProviderFactory .create (judge_config , self . _logger , default_ai_provider )
180+ provider = await AIProviderFactory .create (judge_config , default_ai_provider )
184181 if not provider :
185182 return None
186183
187- return Judge (judge_config , judge_config .tracker , provider , self . _logger )
184+ return Judge (judge_config , judge_config .tracker , provider )
188185 except Exception as error :
189186 # Would log error if logger available
190187 return None
@@ -194,7 +191,7 @@ async def _initialize_judges(
194191 judge_configs : List [JudgeConfiguration .Judge ],
195192 context : Context ,
196193 variables : Optional [Dict [str , Any ]] = None ,
197- default_ai_provider : Optional [SupportedAIProvider ] = None ,
194+ default_ai_provider : Optional [str ] = None ,
198195 ) -> Dict [str , Judge ]:
199196 """
200197 Initialize judges from judge configurations.
@@ -240,7 +237,7 @@ async def create_chat(
240237 context : Context ,
241238 default_value : AICompletionConfigDefault ,
242239 variables : Optional [Dict [str , Any ]] = None ,
243- default_ai_provider : Optional [SupportedAIProvider ] = None ,
240+ default_ai_provider : Optional [str ] = None ,
244241 ) -> Optional [Chat ]:
245242 """
246243 Creates and returns a new Chat instance for AI conversations.
@@ -275,15 +272,14 @@ async def create_chat(
275272 print(f"Conversation has {len(messages)} messages")
276273 """
277274 self ._client .track ('$ld:ai:config:function:createChat' , context , key , 1 )
278- if self ._logger :
279- self ._logger .debug (f"Creating chat for key: { key } " )
275+ log .debug (f"Creating chat for key: { key } " )
280276 config = self .completion_config (key , context , default_value , variables )
281277
282278 if not config .enabled or not config .tracker :
283279 # Would log info if logger available
284280 return None
285281
286- provider = await AIProviderFactory .create (config , self . _logger , default_ai_provider )
282+ provider = await AIProviderFactory .create (config , default_ai_provider )
287283 if not provider :
288284 return None
289285
@@ -296,7 +292,7 @@ async def create_chat(
296292 default_ai_provider ,
297293 )
298294
299- return Chat (config , config .tracker , provider , judges , self . _logger )
295+ return Chat (config , config .tracker , provider , judges )
300296
301297 def agent_config (
302298 self ,
0 commit comments