StreamSensei is an advanced ticket analysis tool designed to process and analyze large volumes of help desk tickets efficiently. It uses AI-powered analysis to extract insights, categorize issues, and provide summaries of ticket content.
- Asynchronous processing of large ticket datasets
- Customizable analysis types
- Support for both OpenAI and Azure OpenAI APIs
- Interactive command-line interface
- Streamlit web application for easy use
- Detailed logging and error handling
- Configurable output formats
- Python 3.10+
- OpenAI API key or Azure OpenAI API access
-
Clone the repository:
git clone https://github.com/yourusername/StreamSensei.git cd StreamSensei
-
Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install the required packages:
pip install -r requirements.txt
-
Set up your environment variables: Create a
.env
file in the root directory and add your API keys:OPENAI_API_KEY=your_openai_api_key # Or for Azure OpenAI: # AZURE_OPENAI_API_KEY=your_azure_openai_api_key # AZURE_OPENAI_API_BASE=your_azure_openai_endpoint # AZURE_OPENAI_API_VERSION=your_api_version
Run the main script:
python main.py
Follow the interactive prompts to:
- Select your input file
- Choose columns for analysis
- Select analysis types
- Review job details and confirm execution
To run the Streamlit app:
streamlit run streamlit_app.py
Navigate to the provided local URL in your web browser to use the graphical interface.
You can modify the config.py
file to adjust various settings such as:
- API type (OpenAI or Azure)
- Model selection
- Batch processing parameters
- Output file naming conventions
main.py
: Command-line interface for the applicationstreamlit_app.py
: Streamlit web applicationapp/
: Core application logicanalyzer.py
: Ticket analysis implementationconfig.py
: Configuration managementlogging_config.py
: Logging setupmenu.py
: CLI menu functionspostprocessor.py
: Output processingpreprocessor.py
: Input data preprocessingprompts.py
: AI prompt generationutils.py
: Utility functions
tests/
: Unit tests
Contributions to StreamSensei are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.