智教助手平台:完整初始化
- 前端:Vue3 + TS + Element Plus,24 个页面路由(课件/组题/教案/动画/思维导图/作文批改/命题/课堂/资源/社区等) - 后端:FastAPI + SQLAlchemy + SQLite,17 个路由模块,AI 服务层含降级模板 - AI:glm-5.x 推理模型已禁用思维链,确保输出真实内容 - 修复:ai_service 两处请求体注入 enable_thinking/thinking disabled - 测试账号:13900999999 / test1234
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
from datetime import datetime
|
||||
from typing import Any, Optional
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class ClassroomActivityCreate(BaseModel):
|
||||
title: str = Field(..., min_length=1, max_length=200)
|
||||
activity_type: str = Field(default="poll", max_length=50)
|
||||
description: str = ""
|
||||
config: dict[str, Any] = {}
|
||||
status: str = "draft"
|
||||
|
||||
|
||||
class ClassroomActivityUpdate(BaseModel):
|
||||
title: Optional[str] = None
|
||||
activity_type: Optional[str] = None
|
||||
description: Optional[str] = None
|
||||
config: Optional[dict[str, Any]] = None
|
||||
responses: Optional[list[dict[str, Any]]] = None
|
||||
status: Optional[str] = None
|
||||
|
||||
|
||||
class ClassroomResponseCreate(BaseModel):
|
||||
student_name: str = Field(default="", max_length=50)
|
||||
answer: Any
|
||||
meta: dict[str, Any] = {}
|
||||
|
||||
|
||||
class ClassroomActivityOut(BaseModel):
|
||||
id: int
|
||||
user_id: int
|
||||
title: str
|
||||
activity_type: str = "poll"
|
||||
description: str = ""
|
||||
config: dict = {}
|
||||
responses: list = []
|
||||
status: str = "draft"
|
||||
created_at: datetime | None = None
|
||||
updated_at: datetime | None = None
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
|
||||
class ClassroomOptionStat(BaseModel):
|
||||
option: str
|
||||
count: int = 0
|
||||
percent: int = 0
|
||||
|
||||
|
||||
class ClassroomKeywordStat(BaseModel):
|
||||
keyword: str
|
||||
count: int = 0
|
||||
|
||||
|
||||
class ClassroomAnalysisOut(BaseModel):
|
||||
activity_id: int
|
||||
title: str
|
||||
activity_type: str = "poll"
|
||||
question: str = ""
|
||||
response_count: int = 0
|
||||
participant_count: int = 0
|
||||
option_stats: list[ClassroomOptionStat] = Field(default_factory=list)
|
||||
keywords: list[ClassroomKeywordStat] = Field(default_factory=list)
|
||||
common_answers: list[str] = Field(default_factory=list)
|
||||
mastery_level: str = "暂无数据"
|
||||
accuracy: int | None = None
|
||||
diagnosis: list[str] = Field(default_factory=list)
|
||||
teaching_suggestions: list[str] = Field(default_factory=list)
|
||||
followup_prompt: str = ""
|
||||
generated_at: datetime | None = None
|
||||
Reference in New Issue
Block a user