tutor-gpt: Adaptive Learning Companion Tool

What is Tutor-GPT

Tutor-GPT, developed by Plastic Labs, is a LangChain LLM application designed to dynamically assess and address your learning needs. It updates its own prompts to provide the most effective support, making it more than just a literacy tutor but an expansive learning companion. Inspired by theory of mind experiments, Tutor-GPT offers a personalized learning experience. You can try the hosted version, called Bloom, at chat.bloombot.ai or join the Discord to use it for free. Alternatively, you can run your own instance of the bot by following the provided instructions. The project is structured into multiple modules for different clients, with the core logic and prompting located in the agent/ directory.

GitHub Stats Value
Stars 714
Forks 65
Language TypeScript
Created 2023-01-21
License GNU General Public License v3.0

Tutor-GPT is a LangChain LLM application developed by Plastic Labs, designed to dynamically reason about users’ learning needs and update its prompts accordingly. Here are the key features and capabilities:

  • Learning Companion: Beyond being a literacy tutor, it serves as an expansive learning companion, incorporating theory of mind experiments.
  • Dynamic Prompting: Updates its own prompts to best serve the user’s learning needs.
  • Multiple Interfaces: Available as a web version at chat.bloombot.ai, a Discord bot, and can be run locally.
  • Modular Structure: The project is split into modules for different clients, including agent/, bot/, api/, www/, and common/.
  • Technology Stack: Primarily developed using Python with poetry for dependency management, and NextJS for the web interface with yarn.
  • Supabase Integration: Uses Supabase for user management, authentication, and storing conversation data.
  • Installation and Usage: Can be installed and run locally using poetry and yarn, or via Docker containers. Requires environment variables such as OpenAI API key, Supabase credentials, and others depending on the interface.
  • Contributing: Open source project welcoming contributions through a fork and pull request workflow.
  • License: Licensed under the GPL-3.0 License.
  • Backend Logic: Managed through agent/, api/, and bot/ modules.
  • Web Interface: Built with NextJS in the www/ module.
  • Supabase: Used for database and user management.
  • Docker Support: Allows running the application using Docker containers.
  • Web Version: Accessible at chat.bloombot.ai.
  • Discord Bot: Join the Discord server to try out the bot.
  • Local Instance: Can be run locally using the provided instructions and environment variables.
  • Dynamic Learning: Tutor-GPT can be used as an adaptive learning companion that adjusts its prompts based on your learning needs, making it more than just a literacy tutor.
  • Theory of Mind: It incorporates theory of mind experiments, enhancing its ability to understand and respond to your queries in a more personalized manner.
  • Web Interface: You can access Tutor-GPT through a web interface at chat.bloombot.ai, allowing you to interact with the tutor directly from your browser.
  • Discord Integration: Join the Discord server to use the bot for free, where it can provide educational support and feedback within a community setting.
  • Local Setup: You can run your own instance of Tutor-GPT by cloning the repository, setting up the necessary environment variables, and using Docker or local installation methods.

    bash

    git clone https://github.com/plastic-labs/tutor-gpt.git
    cd tutor-gpt
    poetry install
    cd www/
    yarn install
  • Docker Containers: Use Docker to run the application locally, ensuring you keep your environment variables secure.

    bash

    docker run --env-file .env tutor-gpt-core python -u -m bot.app
  • Open Source Contributions: The project is open source and welcomes contributions. You can fork the repository, claim an issue, and submit a PR to the staging branch for review.
  • Environment Setup: Use poetry for Python dependencies and yarn for NodeJS dependencies to ensure a smooth development environment.
  • Project Structure: The repository is divided into modules such as agent/, bot/, api/, www/, and common/, each handling different aspects of the application.
  • Supabase Integration: The project uses Supabase for user management and database operations. You can set up a local Supabase instance using the provided SQL scripts.

    bash

    supabase start
  • Environment Variables: Configure environment variables in a .env file to run the application, including OpenAI API keys, Supabase URLs, and Discord bot tokens.

By exploring these aspects, users can benefit from Tutor-GPT as a powerful learning tool, contribute to its development

Key Points:

  • Dynamic Learning: Tutor-GPT dynamically adjusts its prompts to meet individual learning needs, making it an effective learning companion.
  • Expansive Capabilities: Beyond literacy, it incorporates theory of mind experiments, enhancing its educational scope.
  • Accessibility: Available as a web version (Bloom) and a free Discord implementation, with options to run your own instance.
  • Modular Structure: The project is divided into modules for different clients (Discord, API, web frontend), making it scalable and maintainable.
  • Community Engagement: Open-source with a welcoming community for contributions and feedback through Discord and GitHub.

Future Potential:

  • Continuous Improvement: With ongoing contributions and testing, Tutor-GPT can become even more personalized and effective.
  • Integration with Other Tools: Potential for integration with other educational platforms and tools to enhance its utility.
  • Wider Adoption: Could be adopted in various educational settings, from individual tutoring to classroom environments.

For further insights and to explore the project further, check out the original plastic-labs/tutor-gpt repository.

Content derived from the plastic-labs/tutor-gpt repository on GitHub. Original materials are licensed under their respective terms.