LogoLogo
Slack CommunityCatalyst Login
  • Welcome
  • RagaAI Catalyst
    • User Quickstart
    • Concepts
      • Configure Your API Keys
      • Supported LLMs
        • OpenAI
        • Gemini
        • Azure
        • AWS Bedrock
        • ANTHROPIC
      • Catalyst Access/Secret Keys
      • Enable Custom Gateway
      • Uploading Data
        • Create new project
        • RAG Datset
        • Chat Dataset
          • Prompt Format
        • Logging traces (LlamaIndex, Langchain)
        • Trace Masking Functions
        • Trace Level Metadata
        • Correlating Traces with External IDs
        • Add Dataset
      • Running RagaAI Evals
        • Executing Evaluations
        • Compare Datasets
      • Analysis
      • Embeddings
    • RagaAI Metric Library
      • RAG Metrics
        • Hallucination
        • Faithfulness
        • Response Correctness
        • Response Completeness
        • False Refusal
        • Context Relevancy
        • Context Precision
        • Context Recall
        • PII Detection
        • Toxicity
      • Chat Metrics
        • Agent Quality
        • Instruction Adherence
        • User Chat Quality
      • Text-to-SQL
        • SQL Response Correctness
        • SQL Prompt Ambiguity
        • SQL Context Ambiguity
        • SQL Context Sufficiency
        • SQL Prompt Injection
      • Text Summarization
        • Summary Consistency
        • Summary Relevance
        • Summary Fluency
        • Summary Coherence
        • SummaC
        • QAG Score
        • ROUGE
        • BLEU
        • METEOR
        • BERTScore
      • Information Extraction
        • MINEA
        • Subjective Question Correction
        • Precision@K
        • Chunk Relevance
        • Entity Co-occurrence
        • Fact Entropy
      • Code Generation
        • Functional Correctness
        • ChrF
        • Ruby
        • CodeBLEU
        • Robust Pass@k
        • Robust Drop@k
        • Pass-Ratio@n
      • Marketing Content Evaluation
        • Engagement Score
        • Misattribution
        • Readability
        • Topic Coverage
        • Fabrication
      • Learning Management System
        • Topic Coverage
        • Topic Redundancy
        • Question Redundancy
        • Answer Correctness
        • Source Citability
        • Difficulty Level
      • Additional Metrics
        • Guardrails
          • Anonymize
          • Deanonymize
          • Ban Competitors
          • Ban Substrings
          • Ban Topics
          • Code
          • Invisible Text
          • Language
          • Secret
          • Sentiment
          • Factual Consistency
          • Language Same
          • No Refusal
          • Reading Time
          • Sensitive
          • URL Reachability
          • JSON Verify
        • Vulnerability Scanner
          • Bullying
          • Deadnaming
          • SexualContent
          • Sexualisation
          • SlurUsage
          • Profanity
          • QuackMedicine
          • DAN 11
          • DAN 10
          • DAN 9
          • DAN 8
          • DAN 7
          • DAN 6_2
          • DAN 6_0
          • DUDE
          • STAN
          • DAN_JailBreak
          • AntiDAN
          • ChatGPT_Developer_Mode_v2
          • ChatGPT_Developer_Mode_RANTI
          • ChatGPT_Image_Markdown
          • Ablation_Dan_11_0
          • Anthropomorphisation
      • Guardrails
        • Competitor Check
        • Gibberish Check
        • PII
        • Regex Check
        • Response Evaluator
        • Toxicity
        • Unusual Prompt
        • Ban List
        • Detect Drug
        • Detect Redundancy
        • Detect Secrets
        • Financial Tone Check
        • Has Url
        • HTML Sanitisation
        • Live URL
        • Logic Check
        • Politeness Check
        • Profanity Check
        • Quote Price
        • Restrict Topics
        • SQL Predicates Guard
        • Valid CSV
        • Valid JSON
        • Valid Python
        • Valid Range
        • Valid SQL
        • Valid URL
        • Cosine Similarity
        • Honesty Detection
        • Toxicity Hate Speech
    • Prompt Playground
      • Concepts
      • Single-Prompt Playground
      • Multiple Prompt Playground
      • Run Evaluations
      • Using Prompt Slugs with Python SDK
      • Create with AI using Prompt Wizard
      • Prompt Diff View
    • Synthetic Data Generation
    • Gateway
      • Quickstart
    • Guardrails
      • Quickstart
      • Python SDK
    • RagaAI Whitepapers
      • RagaAI RLEF (RAG LLM Evaluation Framework)
    • Agentic Testing
      • Quickstart
      • Concepts
        • Tracing
          • Langgraph (Agentic Tracing)
          • RagaAI Catalyst Tracing Guide for Azure OpenAI Users
        • Dynamic Tracing
        • Application Workflow
      • Create New Dataset
      • Metrics
        • Hallucination
        • Toxicity
        • Honesty
        • Cosine Similarity
      • Compare Traces
      • Compare Experiments
      • Add metrics locally
    • Custom Metric
    • Auto Prompt Optimization
    • Human Feedback & Annotations
      • Thumbs Up/Down
      • Add Metric Corrections
      • Corrections as Few-Shot Examples
      • Tagging
    • On-Premise Deployment
      • Enterprise Deployment Guide for AWS
      • Enterprise Deployment Guide for Azure
      • Evaluation Deployment Guide
        • Evaluation Maintenance Guide
    • Fine Tuning (OpenAI)
    • Integration
    • SDK Release Notes
      • ragaai-catalyst 2.1.7
  • RagaAI Prism
    • Quickstart
    • Sandbox Guide
      • Object Detection
      • LLM Summarization
      • Semantic Segmentation
      • Tabular Data
      • Super Resolution
      • OCR
      • Image Classification
      • Event Detection
    • Test Inventory
      • Object Detection
        • Failure Mode Analysis
        • Model Comparison Test
        • Drift Detection
        • Outlier Detection
        • Data Leakage Test
        • Labelling Quality Test
        • Scenario Imbalance
        • Class Imbalance
        • Active Learning
        • Image Property Drift Detection
      • Large Language Model (LLM)
        • Failure Mode Analysis
      • Semantic Segmentation
        • Failure Mode Analysis
        • Labelling Quality Test
        • Active Learning
        • Drift Detection
        • Class Imbalance
        • Scenario Imbalance
        • Data Leakage Test
        • Outlier Detection
        • Label Drift
        • Semantic Similarity
        • Near Duplicates Detection
        • Cluster Imbalance Test
        • Image Property Drift Detection
        • Spatio-Temporal Drift Detection
        • Spatio-Temporal Failure Mode Analysis
      • Tabular Data
        • Failure Mode Analysis
      • Instance Segmentation
        • Failure Mode Analysis
        • Labelling Quality Test
        • Drift Detection
        • Class Imbalance
        • Scenario Imbalance
        • Label Drift
        • Data Leakage Test
        • Outlier Detection
        • Active Learning
        • Near Duplicates Detection
      • Super Resolution
        • Semantic Similarity
        • Active Learning
        • Near Duplicates Detection
        • Outlier Detection
      • OCR
        • Missing Value Test
        • Outlier Detection
      • Image Classification
        • Failure Mode Analysis
        • Labelling Quality Test
        • Class Imbalance
        • Drift Detection
        • Near Duplicates Test
        • Data Leakage Test
        • Outlier Detection
        • Active Learning
        • Image Property Drift Detection
      • Event Detection
        • Failure Mode Analysis
        • A/B Test
    • Metric Glossary
    • Upload custom model
    • Event Detection
      • Upload Model
      • Generate Inference
      • Run tests
    • On-Premise Deployment
      • Enterprise Deployment Guide for AWS
      • Enterprise Deployment Guide for Azure
  • Support
Powered by GitBook
On this page
  • Execute Test
  • Analysing Test Results
  • Analysing Test Results

Was this helpful?

  1. RagaAI Prism
  2. Test Inventory
  3. Large Language Model (LLM)

Failure Mode Analysis

Failure Mode Analysis enables you to define rules on metrics by setting thresholds. Based on rules, get a sorted list of all clusters that are breaching the threshold and clusters that are within the threshold. RagaAI will create clusters using the embeddings of the Dataset. Clusters that underperform and breaches the threshold will be highlighted on the Issue Stats screen.

Execute Test

The following code snippet is designed to perform a Failure Mode Analysis test on Language Models (LLMs) within the RagaAI environment.

First, you define the rules that will be used to evaluate the LLM's performance based on various linguistic metrics such as BLEU, Cosine Similarity, METEOR, and ROUGE. These rules help in assessing the model's accuracy and its capability to generate contextually relevant and coherent text.

rules = FMA_LLMRules()
rules.add(metric = 'accuracy', metric_threshold = 0.5, eval_metric='BLEU', threshold=0.1)
rules.add(metric = 'accuracy', metric_threshold = 0.5, eval_metric='CosineSimilarity', threshold=0.5)
rules.add(metric = 'accuracy', metric_threshold = 0.7, eval_metric='METEOR', threshold=0.2)
rules.add(metric = 'accuracy', metric_threshold = 0.5, eval_metric='ROUGE', threshold=0.25)

cls_default = clustering(test_session=test_session,
                         dataset_name="llm_dataset_testing",
                         method="k-means",
                         embedding_col="summary_vector",
                         level="image",
                         args={"numOfClusters": 5})

cls_default = clustering(test_session=test_session,
                         dataset_name="llm_dataset_testing",
                         method="k-means",
                         embedding_col="summary_vector",
                         level="image",
                         args={"numOfClusters": 5})

edge_case_detection = failure_mode_analysis_llm(test_session=test_session,
                                                dataset_name="dataset_name",
                                                test_name="fma_llm_1",
                                                model="modelA",
                                                gt="GT",
                                                rules=rules,
                                                type="fma",
                                                output_type="llm",
                                                prompt_col_name="document",
                                                model_column="summary",
                                                gt_column="reference_summary",
                                                embedding_col_name="document_vector",
                                                model_embedding_column="summary_vector",
                                                gt_embedding_column="reference_summary_vector",
                                                clustering=cls_default)
                                                
test_session.add(edge_case_detection)
test_session.run()
  • FMA_LLMRules(): Initialises the rules for the Failure Mode Analysis (FMA) test specifically designed for Language Models (LLMs).

  • rules.add(): Adds a new rule with specific parameters for evaluating the LLM's performance.

    • metric: The performance metric to evaluate (e.g., 'accuracy'). This refers to a general performance measure of the LLM.

    • metric_threshold: The minimum acceptable value for the metric. If the model's performance falls below this threshold, it may indicate a failure mode.

    • eval_metric: The specific evaluation metric used to assess a particular aspect of the LLM's output (e.g., 'BLEU', 'CosineSimilarity', 'METEOR', 'ROUGE').

    • threshold: The minimum acceptable value for the eval_metric. This threshold helps in identifying when the model's performance on this specific metric is inadequate.

  • clustering(): Sets the clustering method for grouping similar failure modes.

    • test_session: Specifies the test session to which this clustering configuration applies.

    • dataset_name: The name of the dataset on which the FMA is to be performed.

    • method: The clustering technique used, in this case, "k-means". It's a method to group data points (in this context, failure modes) into a specified number of clusters.

    • embedding_col: The column containing embedding vectors to be used for clustering. In this case, 'summary_vector' suggests that embeddings of the model's summaries are used.

    • level: The level at which clustering is applied. The value "image" is likely a placeholder or context-specific term and should correspond to the granularity of the data being clustered.

    • args: Additional arguments for the clustering method, such as the number of clusters ("numOfClusters": 5).

  • failure_mode_analysis_llm(): This function sets up the FMA specific to Language Models (LLMs) within the test environment.

    • test_session: Specifies the test session in which the FMA is conducted. It's the environment where the analysis is executed.

    • dataset_name: The name of the dataset to be used for the analysis.

    • test_name: A unique identifier for this particular test run, in this case, "fma_llm_1".

    • model: The identifier of the Language Model being tested, here referred to as "modelA".

    • gt: Short for "ground truth", this parameter refers to a standard or benchmark against which the model’s output is compared. It could be a dataset or a model providing expected results.

    • rules: The set of rules defined earlier for evaluating the model's performance. These rules determine how the model's output is assessed against various linguistic metrics.

    • type: Specifies the type of analysis to be performed. In this context, "fma" indicates that it's a Failure Mode Analysis.

    • output_type: This parameter likely indicates the type of output the model generates, which in this case is "llm", referring to Language Model outputs.

    • prompt_col_name: The name of the column in the dataset that contains the prompts or inputs given to the model. Here, it's named "document".

    • model_column: The column in the dataset that contains the outputs generated by the model, in this case, "summary".

    • gt_column: The column containing the ground truth data or reference summaries against which the model's output is compared, named "reference_summary".

    • embedding_col_name: The name of the column that contains the vector representations (embeddings) of the documents or prompts.

    • model_embedding_column: This column contains the vector representations of the model's summaries. It is used for analyses that require understanding the semantic space of the model's outputs.

    • gt_embedding_column: Contains the vector representations of the ground truth or reference summaries.

    • clustering: References the clustering configuration set earlier. This is used to group similar types of failures or performance issues identified during the FMA.

  • test_session.add(): Registers the labelling quality test with the session.

  • test_session.run(): Starts the execution of all tests in the session, including your labelling quality test.

This setup in RagaAI helps you effectively analyse and identify failure modes in LLMs, providing valuable insights for model improvement and refinement."

Analysing Test Results

Clustering (Embedding View)

  1. Navigate to Embedding View: Find the interactive visualisation interface in RagaAI.

  2. Visualise Clusters: Utilise the tool to visualise complex clustering, uncovering hidden patterns and structures in the data.

  3. Select Data Points: Use the lasso tool to select specific data points of interest and analyse their results.

Visualising Data

  1. Grid View: Access the grid view to see data points within the selected clusters.

  2. Data Filtering: Use this feature to focus on specific subsets of your dataset that meet certain conditions, helping to extract meaningful patterns and trends.

Analysing Test Results

Clustering (Embedding View)

  1. Navigate to Embedding View: Find the interactive visualisation interface in RagaAI.

  2. Visualise Clusters: Utilise the tool to visualise complex clustering, uncovering hidden patterns and structures in the data.

  3. Select Data Points: Use the lasso tool to select specific data points of interest and analyse their results.

Visualising Data

  1. Data Filtering: Use this feature to focus on specific subsets of your dataset that meet certain conditions, helping to extract meaningful patterns and trends.

Understanding Clustering and Threshold Breaches

  • Cluster Analysis: RagaAI creates clusters using the embeddings of the dataset. These clusters group similar data points together.

  • Identifying Underperforming Clusters: Clusters that underperform (breaching the threshold on accuracy) will be highlighted on the Issue Stats screen.

Navigating and Interpreting Results

  • Directly Look at Problematic Clusters: Users can quickly identify clusters responsible for underperformance and assess their impact on the overall model.

  • In-Depth Analysis: Dive deeper into specific clusters or data points to understand the root causes of underperformance.

Data Analysis

  1. Switch to Analysis Tab: To get a detailed performance report, go to the Analysis tab.

  2. View Performance Metrics: Examine performance metrics on distribution, document size and temporal graphs.

Practical Tips

  • Set Realistic Thresholds: Choose thresholds that reflect the expected performance of your model.

By following these steps, users can efficiently leverage the Failure Mode Analysis test to gain a comprehensive understanding of their model's performance, identify key areas for improvement, and make data-driven decisions to enhance model accuracy and reliability.

PreviousLarge Language Model (LLM)NextSemantic Segmentation

Last updated 1 year ago

Was this helpful?