Spaces:
Running
Running
| from pydantic import BaseModel | |
| from typing import List, Dict, Optional, Any | |
| class CompetitorText(BaseModel): | |
| id: int | |
| text: str | |
| class AnalysisRequest(BaseModel): | |
| target_text: str # Текст пользователя | |
| competitors: List[str] # Список текстов конкурентов | |
| keywords: List[str] # Список ключевых фраз (сырых) | |
| language: str = "en" # en, ru, de, es, it | |
| target_title: str = "" # Title пользователя | |
| competitor_titles: List[str] = [] # Title конкурентов | |
| class AnalysisResponse(BaseModel): | |
| ngram_stats: dict # Статистика униграм/биграм | |
| bm25_recommendations: List[dict] # Рекомендации "добавить/убрать" | |
| bert_analysis: Dict[str, Any] # Векторный анализ | |
| word_counts: Dict[str, Any] # {'target': 500, 'competitors': [600, 450], 'avg': 525} | |
| title_analysis: Dict[str, Any] = {} # Анализ Title |