Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Clark Lin
Fastapi for APEX
Compare Revisions
753bfe8e87baa5e77942adc934d18c6febdf34fa...4f0afe1e3683b8a92f74f6c51db95a97e74684df
Commits (3)
committed currnet version of fastapi-for-apex from prod
· 1204ec96
Clark Lin
authored
Aug 02, 2024
1204ec96
Merge branch 'development' of
https://linyinghao.cn/gitlab/clark/fastapi-for-apex
into development
· f2a08f6b
Clark Lin
authored
Aug 02, 2024
f2a08f6b
fixed issues for initial version
· 4f0afe1e
Clark Lin
authored
Aug 02, 2024
4f0afe1e
Show whitespace changes
Inline
Side-by-side
.gitignore
0 → 100644
View file @
4f0afe1e
*.swp
.vscode/
__pycache__/
backup/
fastapi_service.py
logs/
nohup.out
qcloud/
tmp/
venv/
credential/credential.json
credential/oauth2.json
common/config/logging.json
View file @
4f0afe1e
credential/credential.json
→
credential/credential.json
.bk
View file @
4f0afe1e
credential/oauth2.json
→
credential/oauth2.json
.bk
View file @
4f0afe1e
File moved
fastapi_service.py
View file @
4f0afe1e
...
...
@@ -3,6 +3,9 @@ from fastapi import FastAPI, Query
from
pydantic
import
BaseModel
import
qcloud_cos_service
import
qcloud_ocr_service
import
qcloud_asr_service
import
local_paddle_ocr_service
import
local_whisper_asr_service
import
tongyi_genai_service
from
fastapi.responses
import
StreamingResponse
...
...
@@ -87,12 +90,26 @@ async def get_download_url(file_download_req: qcloud_cos_service.file_download_r
@
app
.
post
(
"/get_detected_text/"
)
async
def
get_detected_text
(
ocr_req
:
qcloud_ocr_service
.
ocr_req_basemodel
):
if
ocr_req
.
tool
==
'Q'
:
if
ocr_req
.
ocr_
tool
==
'Q'
:
# Call Qcloud API
return
qcloud_ocr_service
.
get_
qcloud_
detected_text
(
ocr_req
)
elif
ocr_req
.
tool
==
'LP'
:
return
qcloud_ocr_service
.
get_detected_text
(
ocr_req
)
elif
ocr_req
.
ocr_
tool
==
'LP'
:
# Call Local PaddleOCR API
return
qcloud_ocr_service
.
get_paddleocr_detected_text
(
ocr_req
)
return
local_paddle_ocr_service
.
get_detected_text
(
ocr_req
)
# ------------------------------------------------
# Call ASR Service Process
# ------------------------------------------------
@
app
.
post
(
"/get_detected_asr_text/"
)
async
def
get_detected_text
(
asr_req
:
local_whisper_asr_service
.
asr_req_basemodel
):
if
asr_req
.
asr_tool
==
'W'
:
# Call Local Whisper ASR API
return
local_whisper_asr_service
.
get_detected_text
(
asr_req
)
elif
asr_req
.
asr_tool
==
'Q'
:
# Call Qcloud ASR API
return
qcloud_asr_service
.
get_detected_text
(
asr_req
)
# ------------------------------------------------
...
...
local_paddle_ocr_service.py
View file @
4f0afe1e
...
...
@@ -203,5 +203,3 @@ def get_detected_text(ocr_req: ocr_req_basemodel) -> tuple:
return
ocr_res
local_whisper_asr_service.py
View file @
4f0afe1e
...
...
@@ -203,5 +203,3 @@ def get_detected_text(asr_req: asr_req_basemodel) -> tuple:
return
asr_res
qcloud_asr_service.py
View file @
4f0afe1e
...
...
@@ -172,4 +172,3 @@ def get_detected_text(asr_req: asr_req_basemodel) -> tuple:
asr_resp
.
result_message
=
str
(
e
)
return
asr_resp
qcloud_cos_service.py
View file @
4f0afe1e
...
...
@@ -278,4 +278,3 @@ def get_download_url(file_download_req: file_download_req_basemodel):
return
file_download_res
qcloud_service.py
0 → 100644
View file @
4f0afe1e
# Import FastAPI Libs
from
fastapi
import
FastAPI
from
pydantic
import
BaseModel
import
qcloud_cos_service
import
qcloud_ocr_service
# ------------------------------------------------
# Define FastAPI
# ------------------------------------------------
app
=
FastAPI
()
# ------------------------------------------------
# Call File Upload Service Process
# ------------------------------------------------
@
app
.
post
(
"/upload/"
)
async
def
upload
(
file_uplaod_req
:
qcloud_cos_service
.
file_upload_req_basemodel
):
return
qcloud_cos_service
.
upload
(
file_uplaod_req
)
# ------------------------------------------------
# Call File Download URL Service Process
# ------------------------------------------------
@
app
.
post
(
"/get_download_url/"
)
async
def
get_download_url
(
file_download_req
:
qcloud_cos_service
.
file_download_req_basemodel
):
return
qcloud_cos_service
.
get_download_url
(
file_download_req
)
# ------------------------------------------------
# Call OCR Service Process
# ------------------------------------------------
@
app
.
post
(
"/get_detected_text/"
)
async
def
get_detected_text
(
ocr_req
:
qcloud_ocr_service
.
ocr_req_basemodel
):
return
qcloud_ocr_service
.
get_detected_text
(
ocr_req
)
\ No newline at end of file
tongyi_genai_service.py
View file @
4f0afe1e
...
...
@@ -335,3 +335,4 @@ async def get_answer(uuid: str):
result_message
=
str
(
e
)
lm
.
log
(
logging
.
ERROR
,
'Exception'
,
result_message
)
yield
f
"data: Exception -
{
result_message
}
\n\n
"