## 🤖 Your First LLM App
In this repository, we'll walk you through the steps to create a Large Language Model (LLM) application using Chainlit, then containerize it using Docker, and finally deploy it on Huggingface Spaces.
Are you ready? Let's get started!
🏗️ Building Your First LLM App
1. Clone [this](https://github.com/AI-Maker-Space/Beyond-ChatGPT/tree/main) repo.
``` bash
git clone https://github.com/AI-Maker-Space/Beyond-ChatGPT.git
```
2. Navigate inside this repo
``` bash
cd Beyond-ChatGPT
```
3. Install the packages required for this python envirnoment in `requirements.txt`.
``` bash
pip install -r requirements.txt
```
4. Open your `.env` file. Replace the `###` in your `.env` file with your OpenAI Key and save the file.
``` bash
OPENAI_API_KEY=sk-###
```
5. Let's try deploying it locally. Make sure you're in the python environment where you installed Chainlit and OpenAI. Run the app using Chainlit. This may take a minute to run.
``` bash
chainlit run app.py -w
```
🐳 Containerizing our App
1. Let's build the Docker image. We'll tag our image as `llm-app` using the `-t` parameter. The `.` at the end means we want all of the files in our current directory to be added to our image.
``` bash
docker build -t llm-app .
```
2. Run and test the Docker image locally using the `run` command. The `-p`parameter connects our **host port #** to the left of the `:` to our **container port #** on the right.
``` bash
docker run -p 7860:7860 llm-app
```
3. Visit http://localhost:7860 in your browser to see if the app runs correctly.
🚀 Deploying Your First LLM App
1. Let's create a new Huggingface Space. Navigate to [Huggingface](https://huggingface.co) and click on your profile picture on the top right. Then click on `New Space`.