OllamaChatModel是否已不再被定义为Spring Bean?
问题描述
我正在学习一篇Spring AI + Ollama构建聊天机器人的教程,运行Spring Boot应用时遇到以下错误:
No qualifying bean of type 'org.springframework.ai.ollama.OllamaChatModel' available
查看OllamaChatModel类源码后发现,它未被标注为Spring Bean,无法被组件扫描识别,但教程代码却直接依赖注入该类,默认它是一个可用的Bean。我的问题是:OllamaChatModel是否已不再作为Spring Bean存在?
解答
是的,当前版本的OllamaChatModel确实不再是自动注册的Spring Bean。
Spring AI的Ollama模块在版本迭代中调整了Bean注册逻辑:
- 早期版本可能通过自动配置类自动创建
OllamaChatModel实例并注册为Bean,但现在需要开发者手动声明Bean。 - 解决方法是在配置类中手动创建并返回
OllamaChatModel实例,示例代码如下:
@Configuration public class OllamaConfig { @Bean public OllamaChatModel ollamaChatModel() { return new OllamaChatModel(OllamaApi.builder().baseUrl("http://localhost:11434").build()); } }
- 你参考的教程代码基于旧版本Spring AI编写,未同步适配最新的Bean注册规则,因此出现依赖注入失败的问题。
内容的提问来源于stack exchange,提问作者hawkeye
相关产品推荐
相关产品推荐

