Spring AI
Spring AI 项目旨在简化开发集成了人工智能功能的应用程序,而不增加不必要的复杂性。该项目从一些著名的 Python 项目中汲取灵感,例如 LangChain 和 LlamaIndex,但 Spring AI 并不是这些项目的直接移植。该项目的创立基于这样的信念:下一波生成式 AI 应用不仅限于 Python 开发者,而是将在多种编程语言中普及。其核心在于,Spring AI 解决了 AI 集成的基本挑战:将企业数据和 API 与 AI 模型连接起来官方网址
项目搭建
版本相关,
目前springai支持Spring Boot 3.2.x and 3.3.x,JDK17
添加里程碑和快照仓库
<repositories>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
</repositories>
依赖管理
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-bom</artifactId>
<version>1.0.0-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
在根据需要引入实际的组件
此处以ollama为例
<dependency>
<groupId>io.springboot.ai</groupId>
<artifactId>spring-ai-ollama-spring-boot-starter</artifactId>
<version>1.0.0</version>
</dependency>
配置模型和地址
spring:
application:
name: spring-ai-ollama
ai:
ollama:
base-url: http://127.0.0.1:11434
chat:
options:
model: llama3.1:8b
controller发布服务
@Resource
private OllamaChatClient ollamaChatClient;
@PostMapping("/ai")
String sendMessage(@RequestParam(value = "message", defaultValue = "Tell me a joke") String message) {
String call = ollamaChatClient.call(message);
return call;
}
测试
测试的前提是本地已经启动了ollama的服务,搭建参考前一篇文章:
大型语言模型(Large Language Model, LLM)了解一下?
postman测试
往期推荐
大型语言模型(Large Language Model, LLM)了解一下?
常用的JVM参数与命令你知道吗?
推荐两款程序员高效工作神器
Git命令基操必须要会!
非常nice! IDEA远程Debug调试程序
DataX二次开发之达梦数据库插件