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
0
Merge Requests
0
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
9ffb8e4a
Commit
9ffb8e4a
authored
Oct 25, 2024
by
alex yao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
优化每日推荐问生成
parent
14f421af
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
19 deletions
+24
-19
AgentApplicationServiceImpl.java
...oc/expose/aggregate/impl/AgentApplicationServiceImpl.java
+24
-19
No files found.
src/main/java/cn/com/poc/expose/aggregate/impl/AgentApplicationServiceImpl.java
View file @
9ffb8e4a
...
@@ -186,28 +186,33 @@ public class AgentApplicationServiceImpl implements AgentApplicationService {
...
@@ -186,28 +186,33 @@ public class AgentApplicationServiceImpl implements AgentApplicationService {
@Override
@Override
public
void
createRecommendQuestion
()
throws
InterruptedException
{
public
void
createRecommendQuestion
()
throws
InterruptedException
{
List
<
Object
>
questions
=
new
CopyOnWriteArrayList
<>();
// List<Object> questions = new CopyOnWriteArrayList<>();
CountDownLatch
countDownLatch
=
new
CountDownLatch
(
20
);
// CountDownLatch countDownLatch = new CountDownLatch(20);
// for (int i = 0; i < 20; i++) {
// CommonThreadPoolExecutor.addTask(() -> {
// });
// }
// countDownLatch.await(2, TimeUnit.MINUTES);
// countDownLatch.countDown();
Message
message
=
new
Message
();
message
.
setRole
(
AgentApplicationDialoguesRecordConstants
.
ROLE
.
USER
);
message
.
setContent
(
"请你充当一个话题生成器,结合百度热榜数据,用json格式生成15条开放和引导式的推荐话题给我,我需要用于向AI提问问题,参考格式[\"话题内容\",\"话题N内容\"],要求1.避免涉及敏感或争议性过强的话题,以确保问题的中立性和客观性。2.只要求生成话题,不需要旁白"
);
for
(
int
i
=
0
;
i
<
20
;
i
++)
{
Message
[]
messages
=
new
Message
[]{
message
};
CommonThreadPoolExecutor
.
addTask
(()
->
{
LargeModelResponse
largeModelResponse
=
new
LargeModelResponse
();
Message
message
=
new
Message
();
largeModelResponse
.
setModel
(
"ERNIE-4.0-8K"
);
message
.
setRole
(
AgentApplicationDialoguesRecordConstants
.
ROLE
.
USER
);
largeModelResponse
.
setMessages
(
messages
);
message
.
setContent
(
"请给我生成一个推荐问题,不超过50字,只需输出问题即可,不要输出额外的内容,不要换行"
);
LargeModelDemandResult
largeModelDemandResult
=
llmService
.
chat
(
largeModelResponse
);
Message
[]
messages
=
new
Message
[]{
message
};
if
(
largeModelResponse
==
null
||
!
"0"
.
equals
(
largeModelDemandResult
.
getCode
()))
{
LargeModelResponse
largeModelResponse
=
new
LargeModelResponse
();
largeModelResponse
.
setModel
(
"ERNIE-4.0-8K"
);
largeModelResponse
.
setMessages
(
messages
);
LargeModelDemandResult
largeModelDemandResult
=
llmService
.
chat
(
largeModelResponse
);
questions
.
add
(
largeModelDemandResult
.
getMessage
());
countDownLatch
.
countDown
();
});
}
countDownLatch
.
await
(
2
,
TimeUnit
.
MINUTES
);
if
(
CollectionUtils
.
isEmpty
(
questions
))
{
throw
new
BusinessException
(
"生成推荐问题失败"
);
throw
new
BusinessException
(
"生成推荐问题失败"
);
}
}
String
res
=
largeModelDemandResult
.
getMessage
();
int
start
=
res
.
lastIndexOf
(
"["
);
int
end
=
res
.
lastIndexOf
(
"]"
);
List
<
Object
>
questions
=
(
List
<
Object
>)
JsonUtils
.
deSerialize
(
res
.
substring
(
start
,
end
+
1
),
new
TypeReference
<
List
<
Object
>>()
{
}.
getType
());
redisService
.
del
(
AGENT_APPLICATION_RECOMMEND_QUESTIONS
);
redisService
.
del
(
AGENT_APPLICATION_RECOMMEND_QUESTIONS
);
redisService
.
lSet
(
AGENT_APPLICATION_RECOMMEND_QUESTIONS
,
questions
);
redisService
.
lSet
(
AGENT_APPLICATION_RECOMMEND_QUESTIONS
,
questions
);
}
}
...
...
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