@@ -174,82 +174,6 @@ def test_tracks_token_usage(client: LDClient):
174174 assert tracker .get_summary ().tokens == tokens
175175
176176
177- def test_tracks_bedrock_metrics (client : LDClient ):
178- context = Context .create ("user-key" )
179- tracker = LDAIConfigTracker (
180- ld_client = client , run_id = "test-run-id" , config_key = "config-key" ,
181- variation_key = "variation-key" , version = 3 , model_name = "fakeModel" ,
182- provider_name = "fakeProvider" , context = context ,
183- )
184-
185- bedrock_result = {
186- "ResponseMetadata" : {"HTTPStatusCode" : 200 },
187- "usage" : {
188- "inputTokens" : 220 ,
189- "outputTokens" : 110 ,
190- "totalTokens" : 330 ,
191- },
192- "metrics" : {
193- "latencyMs" : 50 ,
194- },
195- }
196- tracker .track_bedrock_converse_metrics (bedrock_result )
197-
198- _btd = {"runId" : ANY , "variationKey" : "variation-key" , "configKey" : "config-key" ,
199- "version" : 3 , "modelName" : "fakeModel" , "providerName" : "fakeProvider" }
200- calls = [
201- call ("$ld:ai:generation:success" , context , _btd , 1 ),
202- call ("$ld:ai:duration:total" , context , _btd , 50 ),
203- call ("$ld:ai:tokens:total" , context , _btd , 330 ),
204- call ("$ld:ai:tokens:input" , context , _btd , 220 ),
205- call ("$ld:ai:tokens:output" , context , _btd , 110 ),
206- ]
207-
208- client .track .assert_has_calls (calls ) # type: ignore
209-
210- assert tracker .get_summary ().success is True
211- assert tracker .get_summary ().duration_ms == 50
212- assert tracker .get_summary ().tokens == TokenUsage (330 , 220 , 110 )
213-
214-
215- def test_tracks_bedrock_metrics_with_error (client : LDClient ):
216- context = Context .create ("user-key" )
217- tracker = LDAIConfigTracker (
218- ld_client = client , run_id = "test-run-id" , config_key = "config-key" ,
219- variation_key = "variation-key" , version = 3 , model_name = "fakeModel" ,
220- provider_name = "fakeProvider" , context = context ,
221- )
222-
223- bedrock_result = {
224- "ResponseMetadata" : {"HTTPStatusCode" : 500 },
225- "usage" : {
226- "totalTokens" : 330 ,
227- "inputTokens" : 220 ,
228- "outputTokens" : 110 ,
229- },
230- "metrics" : {
231- "latencyMs" : 50 ,
232- },
233- }
234- tracker .track_bedrock_converse_metrics (bedrock_result )
235-
236- _etd = {"runId" : ANY , "variationKey" : "variation-key" , "configKey" : "config-key" ,
237- "version" : 3 , "modelName" : "fakeModel" , "providerName" : "fakeProvider" }
238- calls = [
239- call ("$ld:ai:generation:error" , context , _etd , 1 ),
240- call ("$ld:ai:duration:total" , context , _etd , 50 ),
241- call ("$ld:ai:tokens:total" , context , _etd , 330 ),
242- call ("$ld:ai:tokens:input" , context , _etd , 220 ),
243- call ("$ld:ai:tokens:output" , context , _etd , 110 ),
244- ]
245-
246- client .track .assert_has_calls (calls ) # type: ignore
247-
248- assert tracker .get_summary ().success is False
249- assert tracker .get_summary ().duration_ms == 50
250- assert tracker .get_summary ().tokens == TokenUsage (330 , 220 , 110 )
251-
252-
253177@pytest .mark .parametrize (
254178 "kind,label" ,
255179 [
0 commit comments