-
Notifications
You must be signed in to change notification settings - Fork 8
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
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this 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). |
There was a problem hiding this comment.
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"?
There was a problem hiding this comment.
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?
There was a problem hiding this comment.
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) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
- Safety-focused content generation | ||
|
||
### 💻 Python Coding Assistant (rag_agent.py) | ||
- Specialized in Pygame, GTK+, and Sugar Toolkit |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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
There was a problem hiding this comment.
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.
### 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 | ||
... | ||
``` |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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.
## 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' | ||
] | ||
``` |
There was a problem hiding this comment.
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.
## Dependencies | ||
|
||
### Core Technologies | ||
- Transformers (Hugging Face) | ||
- LangChain | ||
- FAISS (Vector Store) | ||
- Ollama | ||
- PyMuPDF (PDF processing) |
There was a problem hiding this comment.
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.
Sure I'll make changes soon. |
@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.
Is there anything else needed to be added?? |
I think that's a sufficient start. Go ahead and make write those up. |
If you've used things from this PR, please maintain authorship. |
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. |
->Eases the install and use process.
->Gives a glimpse of the different prompts used.