panhong d63bf0bda5
添加 react 编写的新版 WEBUI (#3417)
* feat:提交前端代码

* feat:提交logo样式切换

* feat:替换avatar、部分位置icon、chatchat相关说明、git链接、Wiki链接、关于、设置、反馈与建议等功能,关闭lobehub自检更新功能

* fix:移除多余代码

---------

Co-authored-by: liunux4odoo <41217877+liunux4odoo@users.noreply.github.com>
2024-03-19 14:30:26 +08:00

97 lines
4.0 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from typing import List
from loom_core.openai_plugins.core.adapter import LLMWorkerInfo
from loom_core.openai_plugins.core.profile_endpoint.core import ProfileEndpointAdapter
import os
import sys
import logging
logger = logging.getLogger(__name__)
root_dir = os.path.dirname(os.path.abspath(__file__))
sys.path.append(root_dir)
class ZhipuAIProfileEndpointAdapter(ProfileEndpointAdapter):
"""Adapter for the profile endpoint."""
def __init__(self, cfg=None, state_dict: dict = None):
self._cfg = cfg
super().__init__(state_dict=state_dict)
def class_name(self) -> str:
"""Get class name."""
return self.__name__
def list_running_models(self) -> List[LLMWorkerInfo]:
"""模型列表及其配置项"""
list_worker = []
list_worker.append(LLMWorkerInfo(worker_id="glm-4",
model_name="glm-4",
model_description="glm-4",
providers=["model", "embedding"],
model_extra_info="{}"))
list_worker.append(LLMWorkerInfo(worker_id="glm-3-turbo",
model_name="glm-3-turbo",
model_description="glm-3-turbo",
providers=["model", "embedding"],
model_extra_info="{}"))
# list_worker.append(LLMWorkerInfo(worker_id="embedding-2",
# model_name="embedding-2",
# model_description="embedding-2",
# providers=["embedding"],
# model_extra_info="{}"))
return list_worker
def list_llm_models(self) -> List[LLMWorkerInfo]:
"""获取已配置模型列表"""
list_worker = []
list_worker.append(LLMWorkerInfo(worker_id="glm-4",
model_name="glm-4",
model_description="glm-4",
providers=["model", "embedding"],
model_extra_info="{}"))
list_worker.append(LLMWorkerInfo(worker_id="glm-3-turbo",
model_name="glm-3-turbo",
model_description="glm-3-turbo",
providers=["model", "embedding"],
model_extra_info="{}"))
# list_worker.append(LLMWorkerInfo(worker_id="embedding-2",
# model_name="embedding-2",
# model_description="embedding-2",
# providers=["embedding"],
# model_extra_info="{}"))
return list_worker
def get_model_config(self, model_name) -> LLMWorkerInfo:
'''
获取LLM模型配置项合并后的
'''
info_obj = LLMWorkerInfo(worker_id=model_name,
model_name=model_name,
model_description="",
providers=["model", "embedding"],
model_extra_info="{}")
return info_obj
@classmethod
def from_config(cls, cfg=None):
_state_dict = {
"profile_name": "zhipuai",
"profile_version": "0.0.1",
"profile_description": "zhipuai profile endpoint",
"profile_author": "zhipuai"
}
state_dict = cfg.get("state_dict", {})
if state_dict is not None and _state_dict is not None:
_state_dict = {**state_dict, **_state_dict}
else:
# 处理其中一个或两者都为 None 的情况
_state_dict = state_dict or _state_dict or {}
return cls(cfg=cfg, state_dict=_state_dict)