754214692e
- 新增 ai_enabled/ai_api_key/ai_base_url/ai_model 等配置项,通过 .env 管理 - 新增 app/services/ai_analyzer.py — DeepSeek API 调用 + 详情页正文提取 - 新增 extract_page_content() 从详情页抓取正文供 AI 分析 - Announcement 模型新增 ai_relevant / ai_analysis 字段 - 流水线集成 AI 分析步骤(关键词匹配后、通知前) - AI 标记为可承接的项目额外发送 markdown 着重通知 - 创建 alembic 迁移版本 6e8f4c2d1b0a
31 lines
834 B
Python
31 lines
834 B
Python
"""add_ai_analysis_columns
|
|
|
|
Revision ID: 6e8f4c2d1b0a
|
|
Revises: 1f59799a5083
|
|
Create Date: 2026-05-21 10:00:00.000000
|
|
|
|
"""
|
|
from typing import Sequence, Union
|
|
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
|
|
# revision identifiers, used by Alembic.
|
|
revision: str = '6e8f4c2d1b0a'
|
|
down_revision: Union[str, Sequence[str], None] = '1f59799a5083'
|
|
branch_labels: Union[str, Sequence[str], None] = None
|
|
depends_on: Union[str, Sequence[str], None] = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
"""添加 AI 分析相关字段"""
|
|
op.add_column('announcements', sa.Column('ai_relevant', sa.Boolean(), nullable=True))
|
|
op.add_column('announcements', sa.Column('ai_analysis', sa.Text(), nullable=True))
|
|
|
|
|
|
def downgrade() -> None:
|
|
"""回滚"""
|
|
op.drop_column('announcements', 'ai_analysis')
|
|
op.drop_column('announcements', 'ai_relevant')
|