27 lines
866 B
Python
27 lines
866 B
Python
from fastapi import APIRouter, HTTPException
|
|
from typing import List
|
|
from app.schemas.parser import ParseRequest, ParseResponse
|
|
from app.core.services.parser_service import ParserService
|
|
|
|
router = APIRouter()
|
|
parser_service = ParserService()
|
|
|
|
|
|
@router.post("/parse/", response_model=List[ParseResponse])
|
|
async def parse_training_data(request: ParseRequest):
|
|
try:
|
|
result = await parser_service.parse_data(request)
|
|
return result
|
|
except Exception as e:
|
|
raise HTTPException(status_code=500, detail=str(e))
|
|
|
|
|
|
@router.get("/supported-formats/")
|
|
async def get_supported_formats():
|
|
return {
|
|
"formats": [
|
|
{"name": "apple", "description": "Apple Notes format"},
|
|
{"name": "obsidian", "description": "Obsidian Markdown format"},
|
|
{"name": "text", "description": "Plain text format"}
|
|
]
|
|
}
|