feat(prompt): 增加模板变量有效性检查
- 在 promptTempleta 模型中添加字段验证器 - 验证模板内容是否包含必要的 document_slice 变量 - 如果缺少该变量,抛出 ValueError 异常
This commit is contained in:
parent
2a86b3b5b0
commit
8023233bb2
@ -1,6 +1,7 @@
|
||||
from pydantic import BaseModel, Field
|
||||
from pydantic import BaseModel, Field, field_validator
|
||||
from typing import Optional
|
||||
from datetime import datetime, timezone
|
||||
from langchain.prompts import PromptTemplate
|
||||
|
||||
class promptTempleta(BaseModel):
|
||||
id: Optional[int] = Field(default=None, description="模板ID")
|
||||
@ -10,4 +11,10 @@ class promptTempleta(BaseModel):
|
||||
created_at: str = Field(
|
||||
default_factory=lambda: datetime.now(timezone.utc).isoformat(),
|
||||
description="记录创建时间"
|
||||
)
|
||||
)
|
||||
|
||||
@field_validator('content')
|
||||
def validate_content(cls, value):
|
||||
if not "document_slice" in PromptTemplate.from_template(value).input_variables:
|
||||
raise ValueError("模板变量缺少 document_slice")
|
||||
return value
|
Loading…
x
Reference in New Issue
Block a user