nlp.py 868 B

1234567891011121314151617181920212223242526
  1. import httpx
  2. from fastapi import APIRouter, Query
  3. from loguru import logger
  4. from app.controllers.nlp.meeting import get_caught_result
  5. from app.models.domain.nlp import MeetingInfoResponse
  6. router = APIRouter()
  7. @router.get('/meeting/info', response_model=MeetingInfoResponse)
  8. async def catch_meeting_info(sentence: str = Query(..., max_length=100)):
  9. r = httpx.get('https://api.github.com/users/octocat/orgs') # Test external network
  10. logger.debug(r.status_code)
  11. start_time, end_time, duration, room_size, topic, name_list = await get_caught_result(sentence)
  12. response = {
  13. 'Message': 'success',
  14. 'AcceptableStartTime': start_time,
  15. 'AcceptableEndTime': end_time,
  16. 'MeetingDurationSeconds': duration,
  17. 'MeetingRoomSize': room_size,
  18. 'Topic': topic,
  19. 'Participants': name_list
  20. }
  21. return response