Significant efforts has been made to expand the use of Large Language Models (LLMs) beyond basic language tasks. While the generalizability and versatility of LLMs have enabled widespread adoption, evolving demands in application development often exceed their native capabilities. Meeting these demands may involve a diverse set of methods, such as enhancing creativity through either inference temperature adjustments or creativity-provoking prompts. Selecting the right approach is critical, as different methods lead to trade-offs in engineering complexity, scalability, and operational costs. This paper introduces a layered architecture that organizes LLM software system development into distinct layers, each characterized by specific attributes. By aligning capabilities with these layers, the framework encourages the systematic implementation of capabilities in effective and efficient ways that ultimately supports desired functionalities and qualities. Through practical case studies, we illustrate the utility of the framework. This work offers developers actionable insights for selecting suitable technologies in LLM-based software system development, promoting robustness and scalability.
翻译:当前已有大量研究致力于将大型语言模型(LLMs)的应用从基础语言任务扩展到更广泛的领域。尽管LLMs的通用性和多功能性促成了其广泛应用,但应用开发中不断演进的需求常常超出其原生能力范围。满足这些需求可能需要采用多种方法,例如通过调整推理温度或使用激发创造性的提示词来增强模型的创造性。选择合适的方法至关重要,因为不同方法会在工程复杂度、可扩展性和运营成本之间产生权衡。本文提出一种分层架构,将LLM软件系统开发组织为具有特定属性的不同层级。通过将能力与这些层级对齐,该框架支持以高效且系统化的方式实现能力,最终达成所需的功能与质量要求。通过实际案例研究,我们展示了该框架的实用性。这项工作为开发者在基于LLM的软件系统开发中选择适宜技术提供了可操作的见解,有助于提升系统的鲁棒性和可扩展性。