
Ace It: The AI Study Assistant
Ace It is an AI-powered study assistant developed by Capstone Team SF-59. Built on AWS serverless infrastructure and using Amazon Bedrock to host foundational models, the prototype is designed for scalability and future expansion. The tool integrates directly into the Canvas learning management system through the Learning Tools Interoperability (LTI) standard. By connecting to the Canvas API, it automatically syncs with course content and delivers personalized tutoring support directly within students’ course pages. Instructors receive data on student learning and engagement to better support their progress.
Ace It: The AI Study Assistant
Published:

The above video was created by Team SF-59 and describes the goal of the project and includes a demonstration of the prototype.
Technical Components
Architecture Diagram

Expand below to learn more about the architecture diagram, step-by-step.
Infrastructure Architecture
1. The user communicates with the web application hosted on AWS Cloudfront.
2. Redirects to Canvas LTI for authentication, returns an authorization token when access is granted.
3. The frontend app communicates with Amazon API Gateway for backend interactions.
4. A Lambda function will periodically be triggered to retrieve course documents from Canvas API.
5. To retrieve documents from Canvas API, use the token passed from Amazon API Gateway.
6. The retrieved documents are stored in Amazon S3, which initiates a data ingestion workflow.
7. A lambda function, integrated with LangChain, extracts text and metadata (size, date uploaded) from the stored documents in S3.
8. The extracted data is embedded using Amazon Bedrock, specifically leveraging the Amazon Titan Text Embeddings v2 model to generate vector embeddings.
9. These vector embeddings are stored in a PostgreSQL database. If users have a preferred language, it will be translated using Amazon Translate.
10. Course management/assistant access can be configured by sending an API request which invokes a lambda function. The course configuration settings are restricted to instructors of that course.
11. This lambda function interacts with Amazon RDS database.
12. This lambda function generates an LLM response when students chat with the assistant and sends a query.
13. Conversations and chat data are stored in Amazon RDS PostgreSQL.
14. The assistant employs a Retrieval-Augmented Generation (RAG) architecture, combining with relevant course specific data to generate a response from the LLM.
15. CloudFront fetches the frontend files from S3 bucket, and Serves cached frontend content globally.
Learn more about the solution on GitHub.
Acknowledgements
Team SF-59 was formed of students Zane Frantzen, Tony Li, Christine Jiang, Catherine Zhao as part of the UBC Electrical and Computer Engineering Capstone Program. Guidance was provided by a faculty member who acted as the technical director and supported by the UBC Cloud Innovation Center technical team.
Photo by UBC Brand & Marketing.
About the University of British Columbia Cloud Innovation Centre (UBC CIC)
The UBC CIC is a public-private collaboration between UBC and Amazon Web Services (AWS). A CIC identifies digital transformation challenges, the problems or opportunities that matter to the community, and provides subject matter expertise and CIC leadership.
Using Amazon’s innovation methodology, dedicated UBC and AWS CIC staff work with students, staff and faculty, as well as community, government or not-for-profit organizations to define challenges, to engage with subject matter experts, to identify a solution, and to build a Proof of Concept (PoC). Through co-op and work-integrated learning, students also have an opportunity to learn new skills which they will later be able to apply in the workforce.
