
接着往下看 LangChain4j 系列文章,通过上篇文章 LangChain4j - LangChain4j 标准 RAG 实战 我们已经了解了如何使用 LangChain4j 来实现一个标准的 RAG(Retrieval-Augmented Generation)应用。在本篇文章中,我们将深入探讨 获取引用源文档 的方法和技巧。
如果能够给 AI 的回答下面展示回答来源,更容易增加内容的可信度和说服力。在 RAG 应用中,引用源文档的获取是一个关键环节。
就比如我们平时使用 ChatGPT 时,AI 的回答下方会显示引用的网页链接,这样可以让用户更容易验证信息的来源。

在 LangChain4j 中,实现这个功能很简单。在 AI Service 中新增方法,在原本的返回类型外封装一层 Result 类,就可以获得封装后的结果,从中能够获取到 RAG 引用的源文档、以及 Token 的消耗情况等等。
@SystemMessage(fromResource = "system-prompt.txt")
Result<String> chatWithRag(String userMessage);
修改单元测试,输出更多信息:
@Test
void chatWithRag() {
Result<String> result = aiCodeHelperService.chatWithRag("怎么学习 Java?有哪些常见面试题?");
String content = result.content();
List<Content> sources = result.sources();
System.out.println(content);
System.out.println(sources);
}执行效果如图,获取到了引用的源文档信息:

如果这篇文章帮到了你,不妨点个分享给同样需要的朋友吧! 你的每一次支持,都是我持续创作的动力!💪
往期推荐:
序号 | 文章标题 | 链接 |
|---|---|---|
1 | MCP协议爆火揭秘 | 查看详情 |
2 | 轻松配置Cursor玩转MCP | 查看详情 |
3 | Browser-Tool 前端开发神器 | 查看详情 |
4 | AI编码焕新:用Context7 | 查看详情 |
5 | NotebookLM:靠谱知识库 | 查看详情 |
6 | Spring AI 玩转多轮对话 | 查看详情 |
7 | Cursor生成UI,加一步封神 | 查看详情 |
8 | 神器!免费替代Postman | 查看详情 |