| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- import json
- from cgitb import reset
- from concurrent.futures import ThreadPoolExecutor
- from typing import List
- from fastapi import APIRouter, BackgroundTasks
- from schemas import ResponseWrapper
- from schemas.schemas import Query, ContentData
- from tools_v1 import query_keyword_summary_results, query_keyword_content_results
- from utils.data_utils import add_data
- from utils.deepseek_utils import get_keywords
- router = APIRouter()
- # 创建线程池执行器
- executor = ThreadPoolExecutor(max_workers=10)
- @router.post("/query", response_model=ResponseWrapper)
- async def query_keyword(query: Query):
- keywords = get_keywords(query.text)['keywords']
- print(keywords)
- summary_res = query_keyword_summary_results(keywords)
- content_res = query_keyword_content_results(keywords)
- res = {'summary_results': summary_res, 'content_results': content_res}
- return ResponseWrapper(
- status_code=200,
- detail="success",
- data=res
- )
- @router.post("/add/data", response_model=ResponseWrapper)
- async def query_keyword(content_list: List[ContentData]):
- res_list = []
- for content in content_list:
- if content.body_text:
- print(content.body_text)
- res = add_data(content.body_text)
- res_list.append(res)
- return ResponseWrapper(
- status_code=200,
- detail="success",
- data=res_list
- )
- # @router.post("/query/keyword/content", response_model=ResponseWrapper)
- # async def query_keyword(query: Query):
- # res = query_keyword_content_results(query.text)
- # return ResponseWrapper(
- # status_code=200,
- # detail="success",
- # data=res
- # )
- # @router.post("/query/embedding", response_model=ResponseWrapper)
- # async def query_keyword(query: Query):
- # res = query_embedding_results(query.text)
- # return ResponseWrapper(
- # status_code=200,
- # detail="success",
- # data=res
- # )
|