Skip to content

Commit 7e7727f

Browse files
authored
gsoc-week06-diwangshu (#305)
1 parent 68d6972 commit 7e7727f

File tree

1 file changed

+99
-0
lines changed

1 file changed

+99
-0
lines changed
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
---
2+
title: "GSoC ’25 Week 06 Update by Diwangshu Kakoty"
3+
excerpt: "Reflection Learning Widget in Music Blocks"
4+
category: "DEVELOPER NEWS"
5+
date: "2025-07-13"
6+
slug: "2025-07-13-gsoc-25-diwangshu-week06"
7+
author: "@/constants/MarkdownFiles/authors/diwangshu-kakoty.md"
8+
tags: "gsoc25,sugarlabs,week06,AI,midterm"
9+
image: "assets/Images/GSOC.png"
10+
---
11+
12+
<!-- markdownlint-disable -->
13+
14+
# Week 06 Progress Report by Diwangshu Kakoty
15+
16+
**Project:** [AI Tools for Reflection](https://github.com/Commanderk3/reflection_ai)
17+
**Mentors:** [Walter Bender](https://github.com/walterbender), [Sumit Srivastava](https://github.com/sum2it)
18+
**Assisting Mentors:** [Devin Ulibarri](https://github.com/pikurasa), [Ajeet Pratap Singh](https://github.com/apsinghdev)
19+
**Reporting Period:** 2025-07-06 - 2025-07-13
20+
21+
---
22+
23+
## Progress Summary
24+
25+
The first six weeks of GSoC'25 have been highly productive, with several key milestones already accomplished:
26+
27+
- Developed a Retrieval-Augmented Generation (RAG) pipeline.
28+
- Built a fully functional Streamlit application for testing.
29+
- Implemented a multi-agent chat model.
30+
- Experimented with reasoning models and explored their integration.
31+
- Created API endpoints for backend functionality.
32+
- Developed a "reflection" widget in Music Blocks.
33+
- Added save and upload capabilities to the Streamlit app.
34+
35+
## Goals for This Week
36+
37+
- **Goal 1:** Add upload and download of session state in Streamlit app.
38+
- **Goal 2:** Add code conversion function in Streamlit app.
39+
- **Goal 3:** Implement periodic summary generation.
40+
- **Goal 4:** Fix bugs occured by these changes.
41+
42+
---
43+
44+
## This Week’s Achievements
45+
46+
1. **Add upload and download of session state in Streamlit app**
47+
- Users can now conveniently save their conversations by downloading them. If they wish to resume at a later time, they can simply upload the saved session to continue where they left off.
48+
49+
<a href="https://ibb.co/XZB7HJMG"><img src="https://i.ibb.co/zhcXdfDt/image.png" alt="image" border="0"></a>
50+
51+
2. **Add code conversion function in Streamlit app**
52+
- Users can now copy their Music Blocks project code and paste it into the app. The app then uses a conversion algorithm developed by [Omsuneri](authors/om-santosh-suneri) to generate an equivalent flowchart, which is easier for the LLM to interpret.
53+
54+
- This flowchart is sent to the reasoning_llm, which produces the algorithm, a summary, and the purpose of the code. These outputs are then utilized by lightweight models.
55+
56+
3. **Implement periodic summary generation**
57+
- Based on my mentor's suggestion, I am implementing automatic periodic summary generation instead of relying on a manual button. This approach keeps the conversation seamless and allows users to take notes as they go.
58+
59+
- This feature is still a work in progress.
60+
61+
4. **Fix bugs occured by these changes**
62+
- This week's work focused primarily on debugging. There were issues with the download button and updating the session state after file uploads. Further details on these challenges will be covered in the next section.
63+
64+
---
65+
66+
## Challenges & How I Overcame Them
67+
68+
- **Challenge :** I encountered challenges in refreshing the session states upon file upload. The expected behavior includes updating the message history, selected mentor, and user interface, but these updates weren't occurring properly.
69+
70+
**Solution :** Streamlit reruns the entire script each time a button is clicked — a core behavior of the framework. Many of the issues I faced were due to the improper ordering of session state declarations, which I have now resolved. Additionally, I enhanced the download functionality to include more comprehensive information in the saved file, such as the mentor's name, the message history, and the session title.
71+
72+
---
73+
74+
## Key Learnings
75+
76+
- I am becoming more experienced as a Streamlit developer.
77+
78+
---
79+
80+
## Next Week’s Roadmap
81+
82+
- Implement a widget with functionality to save conversations, session summaries, and analytical insights.
83+
- Finalize the auto-summary generation feature.
84+
- Deploy the FastAPI server on AWS.
85+
86+
---
87+
88+
## Resources & References
89+
90+
- **Repository:** [reflection_streamlit](https://github.com/Commanderk3/reflection_streamlit)
91+
- **Streamlit App:** [Reflection App](https://reflectionapp-2yoxtvn6sknvktme2zorvq.streamlit.app/)
92+
93+
---
94+
95+
## Acknowledgments
96+
97+
Thank you to my mentors, the Sugar Labs community, and fellow GSoC contributors for ongoing support.
98+
99+
---

0 commit comments

Comments
 (0)