1010
1111from apps .system .models .system_model import AssistantModel
1212from apps .system .schemas .auth import CacheName , CacheNamespace
13- from apps .system .schemas .system_schema import AssistantOutDsSchema , UserInfoDTO
13+ from apps .system .schemas .system_schema import AssistantHeader , AssistantOutDsSchema , UserInfoDTO
1414from common .core .sqlbot_cache import cache
1515from common .core .db import engine
1616from starlette .middleware .cors import CORSMiddleware
@@ -24,9 +24,8 @@ async def get_assistant_info(*, session: Session, assistant_id: int) -> Assistan
2424def get_assistant_user (* , id : int ):
2525 return UserInfoDTO (
id = id ,
account = "sqlbot-inner-assistant" ,
oid = 1 ,
name = "sqlbot-inner-assistant" ,
email = "[email protected] " )
2626
27- # def get_assistant_ds(*, session: Session, assistant: AssistantModel):
2827def get_assistant_ds (llm_service ) -> list [dict ]:
29- assistant : AssistantModel = llm_service .current_assistant
28+ assistant : AssistantHeader = llm_service .current_assistant
3029 session : Session = llm_service .session
3130 type = assistant .type
3231 if type == 0 :
@@ -51,7 +50,7 @@ def get_assistant_ds(llm_service) -> list[dict]:
5150
5251 # filter private ds if offline
5352 return result_list
54- out_ds_instance : AssistantOutDs = AssistantOutDsFactory .get_instance (assistant , llm_service . assistant_certificate )
53+ out_ds_instance : AssistantOutDs = AssistantOutDsFactory .get_instance (assistant )
5554 llm_service .out_ds_instance = out_ds_instance
5655 dslist = out_ds_instance .get_simple_ds_list ()
5756 # format?
@@ -84,20 +83,20 @@ def init_dynamic_cors(app: FastAPI):
8483
8584
8685class AssistantOutDs :
87- assistant : AssistantModel
86+ assistant : AssistantHeader
8887 ds_list : Optional [list [AssistantOutDsSchema ]] = None
8988 certificate : Optional [str ] = None
90- def __init__ (self , assistant : AssistantModel , certificate : Optional [ str ] = None ):
89+ def __init__ (self , assistant : AssistantHeader ):
9190 self .assistant = assistant
9291 self .ds_list = None
93- self .certificate = certificate
94- self .get_ds_from_api (certificate )
92+ self .certificate = assistant . certificate
93+ self .get_ds_from_api ()
9594
9695 #@cache(namespace=CacheNamespace.EMBEDDED_INFO, cacheName=CacheName.ASSISTANT_DS, keyExpression="current_user.id")
97- def get_ds_from_api (self , certificate : Optional [ str ] = None ):
96+ def get_ds_from_api (self ):
9897 config : dict [any ] = json .loads (self .assistant .configuration )
9998 endpoint : str = config ['endpoint' ]
100- certificateList : list [any ] = json .loads (certificate )
99+ certificateList : list [any ] = json .loads (self . certificate )
101100 header = {}
102101 cookies = {}
103102 for item in certificateList :
@@ -155,8 +154,8 @@ def get_ds(self, ds_id: int):
155154
156155class AssistantOutDsFactory :
157156 @staticmethod
158- def get_instance (assistant : AssistantModel , certificate : Optional [ str ] = None ) -> AssistantOutDs :
159- return AssistantOutDs (assistant , certificate )
157+ def get_instance (assistant : AssistantHeader ) -> AssistantOutDs :
158+ return AssistantOutDs (assistant )
160159
161160def get_ds_engine (ds : AssistantOutDsSchema ) -> Engine :
162161 timeout : int = 30
0 commit comments