Files
DB-GPT/dbgpt/serve/core/service.py
2023-12-28 14:14:20 +08:00

35 lines
870 B
Python

from abc import ABC, abstractmethod
from typing import Generic
from dbgpt.component import BaseComponent
from dbgpt.serve.core.config import BaseServeConfig
from dbgpt.storage.metadata._base_dao import REQ, RES, BaseDao, T
class BaseService(BaseComponent, Generic[T, REQ, RES], ABC):
name = "dbgpt_serve_base_service"
def __init__(self, system_app):
super().__init__(system_app)
@property
@abstractmethod
def dao(self) -> BaseDao[T, REQ, RES]:
"""Returns the internal DAO."""
@property
@abstractmethod
def config(self) -> BaseServeConfig:
"""Returns the internal ServeConfig."""
def create(self, request: REQ) -> RES:
"""Create a new entity
Args:
request (REQ): The request
Returns:
RES: The response
"""
return self.dao.create(request)