Qwen3-32B JSON格式化输出不稳定,微调输出格式

This commit is contained in:
2025-08-28 09:04:29 +08:00
parent cdaf6870d2
commit 660b5f6561
4 changed files with 110 additions and 55 deletions
+41
View File
@@ -107,9 +107,34 @@ class Classification(BaseModel):
vertical_classification:str = Field(description="垂直领域一级分类")
sub_classification:str = Field(description="一级分类下的二级分类")
@classmethod
def get_format_instructions(cls):
return """
格式如下,必须严格以纯JSON格式输出
{
"vertical_classification": "垂直领域一级分类",
"sub_classification": "一级分类下的二级分类"
}
字段说明:
vertical_classification 类型:str 描述:垂直领域一级分类
sub_classification 类型:str 描述:一级分类下的二级分类
"""
class QueryRewrite(BaseModel):
rewrite:str = Field(description="问题改写")
@classmethod
def get_format_instructions(cls):
return """
格式如下:必须严格以纯JSON格式输出
{
"rewrite": "问题改写"
}
字段说明:
rewrite 类型:str 描述:问题改写之后的内容
"""
##########################槽位模型###########################
class SlotBase(BaseModel):
"""槽位基础模型"""
@@ -312,6 +337,22 @@ class StepBackPrompt(BaseModel):
can_use_back_prompt: bool = Field(description="原始查询是否可以进行后退提示(true/false),如果原始查询没有限定词或其他限定词语,则不能进行后退提示")
step_back_query: List[str] = Field(description="后退提示生成的抽象查询(多个)")
@classmethod
def get_format_instructions(cls):
return """
格式如下,必须严格以纯JSON格式输出
{
"original_query": "原始查询",
"can_use_back_prompt": "原始查询是否可以进行后退提示(true/false),如果原始查询没有限定词或其他限定词语,则不能进行后退提示",
"step_back_query": "后退提示生成的抽象查询(多个)"
}
字段说明:
original_query 类型:str 描述:用户输入的原始查询
can_use_back_prompt 类型:bool 描述:原始查询是否可以进行后退提示(true/false),如果原始查询没有限定词或其他限定词语,则不能进行后退提示
step_back_query 类型:List[str] 描述:后退提示生成的抽象查询(多个)
"""
class FollowUpQuestions(BaseModel):
"""后续问题数据模型"""
original_query: str = Field(description="原始查询")