# import os, sys # from typing import List # from externals.databases.pg_crud import create_profile, get_profile_by_id # from services.models.data_model import RawProfile, Profile, AIProfile, Profiles, ResponseExtractOne, ResponseExtractBulk # from services.knowledge.extract_profile import extract_one_profile as extract_one, extract_bulk_profile as extract_bulk from utils.logger import get_logger logger = get_logger("knowledge setup") from sqlalchemy.ext.asyncio import AsyncSession from externals.databases.pg_models import CVUser from services.knowledge.upload_file import KnowledgeFileService from services.knowledge.get_profile import KnowledgeGetProfileService from services.knowledge.delete_file import KnowledgeDeleteService from services.knowledge.extract_profile import KnowledgeExtractService from services.knowledge.score_card import KnowledgeScoreCardService class KnowledgeService: """ Facade / Orchestrator for all Knowledge services """ def __init__(self, db: AsyncSession, user: CVUser): self.db = db self.user = user self.file = KnowledgeFileService(db, user) self.profile = KnowledgeGetProfileService(db, user) self.delete = KnowledgeDeleteService(db, user) self.extract = KnowledgeExtractService(db, user) self.score_card = KnowledgeScoreCardService(db, user)