|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | import time | 
					
						
						|  | import uuid | 
					
						
						|  |  | 
					
						
						|  | from web_server.db import LLMType | 
					
						
						|  | from web_server.db.db_models import init_database_tables as init_web_db | 
					
						
						|  | from web_server.db.services import UserService | 
					
						
						|  | from web_server.db.services.llm_service import LLMFactoriesService, LLMService | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | def init_superuser(): | 
					
						
						|  | user_info = { | 
					
						
						|  | "id": uuid.uuid1().hex, | 
					
						
						|  | "password": "admin", | 
					
						
						|  | "nickname": "admin", | 
					
						
						|  | "is_superuser": True, | 
					
						
						|  | "email": "[email protected]", | 
					
						
						|  | "creator": "system", | 
					
						
						|  | "status": "1", | 
					
						
						|  | } | 
					
						
						|  | UserService.save(**user_info) | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | def init_llm_factory(): | 
					
						
						|  | factory_infos = [{ | 
					
						
						|  | "name": "OpenAI", | 
					
						
						|  | "logo": "", | 
					
						
						|  | "tags": "LLM,TEXT EMBEDDING,SPEECH2TEXT,MODERATION", | 
					
						
						|  | "status": "1", | 
					
						
						|  | },{ | 
					
						
						|  | "name": "通义千问", | 
					
						
						|  | "logo": "", | 
					
						
						|  | "tags": "LLM,TEXT EMBEDDING,SPEECH2TEXT,MODERATION", | 
					
						
						|  | "status": "1", | 
					
						
						|  | },{ | 
					
						
						|  | "name": "智普AI", | 
					
						
						|  | "logo": "", | 
					
						
						|  | "tags": "LLM,TEXT EMBEDDING,SPEECH2TEXT,MODERATION", | 
					
						
						|  | "status": "1", | 
					
						
						|  | },{ | 
					
						
						|  | "name": "文心一言", | 
					
						
						|  | "logo": "", | 
					
						
						|  | "tags": "LLM,TEXT EMBEDDING,SPEECH2TEXT,MODERATION", | 
					
						
						|  | "status": "1", | 
					
						
						|  | }, | 
					
						
						|  | ] | 
					
						
						|  | llm_infos = [{ | 
					
						
						|  | "fid": factory_infos[0]["name"], | 
					
						
						|  | "llm_name": "gpt-3.5-turbo", | 
					
						
						|  | "tags": "LLM,CHAT,4K", | 
					
						
						|  | "model_type": LLMType.CHAT.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[0]["name"], | 
					
						
						|  | "llm_name": "gpt-3.5-turbo-16k-0613", | 
					
						
						|  | "tags": "LLM,CHAT,16k", | 
					
						
						|  | "model_type": LLMType.CHAT.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[0]["name"], | 
					
						
						|  | "llm_name": "text-embedding-ada-002", | 
					
						
						|  | "tags": "TEXT EMBEDDING,8K", | 
					
						
						|  | "model_type": LLMType.EMBEDDING.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[0]["name"], | 
					
						
						|  | "llm_name": "whisper-1", | 
					
						
						|  | "tags": "SPEECH2TEXT", | 
					
						
						|  | "model_type": LLMType.SPEECH2TEXT.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[0]["name"], | 
					
						
						|  | "llm_name": "gpt-4", | 
					
						
						|  | "tags": "LLM,CHAT,8K", | 
					
						
						|  | "model_type": LLMType.CHAT.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[0]["name"], | 
					
						
						|  | "llm_name": "gpt-4-32k", | 
					
						
						|  | "tags": "LLM,CHAT,32K", | 
					
						
						|  | "model_type": LLMType.CHAT.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[0]["name"], | 
					
						
						|  | "llm_name": "gpt-4-vision-preview", | 
					
						
						|  | "tags": "LLM,CHAT,IMAGE2TEXT", | 
					
						
						|  | "model_type": LLMType.IMAGE2TEXT.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[1]["name"], | 
					
						
						|  | "llm_name": "qwen-turbo", | 
					
						
						|  | "tags": "LLM,CHAT,8K", | 
					
						
						|  | "model_type": LLMType.CHAT.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[1]["name"], | 
					
						
						|  | "llm_name": "qwen-plus", | 
					
						
						|  | "tags": "LLM,CHAT,32K", | 
					
						
						|  | "model_type": LLMType.CHAT.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[1]["name"], | 
					
						
						|  | "llm_name": "text-embedding-v2", | 
					
						
						|  | "tags": "TEXT EMBEDDING,2K", | 
					
						
						|  | "model_type": LLMType.EMBEDDING.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[1]["name"], | 
					
						
						|  | "llm_name": "paraformer-realtime-8k-v1", | 
					
						
						|  | "tags": "SPEECH2TEXT", | 
					
						
						|  | "model_type": LLMType.SPEECH2TEXT.value | 
					
						
						|  | },{ | 
					
						
						|  | "fid": factory_infos[1]["name"], | 
					
						
						|  | "llm_name": "qwen_vl_chat_v1", | 
					
						
						|  | "tags": "LLM,CHAT,IMAGE2TEXT", | 
					
						
						|  | "model_type": LLMType.IMAGE2TEXT.value | 
					
						
						|  | }, | 
					
						
						|  | ] | 
					
						
						|  | for info in factory_infos: | 
					
						
						|  | LLMFactoriesService.save(**info) | 
					
						
						|  | for info in llm_infos: | 
					
						
						|  | LLMService.save(**info) | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | def init_web_data(): | 
					
						
						|  | start_time = time.time() | 
					
						
						|  | if not UserService.get_all().count(): | 
					
						
						|  | init_superuser() | 
					
						
						|  |  | 
					
						
						|  | if not LLMService.get_all().count():init_llm_factory() | 
					
						
						|  |  | 
					
						
						|  | print("init web data success:{}".format(time.time() - start_time)) | 
					
						
						|  |  | 
					
						
						|  |  | 
					
						
						|  | if __name__ == '__main__': | 
					
						
						|  | init_web_db() | 
					
						
						|  | init_web_data() |