- AiSetting 模型新增 6 个提示词字段 + 3 个阶段温度字段 - main.py 迁移逻辑改为检测 ai_settings 表的新字段并填充默认值 - generate.py 从数据库读取生成提示词,去掉硬编码 - optimizer 从 API 读取各阶段提示词和温度,删除 prompts.py - crawler 从 API 读取提取/改写提示词和温度,删除 prompts.py - settings/active 端点去掉 token 认证(供爬虫/优化器使用) - 后台设置页新增提示词编辑区和温度调节控件 - 新增 _ensure_default_settings 自动创建默认配置
31 lines
1.2 KiB
Python
31 lines
1.2 KiB
Python
from pydantic import BaseModel, Field
|
|
|
|
|
|
class AiSettingBase(BaseModel):
|
|
provider: str = Field(default="nvidia")
|
|
api_base: str = Field(default="https://integrate.api.nvidia.com/v1")
|
|
api_key: str = Field(default="")
|
|
model_name: str = Field(default="nvidia/llama-3.1-nemotron-70b-instruct")
|
|
temperature: float = Field(default=0.7, ge=0, le=2)
|
|
max_tokens: int = Field(default=2048, ge=1)
|
|
|
|
# 提示词
|
|
generate_prompt: str = Field(default="")
|
|
optimizer_quality_prompt: str = Field(default="")
|
|
optimizer_polish_prompt: str = Field(default="")
|
|
optimizer_evaluate_prompt: str = Field(default="")
|
|
crawler_extract_prompt: str = Field(default="")
|
|
crawler_rewrite_prompt: str = Field(default="")
|
|
|
|
# 优化器各阶段温度
|
|
optimizer_quality_temperature: float = Field(default=0.3, ge=0, le=2)
|
|
optimizer_polish_temperature: float = Field(default=0.8, ge=0, le=2)
|
|
optimizer_evaluate_temperature: float = Field(default=0.3, ge=0, le=2)
|
|
|
|
crawl_enabled: bool = Field(default=False)
|
|
crawl_keywords: str = Field(default="")
|
|
max_pages_per_run: int = Field(default=3, ge=1)
|
|
|
|
|
|
class AiSettingCreate(AiSettingBase):
|
|
pass |