Logisx / AI-Senior

AI Assistant, an end-to-end LLMOps project, fine-tuned to provide support for coding and design questions based on the latest trends in the industry.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Logo

πŸ“‹ Table of Contents

πŸš€ Your personal Senior Assistant

Introducing AI Senior!
Your friendly AI companion offering experienced guidance for all your tech queries. From coding hiccups to tech dilemmas, AI Senior has your back. Simplify your tech journey with AI Senior by your side!

Work is in progress... πŸ—οΈ

Python PyTorch JupyterLab Bytewax AWS Qdrant LLMs HuggingFace Comet Beam LangChain REST Gradio Docker CI/CD Terraform

Architecture

🧰 Tech Stack

  • ML: Python, PyTorch, JupyterLab
  • Data Services: Bytewax, AWS, Qdrant
  • Training: LLMs, HuggingFace, Comet, Beam
  • ChatBot & UI: LangChain, REST-API, Gradio
  • Deployment: Docker, Terraform

πŸ“ Project structure

🚧 Work in progress 🚧

|   .beamignore
|   .env
|   .gitignore                  <- Specify files to be ignored by git
|   LICENSE                     <- Project license
|   Makefile                    <- Makefile with commands like `make data` or `make train`
|   README.md                   <- The top-level README for developers using this project.
|   requirements.txt            <- The requirements file for reproducing the analysis environment, e.g. generated with `pip freeze > requirements.txt`
|   setup.py                    <- Make this project pip installable with `pip install -e`
|   test_environment.py
|   tox.ini
|   .venv
|                   
+---assets                       <- Store public assets for readme file
|   |   architecture.png
|   \---logo-color_cropped.png
|               
+---config                       <- Stores pipelines' configuration files
|       data-params.yaml
|       inference-params.yaml
|       model-params.yaml
|       paths.py
|       
+---data
|   |   .gitkeep
|   |   
|   +---external                 <- Data from third party sources.
|   |       .gitkeep
|   |       
|   +---interim                  <- Intermediate data that has been transformed.
|   |       .gitkeep
|   |       
|   +---processed                <- The final, canonical data sets for modeling.
|   |   |   .gitkeep
|   |   |   documents_newsapi_news.json
|   |   |   
|   |   \---fine-tuning
|   |           testing_data.json
|   |           training_data.json
|   |           
|   \---raw                      <- The original, immutable data dump.
|           .gitkeep
|           
+---docs
|       commands.rst
|       conf.py
|       getting-started.rst
|       index.rst
|       make.bat
|       Makefile
|       
+---logs
|       .gitkeep
|       running_logs.log
|       
+---models                      <- Trained and serialized models, model predictions, or model summaries
|   |   .gitkeep
|   |   
|   \---cache
|           .gitkeep
|           
+---notebooks                   <- Jupyter notebooks for research.
|       .gitkeep
|       research-01-data-api-usage.ipynb
|       
+---references
|       .gitkeep
|       
+---reports
|   |   .gitkeep
|   |   
|   \---figures
|           .gitkeep
|           
+---src                          <- Source code for use in this project.
|   |   __init__.py             <- Makes src a Python module
|   |   
|   +---data                    <- Scripts to download or generate data
|   |   |   .gitkeep
|   |   |   generate_training_data.py
|   |   |   run_data_pipeline.py
|   |   |   __init__.py
|   |   |   
|   |   +---modules
|   |   |       data_preprocessor.py
|   |   |       newsapi_data_loader.py
|   |   |       qdrant_data_uploader.py
|   |   |       training_data_generation.py
|   |   |       __init__.py
|   |   |       
|   |   \---pipeline
|   |           data_download.py
|   |           data_preprocessing.py
|   |           data_upload.py
|   |           
|   +---models                  <- Scripts to train models and then use trained models to make predictions
|   |   |   .gitkeep
|   |   |   requirements.txt
|   |   |   run_inference_pipeline.py
|   |   |   run_training_pipeline.py
|   |   |   steps.txt
|   |   |   train_run.py
|   |   |   __init__.py
|   |   |   
|   |   \---training_pipeline
|   |       |   constants.py
|   |       |   metrics.py
|   |       |   models.py
|   |       |   __init__.py
|   |       |   
|   |       +---api
|   |       |       inference.py
|   |       |       training.py
|   |       |       __init__.py
|   |       |       
|   |       +---data
|   |       |       qa.py
|   |       |       __init__.py
|   |       |       
|   |       \---prompt_templates
|   |               prompter.py
|   |               
|   \---utils                  <- Utility functions and classes
|       |   computation_management.py
|       |   configuration_management.py
|       |   file_management.py
|       |   __init__.py
|       |   
|       \---logging
|               __init__.py
|               
\---src.egg-info

πŸ’» Run Locally

  1. Clone the project
  git clone https://github.com/Logisx/AI_Senior.git
  1. Go to the project directory
  cd my-project
  1. Install dependencies
  pip install -r requirements.txt

🚧 Work in progress 🚧

πŸ—ΊοΈ Roadmap

🚧 Work in progress 🚧

βš–οΈ License

MIT License

πŸ”— Links

linkedin

πŸ“š References & Citations

Inspired by awesome Hands-on LLMs Course made by Paul Iusztin, Pau Labarta Bajo and Alexandru Razvant

Check it out!

About

AI Assistant, an end-to-end LLMOps project, fine-tuned to provide support for coding and design questions based on the latest trends in the industry.

License:MIT License


Languages

Language:Jupyter Notebook 57.4%Language:Python 40.0%Language:Makefile 2.7%