Integrating and Enhancing the AWS QnABot for Operational Efficiency; Exploring the Impact of GitHub Copilot on the Software Development Process

Author:
Marasini, Rajan, School of Engineering and Applied Science, University of Virginia
Advisors:
Graham, Daniel, EN-Comp Science Dept, University of Virginia
Earle, Joshua, EN-Engineering and Society, University of Virginia
Abstract:

Technical Project:
During my summer software engineering internship at Amazon Web Services, I focused on enhancing the AWS QnABot to improve operational efficiency within our team. The main goal was to integrate new features that would simplify the team's workflow and reduce reliance on manual tasks. This project used several AWS services, including AWS Lex for more natural chatbot interactions and AWS OpenSearch for better data retrieval accuracy. A key part of my role was developing an automated web-to-S3 scraper, which made the data extraction process more efficient by replacing outdated manual methods. Additionally, I integrated Amazon Kendra and a large language model using the Retrieval Augmented Generation approach, which significantly refined the chatbot's responses. These improvements led to more efficient operations and provided deeper insights into user interactions, setting a strong foundation for future enhancements focused on handling more complex inquiries and refining the accuracy of the large language model.

The need for efficient customer support systems in modern, fast-paced business environments guided the initial deployment of the AWS QnABot within our team. Before this implementation, handling customer inquiries was manually intensive. Thus, leading to delays and an increased workload. The integration of the AWS QnABot aimed to automate responses to frequently asked questions, thereby enhancing the speed and accuracy of customer service interactions. By leveraging AWS Lex and OpenSearch, the project enhanced the bot's conversational capabilities and data retrieval processes. As a result, the chatbot became a more effective tool for managing customer interactions and reducing the operational burden on the team.

The continuous development of the AWS QnABot demonstrates AWS's proactive approach and competitive stance in the field of conversational AI, positioning it alongside other leading tech companies like Microsoft and Google. Their advancements serve as key benchmarks that inspire AWS's own innovations. The integration strategies for AWS Lex, OpenSearch, and Amazon Kendra compete with existing technologies such as Microsoft's QnAMaker and Google's Dialogflow. Such competition highlights the need for sophisticated data handling and natural language processing capabilities to enhance chatbot interactions. The enhancements to the AWS QnABot not only addressed immediate operational needs but also positioned Amazon to further lead in AI-driven customer service solutions, emphasizing ongoing innovation in response to market competition.

STS Project:
In the fast-changing field of software development, tools powered by artificial intelligence are dramatically reshaping how programmers work. GitHub Copilot, launched by GitHub and OpenAI in 2021, is a standout tool that acts as a coding assistant. Using the GPT-3 model from OpenAI, GitHub Copilot offers targeted suggestions for writing code, helping to significantly speed up programming and introducing new, more efficient ways of working. This research paper looks into how GitHub Copilot affects the software development process, focusing on its influence on the speed of coding, the quality of code, and how programmers adapt and learn new skills. Additionally, GitHub Copilot draws on a huge amount of code available publicly, which raises important questions about creativity, data security, and ethical issues in programming.

GitHub Copilot does more than just help write code. It marks a shift toward more interactive and connected programming environments, transforming the traditional isolated coding tasks into a more collaborative process. The study uses a diverse mix of research methods, including surveys, ethnographic interviews with developers, and analysis of code written with Copilot. Early results show that while Copilot makes coding much faster, it also presents new challenges, such as ensuring that the code is safe and respects copyright laws. Furthermore, since Copilot uses a large amount of existing code, there are worries about it reinforcing old biases or copying others’ work without permission. The research aims to fully understand the advantages and drawbacks of using Copilot in software development, striving to identify ways to enhance GitHub Copilot's effectiveness and reduce any associated risks.

Looking forward, the study considers how AI tools like GitHub Copilot will continue to change software development. It's important to tackle the ethical issues that arise with GitHub Copilot and to refine its programming suggestions to avoid biases and enhance security. This research will help us better understand the impact of AI tools on programming and guide us in using these technologies responsibly. By exploring these issues, the project aims to help ensure that AI-assisted programming tools support fair and ethical programming practices, while also making coding more efficient and accessible for everyone.

Degree:
BS (Bachelor of Science)
Language:
English
Rights:
All rights reserved (no additional license for public reuse)
Issued Date:
2024/05/05