Welcome to the Georgian GenAI boot camp repository. This repository contains all the demos we used during our bootcamps. Content for the latest boot camp can be found under the notebooks directory. A copy of the content from previous boot camps can be found in the archive.
Our bootcamps usually consist of a few days of tutorials followed by a hackathon. At the end of the hackathon our goal was for participants to have:
- A deeper understanding of the opportunities GenAI unlocks.
- A theoretical understanding of the latest GenAI technologies.
- A practical understanding of the latest GenAI technologies.
- Implemented at least one end-to-end application using GenAI.
-
This repository requires you to have installed poetry as a dependency manager. Please follow the instructions to install poetry from here.
-
Clone this repository and
cd genai-bootcamp -
Environment management options
a) Poetry:
poetry shellb) Conda: create and activate a conda env for this project:
conda create -n genai-bootcamp python=3.10
conda activate genai-bootcamp- Install package
poetry install
- Setup private environment files
Paste the .env file and google-api.json file provided to you into root directory of this repository.
Note: DO NOT COMMIT THIS FILE OR SHARE IT ANYWHERE!
Note: If you have trouble setting up Poetry, you should be able to skip it and just run pip install -r requirements.txt instead. Please reach out to us or create an issue if this does not work.
Note: Some operating systems might rename .env to env. The period at the front is important as all the notebooks expect this. Please rename the file if you run into this issue.
Below you can see the agenda we followed for our boot camp in October 2023.
- Azin Asgarian, AI Technical Lead at Georgian
- David Emerson, Applied Machine Learning Scientist at Vector Institute
- Akash Saravanan, Applied Research at Georgian
- Akash Saravanan, Applied Research at Georgian
- Pashootan Vaezipoor, Machine Learning Researcher at Georgian
- Erik Saarenvirta, Sr. Customer Engineer, Data & AI at Google
- Asmita Usturge, Senior Data Scientist and Azure Cloud Lead at Microsoft
- Rohit Saha, Applied Research Scientist at Georgian
- Akash Saravanan, Applied Research at Georgian
- Rodrigo Ceballos, Machine Learning Engineer at Georgian
- Kyryl Truskovskyi, Machine Learning Engineer at Georgian
- Maria Ponomarenko, MLOps Intern at Georgian
- Angeline Yasodhara, Applied Research Scientist at Georgian
- Mike Brosseau, Director, Product Management at Private AI
- Rodrigo Ceballos, Machine Learning Engineer at Georgian
- Kacper Lukawski, Developer Advocate at Qdrant
- Vedanuj Goswami, Research Engineer at Meta AI
- Amber Roberts, ML Growth Lead at Arize AI
- Claire Longo, Head of ML Solutions Engineering at Arize AI
To be able to run the notebooks here, you'll need access to API keys for all the different services. Fear not, we've provided you with all the API keys you need. Just download the files we've sent to you and place them in the root of this directory.
To be able to run the notebooks here, you'll need access to API keys for all these services. Read on for instructions on how to set up each of the APIs that you need. Many of these APIs (such as OpenAI) will charge you based on usage, so you will need to set up billing.
Note that to run the examples, you only need to have one LLM set up. So if you already have access to an OpenAI key, you could run all the notebooks with it (excluding the Google/HuggingFace examples). The PrivateAI API key is used only for the PrivateAI demo (notebooks/extra_resources/PrivateAI Demo.ipynb). We use AnyScale to set up LLaMa 2 access.
- Create a
.envfile. In the root directory of this repo (I.E., the same directory this readme is in), create a.envfile. Ensure that the period is present at the start of the filename. Within this file, place the following text:
OPENAI_API_KEY=""
GOOGLE_APPLICATION_CREDENTIALS="../../google-api.json"
ANYSCALE_API_BASE="https://api.endpoints.anyscale.com/v1"
ANYSCALE_API_KEY = ""
PRIVATE_AI_API_KEY = ""
AWS_ACCESS_KEY_ID=""
AWS_SECRET_ACCESS_KEY=""
AWS_DEFAULT_REGION="us-east-1"
- OpenAI: Create an OpenAI account (or login) and visit the API Keys page. Generate an API key here and place it in the
.envfile you created above. These examples were designed with GPT-4. If you do not have access to it, please request access through the waitlist. Or alternatively, you can usegpt-3.5-turboinstead. - Google: Follow steps 1 through 4 detailed in this link. Once you have downloaded the service account key from step 4, place it in the root directory of this repository and rename it to
google-api.json. - AnyScale: Once you have billing setup, you can get your API keys from the credentials page.
- PrivateAI: Request an API key through this form. Add it to the
.envfile above. - AWS Bedrock (for Claude): Follow the instructions on this page to obtain your AWS keys. Alternatively, you can authenticate via boto3 if you have AWS Bedrock access within your organization.
- You should now have all fields in the
.envfile setup and ready to go! You can now proceed with the installation steps below.
We use poetry as our dependency manager. The link above has great documentation but there is a TL;DR.
- Install the package:
poetry install - Add a dependency:
poetry add <python-lib> - Where are dependencies specified?
pyproject.tomlinclude the high level requirements. The latests exact versions installed are inpoetry.lock.
- If for some reason
poetry installfails to install a library try topip install <lib>and then runpoetry installagain. This solves 95% of these errors.
- GenAI Interface Cookiecutter: A cookie cutter template for you to start off with a basic UI using streamlit.
- Georgian AI Library (GAL): Our library containing overviews of AI techniques.
