This project provides a Retrieval-Augmented Generation (RAG) system for summarizing and analyzing focus group transcripts. The system uses a combination of LangChain, Ollama's Llama model, and a Chroma vector store to retrieve relevant information and generate summaries based on the input data.
- Upload Focus Group Data: Upload CSV files containing focus group transcripts.
- Query and Summarization: Ask questions related to the topics of the transcripts and receive relevant summaries.
- Feedback Collection: Collect user feedback on responses to improve the system's accuracy.
- Visualization: Visualize the collected feedback with interactive charts.
To run the project, you'll need the following dependencies. Install them using:
pip install -r requirements.txt
- Clone the repository:
git clone <repository-url>
cd <project-folder>
- Create a virtual environment:
python3 -m venv venv
- Activate the virtual environment:
- On MacOS/Linux:
source venv/bin/activate
- On Windows
venv\Scripts\activate
- Install dependencies:
pip install -r requirements.txt
- Run the Streamlit app:
streamlit run focus_group_summariser_ollama_feedback_app.py
This will launch the app in your web browser.
- Upload CSV: Upload a CSV file containing your focus group transcripts with columns
transcript
andtopic_name
. - Select a Topic: Choose a topic from the dropdown (optional).
- Ask a Question: Type in your question or request a summary.
- Get Feedback: After receiving an answer, you can rate the response and leave feedback.
- View Collected Feedback: Toggle the visibility of feedback and view related statistics in the last 4 weeks.
After interacting with the app, users can provide feedback on the responses to improve the system. Feedback is stored in a CSV file for further analysis and visualization.
- Streamlit: For building the web interface.
- LangChain: For integrating language models with the RAG system.
- Ollama: For the Llama model powering the summarization process.
- Chroma: A vector store for efficient retrieval of information.
- Matplotlib: For feedback visualization.
Feel free to fork this project and submit issues or pull requests. Contributions are welcome!
This app requires the download and local installation/hosting of Ollama in order to use the Llama model. Readers can access these models for free by visiting https://ollama.com/.