[docs]def__init__(self,chat_log:pd.DataFrame,user_id_col:str="ID"):"""Initialize with a Pandas DataFrame containing chat logs. Args: chat_log: Pandas DataFrame containing chat logs. user_id_col: Name of the column containing the user ID. Defaults to "ID". """ifnotisinstance(chat_log,pd.DataFrame):raiseValueError(f"Expected chat_log to be a pd.DataFrame, got {type(chat_log)}")self.chat_log=chat_logself.user_id_col=user_id_col
[docs]defload(self)->List[Document]:"""Load all chat messages."""result=[]for_,rowinself.chat_log.iterrows():user_id=row[self.user_id_col]metadata=row.to_dict()metadata.pop(self.user_id_col)result.append(Document(page_content=user_id,metadata=metadata))returnresult