class_docstr: Agent class to improve the conversational experience in PandasAI
class_docstr_tok: ["Agent","class","to","improve","the","conversational","experience","in","PandasAI"]
docstr: Generate clarification questions based on the data
docstr_tok: ["Generate","clarification","questions","based","on","the","data"]
code: def clarification_questions(self, query: str) -> List[str]:
      """
      Generate clarification questions based on the data
      """
      prompt = ClarificationQuestionPrompt(
          dataframes=self._lake.dfs,
          conversation=self._lake._memory.get_conversation(),
          query=query,
      )
  
      result = self._call_llm_with_prompt(prompt)
      self._logger.log(
          f"""Clarification Questions:  {result}
              """
      )
      result = result.replace("```json", "").replace("```", "")
      questions: list[str] = json.loads(result)
      return questions[:3]
  
imports: import json
  from typing import Union, List, Optional
  from ..helpers.df_info import DataFrameType
  from ..helpers.logger import Logger
  from ..helpers.memory import Memory
  from ..prompts.base import AbstractPrompt
  from ..prompts.clarification_questions_prompt import ClarificationQuestionPrompt
  from ..prompts.explain_prompt import ExplainPrompt
  from ..prompts.rephase_query_prompt import RephraseQueryPrompt
  from ..prompts.check_if_relevant_to_conversation import CheckIfRelevantToConversationPrompt
  from ..schemas.df_config import Config
  from ..skills import Skill
  from ..smart_datalake import SmartDatalake
label_desc: Use image node_id 7 for calling the Agent obj's underlying member method code with example usage: obj.clarification_questions(query) and returns: questions