|
@@ -194,8 +194,9 @@ public class ChatController {
|
|
|
return docs.stream()
|
|
return docs.stream()
|
|
|
.map(d -> {
|
|
.map(d -> {
|
|
|
String content = (String) d.getOrDefault("content", "");
|
|
String content = (String) d.getOrDefault("content", "");
|
|
|
- // 清理格式:去掉首尾空白、压缩多余换行
|
|
|
|
|
- content = content.replace("\r\n", "\n").replaceAll("\\n{2,}", "\n").trim();
|
|
|
|
|
|
|
+ // 清理:去来源行、合并换行为空格、去首尾空白
|
|
|
|
|
+ content = content.replaceAll("\\s*来源:.*$", "");
|
|
|
|
|
+ content = content.replaceAll("[\\r\\n]+", " ").trim();
|
|
|
String excerpt = content.length() > 500 ? content.substring(0, 500) + "…" : content;
|
|
String excerpt = content.length() > 500 ? content.substring(0, 500) + "…" : content;
|
|
|
return Map.<String, Object>of(
|
|
return Map.<String, Object>of(
|
|
|
"name", d.getOrDefault("source", ""),
|
|
"name", d.getOrDefault("source", ""),
|
|
@@ -215,8 +216,7 @@ public class ChatController {
|
|
|
for (Map<String, Object> d : docs) {
|
|
for (Map<String, Object> d : docs) {
|
|
|
if (count >= 3) break;
|
|
if (count >= 3) break;
|
|
|
String content = (String) d.getOrDefault("content", "");
|
|
String content = (String) d.getOrDefault("content", "");
|
|
|
- // 去掉来源行
|
|
|
|
|
- content = content.replaceAll("\\n*来源:.*$", "").trim();
|
|
|
|
|
|
|
+ content = content.replaceAll("\\s*来源:.*$", "").trim();
|
|
|
if (!content.isEmpty()) {
|
|
if (!content.isEmpty()) {
|
|
|
sb.append(content).append("\n\n");
|
|
sb.append(content).append("\n\n");
|
|
|
count++;
|
|
count++;
|