Skeet: Towards a Lightweight Serverless Framework Supporting Modern AI-Driven App Development

Kawasaki Fumitake,Shota Kishi,James Neve
DOI: https://doi.org/10.5220/0012681000003687
2024-05-10
Abstract:The field of web and mobile software frameworks is relatively mature, with a large variety of tools in different languages that facilitate traditional app development where data in a relational database is displayed and modified. Our position is that many current frameworks became popular during single server deployment of MVC architecture apps, and do not facilitate modern aspects of app development such as cloud computing and the incorporation of emerging technologies such as AI. We present a novel framework which accomplishes these purposes, Skeet, which was recently released to general use, alongside an initial evaluation. Skeet provides an app structure that reflects current trends in architecture, and tool suites that allow developers with minimal knowledge of AI internals to easily incorporate such technologies into their apps and deploy them.
Software Engineering,Artificial Intelligence
What problem does this paper attempt to address?
The problems that this paper attempts to solve are as follows: Many popular software frameworks currently in use were not fully designed with the needs of modern application development in mind, especially the integration of cloud computing and artificial intelligence (AI) technologies. Traditional frameworks based on the Model - View - Controller (MVC) architecture have difficulty adapting to the requirements of rapidly developing AI - driven applications, such as the use of cloud infrastructures, NoSQL databases, and large - language models (LLM). Specifically, the paper points out the following problems: 1. **Mismatch between traditional frameworks and modern requirements**: - Most traditional frameworks are based on the MVC architecture for single - server deployment and cannot well support cloud computing and emerging technologies (such as AI) in modern application development. - AI - driven applications usually rely on faster data read - write operations, such as NoSQL databases or data warehouses (BigQuery), and these data sources are difficult to fully meet the requirement of one - to - one correspondence between models and relational database tables in the MVC architecture. 2. **Complexity of AI technology**: - Developers need to have certain machine - learning expertise to effectively integrate AI technology into applications, which is an obstacle for non - professional developers. - Training and deploying custom - made AI models not only require expertise but may also involve a large amount of computing resources and costs. 3. **Language barriers in front - end and back - end development**: - There are difficulties in communication between front - end and back - end developers. Especially in an organization, the two departments may lack an understanding of each other's development processes, resulting in low collaboration efficiency. 4. **Complexity of infrastructure management**: - Traditional development methods require the design of load balancing and resource allocation in advance, which not only increases the cost of design and fixed infrastructure but also limits the scalability of applications. To solve these problems, the paper proposes a new lightweight serverless framework - Skeet. The main objectives of Skeet are: - **Simplify the integration of AI technology**: By providing a command - line interface (CLI) tool, developers can easily integrate pre - trained AI models (such as ChatGPT and Vertex AI) into their applications without in - depth knowledge of the internal mechanisms of AI. - **Support multiple data sources**: Allow developers to use relational and NoSQL databases as well as cloud services, such as Google Cloud Platform. - **Reduce language barriers in front - end and back - end development**: Use TypeScript as a unified development language to promote understanding and collaboration between front - end and back - end developers. - **Leverage the serverless architecture to achieve scalability and cost - effectiveness**: Eliminate the need for upfront infrastructure design, automatically adjust to cope with different loads, achieve rapid and scalable product development, and reduce resource usage costs through a pay - as - you - go model. Through these improvements, Skeet aims to help developers build and deploy modern AI - driven applications more efficiently.