使用 Spring AI + Ollama 构建生成式 AI 应用的方法
作者:程序猿DD
为了构建生成式AI应用,需要完成两个部分:
- AI大模型服务:有两种方式实现,可以使用大厂的API,也可以自己部署,本文将采用ollama来构建
- 应用构建:调用AI大模型的能力实现业务逻辑,本文将采用Spring Boot + Spring AI来实现Ollama安装与使用
进入官网:https://ollama.com/ ,下载、安装、启动 ollama
参考资料:
具体步骤可以参考这篇文章:手把手教你本地运行Meta最新大模型:Llama3.1
构建 Spring 应用
通过spring initializr创建Spring Boot应用
注意右侧选择Spring Web和Spring AI对Ollama的支持依赖
点击“generate”按钮获取工程
使用IDEA或者任何你喜欢的工具打开该工程,工程结构如下;
写个单元测试,尝试在Spring Boot应用里调用本地的ollama服务
@SpringBootTest(classes = DemoApplication.class) class DemoApplicationTests { @Autowired private OllamaChatModel chatModel; @Test void ollamaChat() { ChatResponse response = chatModel.call( new Prompt( "Spring Boot适合做什么?", OllamaOptions.builder() .withModel(OllamaModel.LLAMA3_1) .withTemperature(0.4) .build() )); System.out.println(response); } }
运行得到如下输出:
ChatResponse [metadata={ id: , usage: { promptTokens: 17, generationTokens: 275, totalTokens: 292 }, rateLimit: org.springframework.ai.chat.metadata.EmptyRateLimit@7b3feb26 }, generations=[Generation[assistantMessage=AssistantMessage [messageType=ASSISTANT, toolCalls=[], textContent=Spring Boot是一个基于Java的快速开发框架,主要用于创建独立的、生产级别的应用程序。它提供了一个简化的配置过程,使得开发者能够快速构建和部署Web应用程序。
Spring Boot适合做以下几件事情:
1. **快速开发**: Spring Boot提供了一系列的自动配置功能,可以帮助开发者快速创建基本的应用程序,减少手动编写配置代码的时间。
2. **独立运行**: Spring Boot可以作为一个独立的应用程序运行,不需要额外的容器或服务器支持。
3. **生产级别的应用程序**: Spring Boot提供了许多生产级别的特性,例如安全、监控和部署等功能,可以帮助开发者创建高性能、可靠的应用程序。
4. **Web 应用程序**: Spring Boot可以用于创建Web应用程序,包括RESTful API、WebSockets和其他类型的Web应用程序。
5. **微服务架构**: Spring Boot支持微服务架构,允许开发者将一个大型应用程序分解成多个小型服务,每个服务都可以独立运行和部署。总之,Spring Boot是一个强大的框架,可以帮助开发者快速创建、测试和部署生产级别的应用程序。, metadata={messageType=ASSISTANT}], chatGenerationMetadata=ChatGenerationMetadata{finishReason=stop,contentFilterMetadata=null}]]]
上述样例工程打包放公众号了,如果需要的话,关注"程序猿DD",发送关键词spring+ollama
获得下载链接。
小结
通过本文的介绍,我们就已经完成了Spring Boot应用与Ollama运行的AI模型之间的对接。剩下的就是与业务逻辑的结合实现,这里读者根据自己的需要去实现即可。
可能存在的一些疑问
如何使用其他AI模型
通过ollama的 Models 页面,可以找到各种其他模型:
选择你要使用的模型来启动即可。
如何植入现有应用?
打开上面工程的pom.xml
,可以看到主要就下面两个依赖:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.ai</groupId> <artifactId>spring-ai-ollama-spring-boot-starter</artifactId> </dependency>
所以,如果要在现有工程引入的话只要引入spring-ai-ollama-spring-boot-starter
依赖就可以了。
好了,今天的分享就到这里。最近较忙,分享较少,感谢持续的关注与支持 _
到此这篇关于如何用 Spring AI + Ollama 构建生成式 AI 应用的文章就介绍到这了,更多相关Spring AI Ollama 构建生成式 AI 应用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:
- Spring Boot中利用JavaMailSender发送邮件的方法示例(附源码)
- 深度解析Spring AI请求与响应机制的核心逻辑
- Spring AI实现智能聊天模型
- 深入解析Spring AI框架如何在Java应用中实现智能化交互的关键
- Spring AI 入门学习指南
- Spring AI + ollama 本地搭建聊天 AI 功能
- Spring AI + 混元带你实现企业级稳定可部署的AI业务智能体
- Spring AI借助全局参数实现智能数据库操作与个性化待办管理
- Spring AI 使用超详细讲解
- Spring AI Alibaba 对接百炼平台大模型使用详解
- Spring AI源码分析流式回答(最新推荐)