Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
P
poc-api
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
poc
poc-api
Commits
fe7e6177
Commit
fe7e6177
authored
Sep 18, 2025
by
alex yao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix[车险]:修复对话结束无[DONE]输出问题
parent
19a3f26f
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
57 additions
and
53 deletions
+57
-53
pom.xml
pom.xml
+1
-1
AiDialoguesServiceImpl.java
...c/ai_dialogues/aggregate/impl/AiDialoguesServiceImpl.java
+56
-52
No files found.
pom.xml
View file @
fe7e6177
...
@@ -340,7 +340,7 @@
...
@@ -340,7 +340,7 @@
<dependency>
<dependency>
<groupId>
com.baidubce
</groupId>
<groupId>
com.baidubce
</groupId>
<artifactId>
appbuilder
</artifactId>
<artifactId>
appbuilder
</artifactId>
<version>
0.9.4
</version>
<version>
1.1.0
</version>
</dependency>
</dependency>
<dependency>
<dependency>
...
...
src/main/java/cn/com/poc/ai_dialogues/aggregate/impl/AiDialoguesServiceImpl.java
View file @
fe7e6177
...
@@ -339,65 +339,69 @@ public class AiDialoguesServiceImpl implements AiDialoguesService {
...
@@ -339,65 +339,69 @@ public class AiDialoguesServiceImpl implements AiDialoguesService {
StringBuilder
reasoningContentBuilder
=
new
StringBuilder
();
StringBuilder
reasoningContentBuilder
=
new
StringBuilder
();
long
inputTimeStamp
=
System
.
currentTimeMillis
();
long
inputTimeStamp
=
System
.
currentTimeMillis
();
if
(
dialoguesType
.
equals
(
AiDialoguesTypeEnum
.
CAR_INSURANCE
.
getType
()))
{
//AppBuilder
try
{
BizAiDialogues3rdRelationEntity
bizAiDialogues3rdRelationEntity
=
new
BizAiDialogues3rdRelationEntity
();
if
(
dialoguesType
.
equals
(
AiDialoguesTypeEnum
.
CAR_INSURANCE
.
getType
()))
{
//AppBuilder
bizAiDialogues3rdRelationEntity
.
setDialoguesId
(
dialoguesId
);
BizAiDialogues3rdRelationEntity
bizAiDialogues3rdRelationEntity
=
new
BizAiDialogues3rdRelationEntity
();
bizAiDialogues3rdRelationEntity
.
setPlatform
(
DialoguesPlatformEnum
.
AppBuilder
.
getPlatform
());
bizAiDialogues3rdRelationEntity
.
setDialoguesId
(
dialoguesId
);
bizAiDialogues3rdRelationEntity
.
setIsDeleted
(
CommonConstant
.
IsDeleted
.
N
);
bizAiDialogues3rdRelationEntity
.
setPlatform
(
DialoguesPlatformEnum
.
AppBuilder
.
getPlatform
());
List
<
BizAiDialogues3rdRelationEntity
>
relationEntities
=
bizAiDialogues3rdRelationService
.
findByExample
(
bizAiDialogues3rdRelationEntity
,
null
);
bizAiDialogues3rdRelationEntity
.
setIsDeleted
(
CommonConstant
.
IsDeleted
.
N
);
if
(
CollectionUtils
.
isEmpty
(
relationEntities
))
{
List
<
BizAiDialogues3rdRelationEntity
>
relationEntities
=
bizAiDialogues3rdRelationService
.
findByExample
(
bizAiDialogues3rdRelationEntity
,
null
);
throw
new
BusinessException
(
"获取会话配置异常"
);
if
(
CollectionUtils
.
isEmpty
(
relationEntities
))
{
}
throw
new
BusinessException
(
"获取会话配置异常"
);
AppBuilderClientIterator
iterator
=
appBuilderService
.
communication
(
relationEntities
.
get
(
0
).
getRelationId
(),
input
,
null
,
true
);
}
while
(
iterator
.
hasNext
())
{
AppBuilderClientIterator
iterator
=
appBuilderService
.
communication
(
relationEntities
.
get
(
0
).
getRelationId
(),
input
,
null
,
true
);
AppBuilderClientResult
res
=
iterator
.
next
();
while
(
iterator
.
hasNext
())
{
LargeModelDemandResult
largeModelDemandResult
=
new
LargeModelDemandResult
();
AppBuilderClientResult
res
=
iterator
.
next
();
if
(
ArrayUtils
.
isNotEmpty
(
res
.
getEvents
()))
{
LargeModelDemandResult
largeModelDemandResult
=
new
LargeModelDemandResult
();
Event
event
=
res
.
getEvents
()[
0
];
largeModelDemandResult
.
setCode
(
"0"
);
String
eventType
=
event
.
getEventType
();
if
(
ArrayUtils
.
isNotEmpty
(
res
.
getEvents
()))
{
if
(
"chatflow"
.
equals
(
eventType
))
{
Event
event
=
res
.
getEvents
()[
0
];
Map
<
String
,
Object
>
detail
=
event
.
getDetail
();
String
eventType
=
event
.
getEventType
();
if
(
detail
.
containsKey
(
"message"
))
{
if
(
"chatflow"
.
equals
(
eventType
))
{
String
mess
=
detail
.
get
(
"message"
).
toString
();
Map
<
String
,
Object
>
detail
=
event
.
getDetail
();
largeModelDemandResult
.
setMessage
(
mess
);
if
(
detail
.
containsKey
(
"message"
))
{
contentBuilder
.
append
(
mess
);
String
mess
=
detail
.
get
(
"message"
).
toString
();
largeModelDemandResult
.
setMessage
(
mess
);
contentBuilder
.
append
(
mess
);
}
}
}
}
else
if
(
StringUtils
.
isNotEmpty
(
res
.
getAnswer
()))
{
largeModelDemandResult
.
setMessage
(
res
.
getAnswer
());
contentBuilder
.
append
(
res
.
getAnswer
());
}
}
}
else
if
(
StringUtils
.
isNotEmpty
(
res
.
getAnswer
()))
{
sseUtil
.
send
(
JsonUtils
.
serialize
(
largeModelDemandResult
));
largeModelDemandResult
.
setMessage
(
res
.
getAnswer
());
contentBuilder
.
append
(
res
.
getAnswer
());
}
}
sseUtil
.
send
(
JsonUtils
.
serialize
(
largeModelDemandResult
));
}
}
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
sseUtil
.
completeByError
(
e
.
getMessage
());
}
finally
{
sseUtil
.
send
(
"[DONE]"
);
sseUtil
.
send
(
"[DONE]"
);
sseUtil
.
complete
();
sseUtil
.
complete
();
//保存对话记录
//用户输入记录
BizAgentApplicationDialoguesRecordEntity
inputRecord
=
new
BizAgentApplicationDialoguesRecordEntity
();
inputRecord
.
setAgentId
(
null
);
inputRecord
.
setMemberId
(
userId
);
inputRecord
.
setContent
(
input
);
inputRecord
.
setDialogsId
(
dialoguesId
);
inputRecord
.
setRole
(
AgentApplicationDialoguesRecordConstants
.
ROLE
.
USER
);
inputRecord
.
setTimestamp
(
inputTimeStamp
);
bizAgentApplicationDialoguesRecordService
.
save
(
inputRecord
);
//AI输出记录
BizAgentApplicationDialoguesRecordEntity
outputRecord
=
new
BizAgentApplicationDialoguesRecordEntity
();
outputRecord
.
setRole
(
AgentApplicationDialoguesRecordConstants
.
ROLE
.
ASSISTANT
);
outputRecord
.
setAgentId
(
null
);
outputRecord
.
setDialogsId
(
dialoguesId
);
outputRecord
.
setMemberId
(
userId
);
if
(
toolFunction
!=
null
)
{
outputRecord
.
setFunction
(
JsonUtils
.
serialize
(
toolFunction
));
}
outputRecord
.
setTimestamp
(
System
.
currentTimeMillis
());
outputRecord
.
setContent
(
contentBuilder
.
toString
());
outputRecord
.
setReasoningContent
(
reasoningContentBuilder
.
toString
());
bizAgentApplicationDialoguesRecordService
.
save
(
outputRecord
);
}
}
//保存对话记录
//用户输入记录
BizAgentApplicationDialoguesRecordEntity
inputRecord
=
new
BizAgentApplicationDialoguesRecordEntity
();
inputRecord
.
setAgentId
(
null
);
inputRecord
.
setMemberId
(
userId
);
inputRecord
.
setContent
(
input
);
inputRecord
.
setDialogsId
(
dialoguesId
);
inputRecord
.
setRole
(
AgentApplicationDialoguesRecordConstants
.
ROLE
.
USER
);
inputRecord
.
setTimestamp
(
inputTimeStamp
);
bizAgentApplicationDialoguesRecordService
.
save
(
inputRecord
);
//AI输出记录
BizAgentApplicationDialoguesRecordEntity
outputRecord
=
new
BizAgentApplicationDialoguesRecordEntity
();
outputRecord
.
setRole
(
AgentApplicationDialoguesRecordConstants
.
ROLE
.
ASSISTANT
);
outputRecord
.
setAgentId
(
null
);
outputRecord
.
setDialogsId
(
dialoguesId
);
outputRecord
.
setMemberId
(
userId
);
if
(
toolFunction
!=
null
)
{
outputRecord
.
setFunction
(
JsonUtils
.
serialize
(
toolFunction
));
}
outputRecord
.
setTimestamp
(
System
.
currentTimeMillis
());
outputRecord
.
setContent
(
contentBuilder
.
toString
());
outputRecord
.
setReasoningContent
(
reasoningContentBuilder
.
toString
());
bizAgentApplicationDialoguesRecordService
.
save
(
outputRecord
);
return
contentBuilder
.
toString
();
return
contentBuilder
.
toString
();
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment