feat: 三个工具对应的接口
This commit is contained in:
@@ -1,6 +1,13 @@
|
||||
import json
|
||||
|
||||
from app.tools.tool_project_analysis import tool_project_analysis
|
||||
from fastapi import FastAPI
|
||||
from fastapi import Query
|
||||
from starlette.requests import Request
|
||||
|
||||
from app.tools.tool_project_report import tool_project_report
|
||||
from app.tools.tool_retrieve_documents import tool_retrieve_documents
|
||||
|
||||
|
||||
def add_api_route(app: FastAPI):
|
||||
# 用于dify自定义插件授权认证接口
|
||||
@@ -10,3 +17,29 @@ def add_api_route(app: FastAPI):
|
||||
):
|
||||
print("request.state", request.state)
|
||||
return request.state.user
|
||||
|
||||
# 项目成本分析报告
|
||||
@app.get('/api/project/analysis')
|
||||
async def project_analysis(project_name=Query(..., description="项目名称")):
|
||||
tool_result_string = await tool_project_analysis.ainvoke({"project_name": project_name})
|
||||
tool_result_data = json.loads(tool_result_string)
|
||||
return tool_result_data[0]
|
||||
|
||||
# 项目日报总结
|
||||
@app.get('/api/project/report')
|
||||
async def project_analysis(
|
||||
project_name=Query(..., description="项目名称"),
|
||||
start_time=Query(default=None, description="开始时间(可选参数)格式为YYYY-MM-DD"),
|
||||
end_time=Query(default=None, description="结束时间(可选参数)格式为YYYY-MM-DD"),
|
||||
):
|
||||
tool_result_string = await tool_project_report.ainvoke({
|
||||
"project_name": project_name,
|
||||
"start_time": start_time,
|
||||
"end_time": end_time,
|
||||
})
|
||||
return json.loads(tool_result_string)
|
||||
|
||||
# 检索企业内部文档工具
|
||||
@app.get('/api/document/retrieve')
|
||||
async def document_retrieve(question=Query(..., description="用户的问题")):
|
||||
return await tool_retrieve_documents.ainvoke({"question": question})
|
||||
|
||||
Reference in New Issue
Block a user