Skip to content

neuhai/StoryMate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

[CHI'25 Accepted] Characterizing LLM-Empowered Personalized Story-Reading and Interaction for Children: Insights from Multi-Stakeholder Perspectives

arXiv demo License: MIT

Jiaju Chen, Minglong Tang, Yuxuan Lu, Bingsheng Yao, Elissa Fan, Xiaojuan Ma, Ying Xu, Dakuo Wang, Yuling Sun, Liang He

Overview

Personalized interaction is highly valued by parents in their story-reading activities with children. While AI-empowered story-reading tools have been increasingly used, their abilities to support personalized interaction with children are still limited. Recent advances in large language models (LLMs) show promise in facilitating personalized interactions, but little is known about how to effectively and appropriately use LLMs to enhance children's personalized story-reading experiences. This work explores this question through a design-based study. Drawing on a formative study, we designed and developed StoryMate, an LLM-empowered personalized interactive story-reading tool for children, following an empirical study with children, parents, and education experts. Our participants valued the personalized features in StoryMate, and also highlighted the need to support personalized content, guiding mechanisms, reading context variations, and interactive interfaces. Based on these findings, we propose a series of design recommendations for better using LLMs to empower children's personalized story reading and interaction.

Prerequisites

  • Python 3.8 or higher
  • pip (Python package installer)
  • OpenAI API key
  • NLTK data

Project Structure

StoryMate/
├── backend/
│   ├── Audio_Generation/
│   ├── Knowledge_Matching/
│   ├── Text_Process/
│   └── app.py
├── frontend/
│   ├── static/
│   └── templates/
├── requirements.txt
└── .env

Under the Knowledge_Matching folder, we organized the structured Next Generation Science Standards (NGSS) from kindergarten level to second grade level in NGSS_DC_EN.json and NGSS_DCI_CN.json. The pre-calculated key word semantic similarities with pieces of real-world knowledge in NGSS are in Similarity_Dict_EN.json and Similarity_Dict_EN.json.

Installation

  1. Clone the repository:
git clone [repository-url]
cd StoryMate
  1. Create and activate a virtual environment (recommended):
# On macOS/Linux
python -m venv venv
source venv/bin/activate

# On Windows
python -m venv venv
venv\Scripts\activate
  1. Install required packages:
pip install -r requirements.txt
  1. Download required NLTK data:
python -c "import nltk; nltk.download('punkt'); nltk.download('stopwords')"
  1. Set up environment variables: Create a .env file in the root directory with your OpenAI API key:
OPENAI_API_KEY=your_api_key_here

Quick Start

Loading a Book into the System

  1. First, ensure your book text is organized in a JSON file with the following structure:
[
    "First page text...",
    "Second page text...",
    "Third page text..."
]
  1. Place your book JSON file in the following directory structure:
frontend/static/files/books/[BOOK_TITLE]/[BOOK_TITLE].json
  1. Run the book loading script:
cd backend
python book_load.py
  1. The script will:
    • Process the text and generate audio narration
    • Match scientific knowledge with the content
    • Generate interactive questions and explanations
    • Set up the necessary files for the interactive experience

Example usage:

from book_load import load_book

# Load a book named "Amara and the Bats"
load_book("Amara and the Bats")

The book will then be available in the library interface of the application.

Running the Application

  1. Start the Flask server:
cd backend
python app.py
  1. Open your web browser and navigate to:
http://localhost:5500

Features

  • Interactive storytelling with real-world knowledge integration
  • Text-to-speech capabilities
  • User progress tracking
  • Personalized learning experience
  • Support for both English and Chinese content

License

This project is licensed under the MIT License.

Citation

@inproceedings{chen2025storymate,
  author    = {Jiaju Chen and Minglong Tang and Yuxuan Lu and Bingsheng Yao and Elissa Fan and Xiaojuan Ma and Ying Xu and Dakuo Wang and Yuling Sun and Liang He},
  title     = {StoryMate: An LLM-Empowered Personalized Interactive Story-Reading Tool for Children},
  booktitle = {Proceedings of the 2025 CHI Conference on Human Factors in Computing Systems},
  year      = {2025},
  month     = {April},
  location  = {Yokohama, Japan},
  publisher = {ACM},
  doi       = {10.1145/3706598.3713275},
  isbn      = {979-8-4007-1394-1},
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published