Gamma-Software / llm_qualitative_data_analysis

Qualitative Data Analysis done by AI (or LLMs). πŸ–₯️ Streamlit & πŸ”— Langchain
23 stars 4 forks source link
ai langchain langchain-app langchain-python large-language-models llm llms qualitative-analysis qualitative-data-analysis qualitative-research streamlit streamlit-application

Qualitative Data Analysis πŸ“

This is a tool to help you do your qualitative data analysis. 🧐 This can for instance take your transcripts and generate codes and themes for you πŸ’‘. It summarizes your data and can help you get insights on your data. πŸ“Š

πŸ”¬ Tech stack

The Qualitative Data Analysis uses LLMs or Large Language Models to generate the summary / codes / themes and classify them. πŸ€– The application is developped with Python.

Python Libraries

This tool is powered by libraries:

Getting started 🏁

Requirements

You need to have Python installed on your computer. Choose the latest version of Python 3. 🐍. The version tested is 3.8.10.

Configuration

Rename the .streamlit/secrets_template.toml file to .streamlit/secrets.toml and edit it to add your own configuration about langchain, langsmith and openai api key.

Installation

Clone the repository and install the dependencies:

git clone
cd qualitative-data-analysis
pip install -r requirements.txt

Run the application

streamlit run source/qualitative_analyse_agent.py

Usage πŸ“–

The usage is pretty simple. πŸ€“

  1. Upload your transcripts: You can upload your transcripts from the sidebar πŸ“‚.
    • Generate transcripts summary: In the Raw data section, you can generate a summary of your data individually.
  2. Enter your research question: You can enter your research question. This will be used to generate codes and themes. ❓
  3. Generate codes and themes: You can now click on the button to generate codes and themes. This will generate codes and themes based on your research question. πŸ’‘

Langsmith integration πŸ”—

You can use langsmith to monitor your application and get insights on how it is used. πŸ“Š

Edit the .streamlit/secrets.toml file and add the following lines:

[langsmith]
tracing = true
api_url = "https://api.smith.langchain.com"
api_key = "your key here"
project = "your project here"

Diagrams

Libs

TODO Show a diagram with the interaction between libs

LLM chain

TODO show the LLM Chaining

Features ✨

Limitations ⚠️

Improvements πŸš€

Background πŸ§‘β€πŸŽ“

My name is Valentin Rudloff and I'm a Engineer. I make stuff in various fields. πŸ‘¨β€πŸ”§ For my wife's memoire, she needed a tool to help her do a Qualitative Data Analysis on transcripts she conducted. πŸ“š LLMs are really good at understanding human semantics and thus perform a Qualitative Data Analysis. 🧠 This application helped her get almost an instant result, and I'm pretty sure this can help you as well. πŸ‘

Acknowledgements πŸ™

The application and the LLM prompt are greatly inspired by Dr. Philip Adu, Ph.D video Master Qualitative Data Analysis with ChatGPT: An 18-Minute Guide.

Made with ❀️ by Valentin Rudloff If you want to help me create other stuff like this you can buy me β˜•