@@ -433,42 +433,43 @@ void inputFilteringStrict() {
433433 new LlamaGuardFilter ().config (LlamaGuard38b .create ().violentCrimes (true ));
434434 final var configWithFilter = config .withInputFiltering (azureFilter , llamaFilter );
435435
436- try {
437- client .chatCompletion (prompt , configWithFilter );
438- } catch (OrchestrationFilterException .Input e ) {
439- assertThat (e .getMessage ())
440- .isEqualTo (
441- "Request failed with status 400 (Bad Request): 400 - Filtering Module - Input Filter: Prompt filtered due to safety violations. Please modify the prompt and try again." );
442- assertThat (e .getStatusCode ()).isEqualTo (SC_BAD_REQUEST );
443- assertThat (e .getFilterDetails ())
444- .isEqualTo (
445- Map .of (
446- "azure_content_safety" ,
436+ assertThatThrownBy (() -> client .chatCompletion (prompt , configWithFilter ))
437+ .isInstanceOfSatisfying (
438+ OrchestrationFilterException .Input .class ,
439+ e -> {
440+ assertThat (e .getMessage ())
441+ .isEqualTo (
442+ "Request failed with status 400 (Bad Request): 400 - Filtering Module - Input Filter: Prompt filtered due to safety violations. Please modify the prompt and try again." );
443+ assertThat (e .getStatusCode ()).isEqualTo (SC_BAD_REQUEST );
444+ assertThat (e .getFilterDetails ())
445+ .isEqualTo (
447446 Map .of (
448- "Hate" , 6 ,
449- "SelfHarm" , 0 ,
450- "Sexual" , 0 ,
451- "Violence" , 6 ,
452- "userPromptAnalysis" , Map .of ("attackDetected" , false )),
453- "llama_guard_3_8b" , Map .of ("violent_crimes" , true )));
454-
455- final var errorResponse = e .getErrorResponse ();
456- assertThat (errorResponse ).isNotNull ();
457- assertThat (errorResponse ).isInstanceOf (ErrorResponse .class );
458- assertThat (errorResponse .getError ().getCode ()).isEqualTo (SC_BAD_REQUEST );
459- assertThat (errorResponse .getError ().getCode ())
460- .isEqualTo (
461- "400 - Filtering Module - Input Filter: Prompt filtered due to safety violations. Please modify the prompt and try again." );
462-
463- assertThat (e .getAzureContentSafetyInput ()).isNotNull ();
464- assertThat (e .getAzureContentSafetyInput ().getHate ()).isEqualTo (NUMBER_6 );
465- assertThat (e .getAzureContentSafetyInput ().getSelfHarm ()).isEqualTo (NUMBER_0 );
466- assertThat (e .getAzureContentSafetyInput ().getSexual ()).isEqualTo (NUMBER_0 );
467- assertThat (e .getAzureContentSafetyInput ().getViolence ()).isEqualTo (NUMBER_6 );
468-
469- assertThat (e .getLlamaGuard38b ()).isNotNull ();
470- assertThat (e .getLlamaGuard38b ().isViolentCrimes ()).isTrue ();
471- }
447+ "azure_content_safety" ,
448+ Map .of (
449+ "Hate" , 6 ,
450+ "SelfHarm" , 0 ,
451+ "Sexual" , 0 ,
452+ "Violence" , 6 ,
453+ "userPromptAnalysis" , Map .of ("attackDetected" , false )),
454+ "llama_guard_3_8b" , Map .of ("violent_crimes" , true )));
455+
456+ final var errorResponse = e .getErrorResponse ();
457+ assertThat (errorResponse ).isNotNull ();
458+ assertThat (errorResponse ).isInstanceOf (ErrorResponse .class );
459+ assertThat (errorResponse .getError ().getCode ()).isEqualTo (SC_BAD_REQUEST );
460+ assertThat (errorResponse .getError ().getMessage ())
461+ .isEqualTo (
462+ "400 - Filtering Module - Input Filter: Prompt filtered due to safety violations. Please modify the prompt and try again." );
463+
464+ assertThat (e .getAzureContentSafetyInput ()).isNotNull ();
465+ assertThat (e .getAzureContentSafetyInput ().getHate ()).isEqualTo (NUMBER_6 );
466+ assertThat (e .getAzureContentSafetyInput ().getSelfHarm ()).isEqualTo (NUMBER_0 );
467+ assertThat (e .getAzureContentSafetyInput ().getSexual ()).isEqualTo (NUMBER_0 );
468+ assertThat (e .getAzureContentSafetyInput ().getViolence ()).isEqualTo (NUMBER_6 );
469+
470+ assertThat (e .getLlamaGuard38b ()).isNotNull ();
471+ assertThat (e .getLlamaGuard38b ().isViolentCrimes ()).isTrue ();
472+ });
472473 }
473474
474475 @ Test
@@ -486,33 +487,36 @@ void outputFilteringStrict() {
486487 new LlamaGuardFilter ().config (LlamaGuard38b .create ().violentCrimes (true ));
487488 final var configWithFilter = config .withOutputFiltering (azureFilter , llamaFilter );
488489
489- try {
490- client .chatCompletion (prompt , configWithFilter ).getContent ();
491- } catch (OrchestrationFilterException .Output e ) {
492- assertThat (e .getMessage ()).isEqualTo ("Content filter filtered the output." );
493- assertThat (e .getFilterDetails ())
494- .isEqualTo (
495- Map .of (
496- "index" , 0 ,
497- "azure_content_safety" ,
490+ assertThatThrownBy (client .chatCompletion (prompt , configWithFilter )::getContent )
491+ .isInstanceOfSatisfying (
492+ OrchestrationFilterException .Output .class ,
493+ e -> {
494+ assertThat (e .getMessage ()).isEqualTo ("Content filter filtered the output." );
495+ assertThat (e .getFilterDetails ())
496+ .isEqualTo (
498497 Map .of (
499- "Hate" , 6 ,
500- "SelfHarm" , 0 ,
501- "Sexual" , 0 ,
502- "Violence" , 6 ),
503- "llama_guard_3_8b" , Map .of ("violent_crimes" , true )));
504- assertThat (e .getErrorResponse ()).isNull ();
505- assertThat (e .getStatusCode ()).isNull ();
506-
507- assertThat (e .getAzureContentSafetyOutput ()).isNotNull ();
508- assertThat (e .getAzureContentSafetyOutput ().getHate ()).isEqualTo (NUMBER_6 );
509- assertThat (e .getAzureContentSafetyOutput ().getSelfHarm ()).isEqualTo (NUMBER_0 );
510- assertThat (e .getAzureContentSafetyOutput ().getSexual ()).isEqualTo (NUMBER_0 );
511- assertThat (e .getAzureContentSafetyOutput ().getViolence ()).isEqualTo (NUMBER_6 );
512-
513- assertThat (e .getLlamaGuard38b ()).isNotNull ();
514- assertThat (e .getLlamaGuard38b ().isViolentCrimes ()).isTrue ();
515- }
498+ "index" ,
499+ 0 ,
500+ "azure_content_safety" ,
501+ Map .of (
502+ "Hate" , 6 ,
503+ "SelfHarm" , 0 ,
504+ "Sexual" , 0 ,
505+ "Violence" , 6 ),
506+ "llama_guard_3_8b" ,
507+ Map .of ("violent_crimes" , true )));
508+ assertThat (e .getErrorResponse ()).isNull ();
509+ assertThat (e .getStatusCode ()).isNull ();
510+
511+ assertThat (e .getAzureContentSafetyOutput ()).isNotNull ();
512+ assertThat (e .getAzureContentSafetyOutput ().getHate ()).isEqualTo (NUMBER_6 );
513+ assertThat (e .getAzureContentSafetyOutput ().getSelfHarm ()).isEqualTo (NUMBER_0 );
514+ assertThat (e .getAzureContentSafetyOutput ().getSexual ()).isEqualTo (NUMBER_0 );
515+ assertThat (e .getAzureContentSafetyOutput ().getViolence ()).isEqualTo (NUMBER_6 );
516+
517+ assertThat (e .getLlamaGuard38b ()).isNotNull ();
518+ assertThat (e .getLlamaGuard38b ().isViolentCrimes ()).isTrue ();
519+ });
516520 }
517521
518522 @ Test
0 commit comments