Skip to content

Commit 825dc24

Browse files
authored
GSoC Week 10 report by Mebin Thattil (#381)
1 parent 2226631 commit 825dc24

File tree

1 file changed

+84
-0
lines changed

1 file changed

+84
-0
lines changed
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
---
2+
title: "GSoC ’25 Week 10 Update by Mebin J Thattil"
3+
excerpt: "Deploying SugarAI"
4+
category: "DEVELOPER NEWS"
5+
date: "2025-08-10"
6+
slug: "2025-08-10-gsoc-25-mebinthattil-week10"
7+
author: "@/constants/MarkdownFiles/authors/mebin-thattil.md"
8+
tags: "gsoc25,sugarlabs,week10,mebinthattil,speak_activity"
9+
image: "assets/Images/GSOCxSpeak.png"
10+
---
11+
12+
# Week 10 Progress Report by Mebin J Thattil
13+
14+
**Project:** [Speak Activity](https://github.com/sugarlabs/speak)
15+
**Mentors:** [Chihurumnaya Ibiam](https://github.com/chimosky), [Kshitij Shah](https://github.com/kshitijdshah99)
16+
**Assisting Mentors:** [Walter Bender](https://github.com/walterbender), [Devin Ulibarri](https://github.com/pikurasa)
17+
**Reporting Period:** 2025-08-03 - 2025-08-10
18+
19+
---
20+
21+
## Goals for This Week
22+
23+
- **Goal 1:** Setup AWS for LLM deployment - SugarAI 
24+
25+
---
26+
27+
## This Week’s Progress
28+
29+
### **1. Deploy SugarAI**
30+
31+
There is only one final part left in the refactor of the Speak Activity, and those are the LLM powered features. For this we need to have the LLM hosted somewhere.
32+
So it was time to deploy SugarAI on our AWS.
33+
34+
So here is what I did:
35+
- Spin up an EC2 instance that uses g5 large GPUs. This instance is being run under my AWS-Sugarlabs account. So if someone is reading this as documentation and there is an issue with the service and you need to reach out to me, do so by shooting me a mail at : [[email protected]](mailto:[email protected]).
36+
- Ran the following code to setup the instance and pull SugarAI:
37+
```bash
38+
# Add Docker's official GPG key:
39+
apt-get update -y
40+
apt-get install -y ca-certificates curl
41+
install -m 0755 -d /etc/apt/keyrings
42+
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
43+
chmod a+r /etc/apt/keyrings/docker.asc
44+
45+
# Add the repository to Apt sources:
46+
echo \
47+
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
48+
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
49+
tee /etc/apt/sources.list.d/docker.list > /dev/null
50+
apt-get update -y
51+
apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
52+
53+
groupadd docker
54+
usermod -aG docker $USER
55+
systemctl enable docker.service
56+
systemctl enable containerd.service
57+
58+
git clone https://github.com/sugarlabs/sugar-ai.git && cd sugar-ai
59+
docker build -t sugar-ai .
60+
docker run --gpus all -it --rm sugar-ai
61+
```
62+
- This runs the docker container and can be accessed locally on `port 8000`.
63+
- The inbound security rules of the EC2 were set to allow incoming requests only on port `443(HTTPS)` and `22(SSH)`.
64+
- After this I locally tested if the API was working. It was, but only locally on the EC2 for now.
65+
- In order to make it publically available I would have to create a nginx proxy from `port 8000` to `port 443` and also get SSL certificates.
66+
- I then created a static IP using AWS's elastic IP so we could create an `A record` for this service, which would be needed to issue the SSL certificate.
67+
68+
69+
---
70+
71+
## Next Week’s Roadmap
72+
73+
- Nginx proxy pass
74+
- SSL Certificates
75+
- A record creation and launch of [ai.sugarlabs.org](https://ai.sugarlabs.org)
76+
- Google OAuth and Github OAuth for login
77+
78+
---
79+
80+
## Acknowledgments
81+
82+
Thank you to my mentors, the Sugar Labs community, and fellow GSoC contributors for their ongoing support.
83+
84+
---

0 commit comments

Comments
 (0)