o2o-infinith-backend/app/integrations/llm/schemas/market.py

62 lines
1.1 KiB
Python

from pydantic import BaseModel
class MarketCompetitorsInput(BaseModel):
address: str
services: str
class MarketKeywordsInput(BaseModel):
services: str
class MarketTrendInput(BaseModel):
service: str
class MarketTargetAudienceInput(BaseModel):
clinic_name: str
# --- Output ---
class Competitor(BaseModel):
name: str
procedures: list[str]
reputation: str
marketing_channels: list[str]
class MarketCompetitorsOutput(BaseModel):
competitors: list[Competitor]
class Keyword(BaseModel):
keyword: str
monthly_volume: str
competition: str
class MarketKeywordsOutput(BaseModel):
keywords: list[Keyword]
long_tail_keywords: list[str]
class MarketTrendOutput(BaseModel):
market_size: str
growth_rate: str
key_trends: list[str]
channel_effectiveness: list[str]
class AudienceSegment(BaseModel):
age_group: str
gender: str
interested_procedures: list[str]
info_channels: list[str]
decision_factors: list[str]
class MarketTargetAudienceOutput(BaseModel):
segments: list[AudienceSegment]