📄️ Architecture Overview
This topic will cover the overall technical architecture of KubeAGI.
📄️ Datasources
Datasource is used to manage and view platform data sources. As a unified data entry for LLMOps, data such as training data, test data, and knowledge base files must be preferentially connected to data sources for reference by other modules.
📄️ Datasets and VersionedDatasets
Datasets is unified management of available data, including training data sets, knowledge base data sets, etc. Supports independent version iteration, data viewing, and data update.
📄️ Models
Model is a resource definition for a model repository to manage user-trained models for subsequent deployment of model services.
📄️ Workers
Worker
📄️ LLMs
LLM is used to define locally deployed model services provided through the platform or external third-party model services that are accessed.
📄️ Embedders
The Embedder model service is used to transform input data into higher dimensional, more expressive embedding vectors. These embedding vectors capture the semantic and syntactic features of the input data, thus providing a better representation for subsequent tasks and models.
📄️ Vectorstores
VectorStore is a custom resource built on Kubernetes to manage vectorised data. Its main use is to provide a scalable, distributed way of storing and managing vector data, and also to determine the similarity of corresponding data through vectorised matching.
📄️ Knowledgebases
Knowledgebases provide the ability to build private domain documents and knowledge management, support multiple data types, and upload data files to a vector database.
📄️ DocumentLoaders
We support the following kinds of DocumentLoaders to handle various document, audio files including
📄️ Evaluation
AI agents evaluation can be quantitatively assessed through a variety of dimensions and indicators of the performance of the application.
📄️ Chains
We support the following kinds of Chains to construct AI Agent by now.
📄️ Agents
Agent is a proxy that receives user input, takes appropriate actions, and returns the results of those actions.
📄️ Retrievers
A retriever is an interface that returns documents given an unstructured query. It is more general than a vector store. A retriever does not need to be able to store documents, only to return (or retrieve) them. Vector stores can be used as the backbone of a retriever, but there are other types of retrievers as well.
📄️ LLM Applications
An application is a CR of type Application, where spec.nodes specifies the components involved in the application, each of which is a CR. Different types of components belong to different types of groups, such as prompts.prompt.arcadia.kubeagi.k8s.com.cn 和 chain.arcadia.kubeagi.k8s.com.cn.