from __future__ import annotations import asyncio import io import re from datetime import datetime from fastapi import APIRouter, Depends, File, Form, HTTPException, Query, Response, UploadFile from sqlalchemy.ext.asyncio import AsyncSession from ...core.response import success_response from ...database import get_db from ...dependencies.auth import get_current_user, require_roles from ...dependencies.tenant import get_tenant_id from ...models import User from ...schemas.rag import ( EntityResolutionRequest, KnowledgeDocCreateRequest, KnowledgeURLCreateRequest, MultiStepSearchRequest, QAExportQuery, QAFeedbackCreateRequest, QAListQuery, QASessionListQuery, QASessionRenameRequest, RAGAskRequest, SymbolSearchRequest, SymbolSyncRequest, ) from ...services.adaptive_rag_service import AdaptiveRAGService from ...services.symbol_index_service import SymbolIndexService router = APIRouter(prefix="/rag", tags=["Adaptive RAG"])