GPTutor: A ChatGPT-Powered Programming Tool for Code Explanation

被引:10
|
作者
Chen, Eason [1 ]
Huang, Ray [2 ]
Chen, Han-Shin [3 ]
Tseng, Yuen-Hsien [1 ]
Li, Liang-Yi [1 ]
机构
[1] Natl Taiwan Normal Univ, Taipei, Taiwan
[2] KryptoCamp, Taipei, Taiwan
[3] Univ Toronto, Toronto, ON, Canada
关键词
ChatGPT; Tutoring System; Developer Tool; Prompt Engineering; Natural Language Generation;
D O I
10.1007/978-3-031-36336-8_50
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Learning new programming skills requires tailored guidance. With the emergence of advanced Natural Language Generation models like the ChatGPT API, there is now a possibility of creating a convenient and personalized tutoring system with AI for computer science education. This paper presents GPTutor, a ChatGPT-powered programming tool, which is a Visual Studio Code extension using the ChatGPTAPI to provide programming code explanations. By integrating Visual Studio Code API, GPTutor can comprehensively analyze the provided code by referencing the relevant source codes. As a result, GPTutor can use designed prompts to explain the selected code with a pop-up message. GPTutor is now published at the Visual Studio Code Extension Marketplace, and its source code is openly accessible on GitHub. Preliminary evaluation indicates that GPTutor delivers the most concise and accurate explanations compared to vanilla ChatGPT and GitHub Copilot. Moreover, the feedback from students and teachers indicated that GPTutor is user-friendly and can explain given codes satisfactorily. Finally, we discuss possible future research directions for GPTutor. This includes enhancing its performance and personalization via further prompt programming, as well as evaluating the effectiveness of GPTutor with real users.
引用
收藏
页码:321 / 327
页数:7
相关论文
共 34 条
  • [31] Modeling and Automatic Code Generation Tool for Teaching Concurrent and Parallel Programming by Finite State Processes
    Monteiro, Edwin
    Pereira, Kelvinn
    Barreto, Raimundo
    COMPUTATIONAL SCIENCE - ICCS 2020, PT VII, 2020, 12143 : 593 - 607
  • [32] File Access Extension of Test Code Generation Tool for Java']Java Programming Learning Assistant System
    Funabiki, Nobuo
    Kusaka, Ryota
    Ishihara, Nobuya
    Kao, Wen-Chung
    2017 IEEE 6TH GLOBAL CONFERENCE ON CONSUMER ELECTRONICS (GCCE), 2017,
  • [33] TaskTracker-tool: A Toolkit for Tracking of Code Snapshots and Activity Data during Solution of Programming Tasks
    Lyulina, Elena
    Birillo, Anastasiia
    Kovalenko, Vladimir
    Bryksin, Timofey
    SIGCSE 2021 - Proceedings of the 52nd ACM Technical Symposium on Computer Science Education, 2021, : 495 - 501
  • [34] Burnout Syndrome Prevention Measures among Nursing Staff Implementing a Mobile Application based on MIT's App Inventor Tool using the Scratch Programming Code
    Lafraxo, Mohammed Amine
    Ouadoud, Mohammed
    El Madhi, Youssef
    Rehali, Mourad
    Soulaymani, Abdelmajid
    INTERNATIONAL JOURNAL OF ONLINE AND BIOMEDICAL ENGINEERING, 2021, 17 (04) : 81 - 95