Skip to content

havis-icpl/AIDevOps

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About AIDevOps

Overview

The AI DevOps is an AI-powered security guidance system designed to assist developers in generating secure pipeline code. It leverages Natural Language Processing (NLP), vector-based semantic search, and AI-driven recommendations to generate the Secure and industry standard CI/CD pipelines for any CI/CD tools like Jenkins, Azure DevOps, Gitlab CI, Github Actions etc..

Components

1. User Interface (Streamlit UI)

  • Provides an interactive web-based interface for developers.
  • Enables querying of security-related concerns.

2. Processing Layer

  • Text Extraction: Extracts data from security best-practice documents.
  • NLP Processing:
    • Performs sentence segmentation to break down documents into meaningful parts.
    • Generates embeddings to represent text for semantic search.

3. Vector Database (Qdrant)

  • Stores embeddings along with metadata for efficient retrieval.
  • Supports semantic search to find relevant security information.

4. Retrieval-Augmented Generation (RAG)

  • Enhances response accuracy by retrieving the most relevant security insights from stored data.
  • Provides contextual responses based on developer queries.

5. Azure OpenAI Integration

  • Dynamic Prompt Generation:
    • Combines user queries with retrieved security content.
    • Generates AI-powered security-aware recommendations.

Workflow

  1. The developer submits a security-related query via the Streamlit UI.
  2. The Processing Layer extracts and processes security knowledge from internal documents.
  3. The Qdrant vector database stores and retrieves relevant information using semantic search.
  4. The RAG module fetches the most relevant security guidance.
  5. The Azure OpenAI model enhances the response by generating context-aware, AI-driven security recommendations.
  6. The final response is displayed to the developer, helping ensure secure coding practices.

Key Benefits

  • AI-Driven Security Guidance: Enhances security awareness in development workflows.
  • Efficient Knowledge Retrieval: Uses vector search to provide precise security insights.
  • User-Friendly Interface: Enables seamless interaction for developers.
  • Proactive Vulnerability Mitigation: Encourages secure coding practices by offering actionable recommendations.

Setup Guide for Developers

To set up DevSecOps Co-Pilot in your local development environment, follow these steps:

  1. Fork and Clone the Repository
git clone https://github.com/YOUR_GITHUB_USERNAME/DevSecOps_CoPilot.git  
cd DevSecOps_CoPilot  
  1. Create and Activate a Virtual Environment

On macOS/Linux:

python3 -m venv venv  
source venv/bin/activate  

On Windows:

python -m venv venv  
venv\Scripts\activate  
  1. Install Dependencies
pip install -r requirements.txt  
  1. Run the Streamlit Application
streamlit run streamlit_app.py

Contributing

We welcome contributions to DevSecOps_CoPilot! If you'd like to improve the project, follow these steps:

Fork the repository.

  1. Create a new branch (git checkout -b feature-branch).
  2. Commit your changes (git commit -m 'Add new feature').
  3. Push your branch to your fork (git push origin feature-branch).
  4. Open a pull request to the main repository.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

Acknowledgments

Thanks to the community and contributors for maintaining the open-source libraries used in this project. Special thanks to the developers of the GenAI, NLP, and Vector Database technologies used to power this platform.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 63.6%
  • Groovy 36.1%
  • Dockerfile 0.3%