An open API service indexing awesome lists of open source software.

https://github.com/benderscript/netvision

Network Topology Image Analsysis
https://github.com/benderscript/netvision

cisco gpt-4-vision images networking topology vision

Last synced: 11 months ago
JSON representation

Network Topology Image Analsysis

Awesome Lists containing this project

README

          

# NetVision - A GenAI Application for Networking Topology Image Analysis

This application leverages Streamlit and OpenAI's GPT-4V model to analyze networking topology images. It provides a user-friendly interface that allows users to upload images of network topologies and receive insights and analyses generated by the GPT-4V model.

## Features

- Upload interface for network topology images.
- Real-time analysis of images using OpenAI's GPT-4V.
- Interactive chat interface to discuss and query network topology features.
- Session state management to maintain interaction history.

## Application Demo

See the application in action:

![Network Topology Visualization](./resources/gifs/netvision.gif)

## Prerequisites

- Python 3.12+
- Poetry for dependency management
- An OpenAI API key or Azure OpenAI deployment with vision support

## Installation

### Setting Up the Environment

1. **Clone the repository:**
```bash
git clone https://your-repository-url
cd your-project-directory
```

2. **Install dependencies using Poetry:**
```bash
poetry install
```

### Configuring the OpenAI API Key

1. **Create a `.env` file in the root directory of the project and add your OpenAI API key:**
```
OPENAI_API_KEY=your_openai_api_key
```

2. Alternatively create a .env.azure and add your information such as:
```bash
AZURE_OPENAI_API_KEY=
AZURE_OPENAI_ENDPOINT=
AZURE_OPENAI_API_VERSION=2024-02-15-preview
AZURE_OPENAI_DEPLOYMENT=
```

## Running the Application

To run the Streamlit application, use Poetry to handle the environment:
```bash
poetry run streamlit run main.py
```
Navigate to `http://localhost:8501` in your web browser to interact with the application. Upload your network topology images to receive detailed analyses and insights.

## Contributing

Contributions are welcome! Please read `CONTRIBUTING.md` for how to contribute to this project.

## License

This project is licensed under the Apache-2.0 - see the [LICENSE](LICENSE.md) file for details.

## Acknowledgments

- Streamlit for providing an excellent platform to build interactive apps.

## Support

For support, open an issue in the GitHub repository or contact the project maintainers.