完整实战:知识感知聊天机器人
·
下面是一个轻量级的 RAG 模式示例——用 ChatMessage.ofUserAugment() 把上下文注入到 Prompt 中:
import org.noear.solon.ai.chat.ChatModel;
import org.noear.solon.ai.chat.ChatResponse;
import org.noear.solon.ai.chat.message.ChatMessage;
import org.noear.solon.annotation.Component;
import org.noear.solon.annotation.Inject;
@Component
public class KnowledgeChatbot {
@Inject
ChatModel chatModel;
public String answer(String question, String referenceContext) throws Exception {
// 将参考上下文与用户问题合并
ChatMessage augmented = ChatMessage.ofUserAugment(question, referenceContext);
ChatResponse resp = chatModel.prompt(augmented)
.options(o -> o
.temperature(0.3)
.systemPrompt("你是一个知识渊博的助手。请基于提供的参考资料回答。"))
.call();
return resp.getMessage().getContent();
}
}
这种模式——用上下文增强用户输入,再调用模型——正是 Solon AI 中 RAG(检索增强生成)的基础。
- 下一步
ChatModel 只是入口点。Solon AI 还提供:
工具调用 — 用 @ToolMapping 定义 LLM 可调用的 Java 方法
Talent 系统 — 可复用的能力模块
Agent — ReActAgent 和 TeamAgent 实现多步推理
RAG 流水线 — 完整的文档加载、切分、嵌入、检索流程
MCP 协议 — 连接 MCP 服务器使用外部工具
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)