Former-commit-id: 55755786f21050b9efc127c391509ba5d9ea8982
This commit is contained in:
hiyouga
2024-05-13 18:24:35 +08:00
parent 542a5d15ef
commit 2892e5d42a
5 changed files with 56 additions and 54 deletions

View File

@@ -21,8 +21,6 @@ from .protocol import (
)
logger = get_logger(__name__)
if is_fastapi_available():
from fastapi import HTTPException, status
@@ -32,6 +30,7 @@ if TYPE_CHECKING:
from .protocol import ChatCompletionRequest, ScoreEvaluationRequest
logger = get_logger(__name__)
ROLE_MAPPING = {
Role.USER: DataRole.USER.value,
Role.ASSISTANT: DataRole.ASSISTANT.value,
@@ -42,8 +41,7 @@ ROLE_MAPPING = {
def _process_request(request: "ChatCompletionRequest") -> Tuple[List[Dict[str, str]], str, str]:
params = dictify(request)
logger.info(f"==== request ====\n{params}")
logger.info("==== request ====\n{}".format(json.dumps(dictify(request), indent=2, ensure_ascii=False)))
if len(request.messages) == 0:
raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Invalid length")

View File

@@ -6,11 +6,11 @@ if TYPE_CHECKING:
from pydantic import BaseModel
def dictify(data: "BaseModel", **kwargs) -> Dict[str, Any]:
def dictify(data: "BaseModel") -> Dict[str, Any]:
try: # pydantic v2
return data.model_dump(**kwargs)
return data.model_dump(exclude_unset=True)
except AttributeError: # pydantic v1
return data.dict(**kwargs)
return data.dict(exclude_unset=True)
def jsonify(data: "BaseModel") -> str:

View File

@@ -308,7 +308,7 @@ def _get_jinja_template(template: "Template", tokenizer: "PreTrainedTokenizer")
jinja_template += "{% set system_message = '" + _jinja_escape(template.default_system) + "' %}"
jinja_template += (
"{% if messages[0]['role'] == 'system' %}" "{% set system_message = messages[0]['content'] %}" "{% endif %}"
"{% if messages[0]['role'] == 'system' %}{% set system_message = messages[0]['content'] %}{% endif %}"
)
system_message = _convert_slots_to_jinja(template.format_system.apply(), tokenizer, placeholder="system_message")