40 lines
1012 B
Python
40 lines
1012 B
Python
from fastapi import FastAPI
|
|
|
|
from config import __CONFIG__
|
|
# import mysql_connector
|
|
from fastgpt_uploader import upload2fastgpt
|
|
from semanticscholar import search_paper
|
|
|
|
app = FastAPI()
|
|
|
|
def query(query:str):
|
|
res = []
|
|
list = search_paper(query)
|
|
for i in list:
|
|
res.append({
|
|
'id':'','datasetId':__CONFIG__['fastgpt_setId'],
|
|
'collectionId':__CONFIG__['fastgpt_colId'],
|
|
'sourceName':'Semantic Scholar',
|
|
'sourceId?':'',
|
|
'q':str(i['title']),
|
|
'a':str(i['abstract']),
|
|
'score':[
|
|
{
|
|
'type': 'rrf'
|
|
'value':0.8
|
|
}
|
|
]
|
|
})
|
|
print(i['title'])
|
|
return res
|
|
|
|
@app.get("/fastdoi")
|
|
async def get_reference(questions):
|
|
res = query(questions)
|
|
upload2fastgpt(res)
|
|
return res
|
|
|
|
if __name__ == '__main__':
|
|
import uvicorn
|
|
uvicorn.run(app, host="127.0.0.1", port=8964)
|
|
# mysql_connector.end_mysql() |