Kevin Hu
commited on
Commit
·
e123321
1
Parent(s):
589b0da
refine multi-turn chat in agent (#2560)
Browse files### What problem does this PR solve?
#2484
### Type of change
- [x] Performance Improvement
- [ ] Other (please describe):
- api/apps/canvas_app.py +5 -0
- api/apps/llm_app.py +1 -1
api/apps/canvas_app.py
CHANGED
@@ -18,6 +18,8 @@ from functools import partial
|
|
18 |
from flask import request, Response
|
19 |
from flask_login import login_required, current_user
|
20 |
from api.db.services.canvas_service import CanvasTemplateService, UserCanvasService
|
|
|
|
|
21 |
from api.settings import RetCode
|
22 |
from api.utils import get_uuid
|
23 |
from api.utils.api_utils import get_json_result, server_error_response, validate_request, get_data_error_result
|
@@ -108,6 +110,9 @@ def run():
|
|
108 |
canvas = Canvas(cvs.dsl, current_user.id)
|
109 |
if "message" in req:
|
110 |
canvas.messages.append({"role": "user", "content": req["message"], "id": message_id})
|
|
|
|
|
|
|
111 |
canvas.add_user_input(req["message"])
|
112 |
answer = canvas.run(stream=stream)
|
113 |
print(canvas)
|
|
|
18 |
from flask import request, Response
|
19 |
from flask_login import login_required, current_user
|
20 |
from api.db.services.canvas_service import CanvasTemplateService, UserCanvasService
|
21 |
+
from api.db.services.dialog_service import full_question
|
22 |
+
from api.db.services.user_service import TenantService
|
23 |
from api.settings import RetCode
|
24 |
from api.utils import get_uuid
|
25 |
from api.utils.api_utils import get_json_result, server_error_response, validate_request, get_data_error_result
|
|
|
110 |
canvas = Canvas(cvs.dsl, current_user.id)
|
111 |
if "message" in req:
|
112 |
canvas.messages.append({"role": "user", "content": req["message"], "id": message_id})
|
113 |
+
if len([m for m in canvas.messages if m["role"] == "user"]) > 1:
|
114 |
+
ten = TenantService.get_by_user_id(current_user.id)[0]
|
115 |
+
req["message"] = full_question(ten["tenant_id"], ten["llm_id"], canvas.messages)
|
116 |
canvas.add_user_input(req["message"])
|
117 |
answer = canvas.run(stream=stream)
|
118 |
print(canvas)
|
api/apps/llm_app.py
CHANGED
@@ -287,7 +287,7 @@ def delete_llm():
|
|
287 |
@manager.route('/delete_factory', methods=['POST'])
|
288 |
@login_required
|
289 |
@validate_request("llm_factory")
|
290 |
-
def
|
291 |
req = request.json
|
292 |
TenantLLMService.filter_delete(
|
293 |
[TenantLLM.tenant_id == current_user.id, TenantLLM.llm_factory == req["llm_factory"]])
|
|
|
287 |
@manager.route('/delete_factory', methods=['POST'])
|
288 |
@login_required
|
289 |
@validate_request("llm_factory")
|
290 |
+
def delete_factory():
|
291 |
req = request.json
|
292 |
TenantLLMService.filter_delete(
|
293 |
[TenantLLM.tenant_id == current_user.id, TenantLLM.llm_factory == req["llm_factory"]])
|