fix issue wrong agent prologue for api (#2246)

### What problem does this PR solve?

#2242
### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
This commit is contained in:
Kevin Hu 2024-09-04 19:11:55 +08:00 committed by GitHub
parent 0fe19f3fbc
commit 02fb7a88e3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 10 additions and 4 deletions

View File

@ -299,4 +299,7 @@ class Canvas(ABC):
pat = " => ".join([p.split(":")[0] for p in path[0:l]])
return pat + " => " + pat
return False
return
def get_prologue(self):
return self.components["begin"]["obj"]._param.prologue

View File

@ -151,14 +151,17 @@ def set_conversation():
req = request.json
try:
if objs[0].source == "agent":
e, c = UserCanvasService.get_by_id(objs[0].dialog_id)
e, cvs = UserCanvasService.get_by_id(objs[0].dialog_id)
if not e:
return server_error_response("canvas not found.")
if not isinstance(cvs.dsl, str):
cvs.dsl = json.dumps(cvs.dsl, ensure_ascii=False)
canvas = Canvas(cvs.dsl, objs[0].tenant_id)
conv = {
"id": get_uuid(),
"dialog_id": c.id,
"dialog_id": cvs.id,
"user_id": request.args.get("user_id", ""),
"message": [{"role": "assistant", "content": "Hi there!"}],
"message": [{"role": "assistant", "content": canvas.get_prologue()}],
"source": "agent"
}
API4ConversationService.save(**conv)