Trello Knowledge Assistant 2.0

07/2023 ~ 07/2024

Text Mining
Search Algorithms
LLM
Vector Data Management
Backend
Queue System
Handed Off
Featured

[ Project & Thesis ] Integrating large language models into the Trello platform to assist students with self-directed learning resource search and interaction.

Trello Knowledge Assistant 2.0

Awards

TWELF 2024 19th Taiwan E-Learning and Educational Technology Conference

Best Paper Award AIES Division

Tech Stack

Flask

Webhook API development and setup

RabbitMQ

Task queue processing system to prevent service blocking under heavy user load

MongoDB

Primary system database recording all student interaction data

Milvus

System knowledge vector database for building and managing RAG knowledge search

Sentence-BERT

Text vectorization technology, model training and fine-tuning

System User Guide

Knowledge Text Pre-processing

After retrieving each article’s title, body, and URL, the content is stored as plain text in a MongoDB article database. To support RAG-based article retrieval, the title and body are merged into an index text, which is then converted into a fixed-length vector using Sentence-BERT’s paraphrase-multilingual-mpnet-base-v2 multilingual model and stored in the article vector database.

Module Construction

Search Architecture

A resource recommendation algorithm combining BM25 (term frequency), TF-IDF, co-occurrence analysis, and SBERT embedding technology to search science education resources based on user-entered keywords.

Response Architecture

Built on RAG and chain-of-thought prompt design, using a large language model (GPT-4 Turbo) to generate appropriate responses and follow-up questions.

Trello Data Creation Flow

Prompt List

role prompt
system #zh_tw You are a natural science middle school teacher who uses Traditional Chinese and is speaking with a student who is new to research. The student is researching Research Topic. You need to help the student understand related knowledge, so you should generate a response and ask the student a follow-up question to promote deeper thinking about the Research Topic. The output text must be based on Markdown syntax.
user *chat text (oldest to newest)*

Response Module Data Pre-processing

Chat Text Processing


Knowledge Text Processing

Search Module

Building a Self-Directed Learning Resource Recommendation System Using Natural Language Processing

A resource recommendation algorithm combining BM25 (term frequency), TF-IDF, and SBERT embedding technology to search science education resources based on user-entered keywords.