浏览代码

refine multi-turn chat in agent (#2560)

### What problem does this PR solve?

#2484

### Type of change

- [x] Performance Improvement
- [ ] Other (please describe):
tags/v0.12.0
Kevin Hu 1年前
父节点
当前提交
d40041cc82
没有帐户链接到提交者的电子邮件
共有 2 个文件被更改,包括 6 次插入1 次删除
  1. 5
    0
      api/apps/canvas_app.py
  2. 1
    1
      api/apps/llm_app.py

+ 5
- 0
api/apps/canvas_app.py 查看文件

@@ -18,6 +18,8 @@ from functools import partial
from flask import request, Response
from flask_login import login_required, current_user
from api.db.services.canvas_service import CanvasTemplateService, UserCanvasService
from api.db.services.dialog_service import full_question
from api.db.services.user_service import TenantService
from api.settings import RetCode
from api.utils import get_uuid
from api.utils.api_utils import get_json_result, server_error_response, validate_request, get_data_error_result
@@ -108,6 +110,9 @@ def run():
canvas = Canvas(cvs.dsl, current_user.id)
if "message" in req:
canvas.messages.append({"role": "user", "content": req["message"], "id": message_id})
if len([m for m in canvas.messages if m["role"] == "user"]) > 1:
ten = TenantService.get_by_user_id(current_user.id)[0]
req["message"] = full_question(ten["tenant_id"], ten["llm_id"], canvas.messages)
canvas.add_user_input(req["message"])
answer = canvas.run(stream=stream)
print(canvas)

+ 1
- 1
api/apps/llm_app.py 查看文件

@@ -287,7 +287,7 @@ def delete_llm():
@manager.route('/delete_factory', methods=['POST'])
@login_required
@validate_request("llm_factory")
def delete_llm():
def delete_factory():
req = request.json
TenantLLMService.filter_delete(
[TenantLLM.tenant_id == current_user.id, TenantLLM.llm_factory == req["llm_factory"]])

正在加载...
取消
保存