31 lines
1.1 KiB
Python
31 lines
1.1 KiB
Python
from typing import Literal
|
|
|
|
from fastapi import APIRouter, Body
|
|
|
|
from chatchat.server.types.server.response.base import BaseResponse
|
|
from chatchat.settings import Settings
|
|
from chatchat.server.utils import get_prompt_template, get_server_configs
|
|
|
|
server_router = APIRouter(prefix="/server", tags=["Server State"])
|
|
|
|
available_template_types = list(Settings.prompt_settings.model_fields.keys())
|
|
|
|
# 服务器相关接口
|
|
server_router.post(
|
|
"/configs",
|
|
summary="获取服务器原始配置信息",
|
|
)(get_server_configs)
|
|
|
|
|
|
@server_router.post("/get_prompt_template", summary="获取服务区配置的 prompt 模板", response_model=BaseResponse)
|
|
def get_server_prompt_template(
|
|
type: str = Body(
|
|
"llm_model", description="模板类型,可选值:{available_template_types}"
|
|
),
|
|
name: str = Body("default", description="模板名称"),
|
|
):
|
|
prompt_template = get_prompt_template(type=type, name=name)
|
|
if prompt_template is None:
|
|
return BaseResponse.error("Prompt template not found")
|
|
return BaseResponse.success(prompt_template)
|