Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added README. Fixes issue #13 #15

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

Conversation

imshrishk
Copy link

->Eases the install and use process.
->Gives a glimpse of the different prompts used.

@imshrishk imshrishk mentioned this pull request Jan 27, 2025
Copy link
Member

@chimosky chimosky left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@kshitijdshah99 please review this and make changes where you think they're needed.

@@ -0,0 +1,150 @@
# Sugar AI: Child-Friendly AI Assistant & Python Coding Helper

A dual-purpose AI system combining child-friendly question answering with Python coding assistance using Retrieval-Augmented Generation (RAG).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you mean by "dual-purpose"?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

By dual purpose, I meant child-friendly and a coding assistant. Is that wrong?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It wasn't clear at first what it was, it also doesn't just help with Python, it specifically can help with Sugar and GTK related questions.

### 🌟 Child-Friendly QA (main.py)
- Answers children's questions using simple language
- Automatically explains complex terms for 3-year-old understanding
- GPT-2 model with response limit (60 words)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're no longer using this, see #12 and #11.

- Safety-focused content generation

### 💻 Python Coding Assistant (rag_agent.py)
- Specialized in Pygame, GTK+, and Sugar Toolkit
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sugar Toolkit Gtk3, because there's a Sugar Toolkit and that's not what this specializes on.

Just noticed that the docs have it named that way, but the content is different.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should I change it to
-Uses Sugar Toolkit and Gtk3

I'm not sure about this so please help

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Sugar Toolkit Gtk3" not "Sugar Toolkit and Gtk3", one refers to sugar-toolkit-gtk3 and the other refers to sugar-tookit and Gtk3.

Comment on lines +49 to +74
### Child-Friendly QA
```python
from main import AI_Test

assistant = AI_Test()
response = assistant.generate_bot_response("Why is the sky blue?")
print(response)
```

### Coding Assistant
Start the assistant:
```bash
python rag_agent.py
```

Example session:
```
> How to create a window in GTK+3?
Let's think step by step.
1. Import Gtk module
2. Create Window object
3. Set title and size
4. Connect delete event
5. Show all elements
...
```
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seeing as this is supposed to be an API, it's not to be used this way, not even when developing.

For local development, you'd have a local server running which you can then send requests to and get a response.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should I just remove this Usage part or just write use as an API? I have not worked on this project and my understanding comes from just reading the code and documentation so I might be wrong.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can remove this part for now.

@kshitijdshah99 might write this better.

Comment on lines +76 to +94
## Project Structure
```
sugar-ai/
├── main.py - Child QA with GPT-2
├── rag_agent.py - Coding assistant with RAG
├── docs/ - Documentation PDFs
└── requirements.txt - Dependency list
```

## Configuration

### Document Paths (rag_agent.py)
```python
document_paths = [
'./docs/Pygame Documentation.pdf',
'./docs/Python GTK+3 Documentation.pdf',
'./docs/Sugar Toolkit Documentation.pdf'
]
```
Copy link
Member

@chimosky chimosky Jan 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should come under a contributing section, here it just seems like bloat and a bit out of place.

Comment on lines +116 to +123
## Dependencies

### Core Technologies
- Transformers (Hugging Face)
- LangChain
- FAISS (Vector Store)
- Ollama
- PyMuPDF (PDF processing)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems like bloat because it focuses on just one part of the API, while the other one is ignored.

We're yet to trim our requirements.txt at the moment but this just focuses on one side, I'd rather it not exist that focus on one side.

@kshitijdshah99
Copy link
Contributor

@kshitijdshah99 please review this and make changes where you think they're needed.

Sure I'll make changes soon.

@kshitijdshah99
Copy link
Contributor

@chimosky @pikurasa I feel there's no need to mention dependencies, document paths and some other things here. I am planning to implement following things in my PR.

  1. Intro what Sugar AI is?
  2. What Sugar AI consists of and purpose of those chatbot and AI-assistant including RAG
  3. Code and file structure as shown above
  4. How to setup
  5. Something about docker and Fastapi to get an abstract idea about that how would things integrate.

Is there anything else needed to be added??

@pikurasa
Copy link
Contributor

Is there anything else needed to be added??

I think that's a sufficient start. Go ahead and make write those up.

@chimosky
Copy link
Member

chimosky commented Feb 3, 2025

@chimosky @pikurasa I feel there's no need to mention dependencies, document paths and some other things here. I am planning to implement following things in my PR.

1. Intro what Sugar AI is?

2. What Sugar AI consists of and purpose of those chatbot and AI-assistant including RAG

3. Code and file structure as shown above

4. How to setup

5. Something about docker and Fastapi to get an abstract idea about that how would things integrate.

Is there anything else needed to be added??

If you've used things from this PR, please maintain authorship.

@kshitijdshah99
Copy link
Contributor

I got your point but what do you expect me to do for maintaining it. You want me to mention this PR in my PR?

@chimosky
Copy link
Member

chimosky commented Feb 4, 2025

I got your point but what do you expect me to do for maintaining it. You want me to mention this PR in my PR?

I said "maintain authorship", that means maintain the original commit, with an additional commit that has your changes.

If you used things from this PR, it makes sense to give credit to the original author.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants