Feature: Add an AI Chatbot for Enhanced User Experience
Note: feel free to close this issue if it seems unnecessary and not urgent or it doesn't align with Django's core goals.. Your time is precious!!
Description:
I’d like to propose adding an AI-powered chatbot to Django’s official website (djangoproject.com). The chatbot would serve as a dynamic assistant to improve accessibility, simplify navigation, and streamline interactions for users at all levels.
Key Features and Benefits:
-
Instant Answers to Django Questions:
- Help users quickly find answers to common questions about Django, its features, and usage without digging through documentation.
-
Contribution and Community Guidance:
- Assist new contributors by providing real-time guidance on contributing to Django, understanding contribution guidelines, and routing to community resources.
-
Documentation and Website Navigation:
- Enable users to jump directly to specific sections in the documentation or website without manually searching through multiple pages.
-
Issue Management Support:
- Check if a similar issue has already been raised based on the user’s issue description, reducing duplicates and saving maintainers’ time.
-
Expandable Functionality:
- The chatbot could also suggest tutorials, best practices, or relevant blog posts depending on the user's queries.
Why This Feature Matters:
With Django’s growing popularity and user base, an AI chatbot can make the framework more approachable and the community more inclusive. It will enhance productivity by saving time and effort for users navigating the ecosystem.
Implementation Ideas:
The chatbot could use an open-source conversational AI framework like Rasa or integrate with existing models like OpenAI GPT, tailored specifically for Django’s ecosystem.
I believe this feature could significantly improve the user experience and community engagement on the Django website. I’d love to hear thoughts, suggestions, and potential concerns from the community!
have u people ever thought about this??
Hi and thanks for taking the time to file an issue for this.
Speaking personally, I'm very much opposed to this idea. Letting an LLM-based chat system inform our users seems like it would lead to more work for maintainers, and a loss of control over what information we want to communicate.
You mention accessibility which is a core value of this project, but I don't fully see what the accessibility benefits of a chat agent would be, could you elaborate on that?
I would also be interested in examples of other big open source projects that have adopted such LLM-powered chatbots for their documentation, do you have examples of that?
Hi,
Thanks for your feedback! I understand your concerns about the maintenance burden and loss of control. The idea behind the chatbot was to help users quickly find answers and navigate Django’s resources, but I see your point about the potential issues.
As for accessibility, I was thinking more in terms of helping users find information quickly rather than hopping from one doc to other and one blog to other, but I understand it may not directly improve traditional accessibility.
I don’t have examples of other large projects using LLM-powered chatbots... just got this idea on a whim, but I’ll look into that.
If the community feels this isn’t a fit, I’m happy to close the issue.
Thanks again!
Hi everyone! I understand the concerns, and I’d like to address them briefly:
Accessibility Benefits The chatbot could simplify navigation for users by helping them jump to specific documentation sections or resources through conversational queries. For new users or those unfamiliar with Django’s structure, this reduces the effort of manually searching and increases accessibility.
Examples of AI in Open Source Projects like TensorFlow and Kubernetes utilize AI-driven tools to assist users in finding documentation and addressing common queries. These examples show how AI can complement open-source ecosystems without replacing core documentation.
Maintaining Control To avoid misinformation, the chatbot could be trained only on Django’s official documentation and include disclaimers clarifying its supplemental role. Feedback systems can further ensure quality and continuous improvement.
I’d be happy to hear further thoughts or concerns and explore other ways to enhance the user experience!
Hi,
Thanks for your input on the AI chatbot feature! As an alternative approach, I’m considering using a GitHub Actions workflow that automatically provides a set of predefined contribution resources when a user forks the Django repository. This would include hardcoded links and guides in a resources.md or similar file, without requiring full access to the forked repository. The workflow would trigger on the fork event and push the resources to the user's fork, making it a lightweight and automated solution.
Let me know your thoughts on this approach!