Administrator
发布于 2024-03-08 / 980 阅读 / 0 评论 / 1 点赞

Spring AI+Ollama本地环境搭建

前言

Spring AI框架旨在简化人工智能应用的开发,文档可以查看Spring AI :: Spring AI Reference,如今Spring AI已经上架Spring Initializr,本次搭建一个本地的demo环境。Spring AI支持聊天模型、向量模型、文生图模型,模型支持OpenAI、HuggingFace、Azure、Amazon、Ollama等。本次demo的目的是搭建一个本地的运行环境,由于本地电脑是一个只有CPU的笔记本,这次就先使用Ollama写一个demo跑一下聊天功能。

运行环境说明:

jdk-17.0.5

maven-3.8.4

windows11: 内存16GB

ollama-v0.1.28

Spring Boot-3.2.3: Ollama, Spring Web

搭建

step1: 创建spring ai demo工程

使用Spring Initializr创建,选择Maven、Java、Spring Boot-3.2.3、Jar、Java 17,依赖添加ollama和springweb, 创建完成下载导入到本地的idea开发工具中。

start-spring-ai

step2: 安装和运行ollama

Ollama是一个非常棒的人工智能运行工具,Ollama支持windows上运行安装, 且CPU就可以运行。

进入ollama网站进行下载:Download Ollama on Windows

本次demo下载的是ollama.v0.1.28:https://github.com/ollama/ollama/releases/download/v0.1.28/OllamaSetup.exe

下载后点击exe进行安装, 安装完会跳出命令框, 可以查看ollama常用命令:

 ##使用ollama帮助命令查看有哪些命令
 ollama --help
 
 ##输出:
 Large language model runner

Usage:
  ollama [flags]
  ollama [command]

Available Commands:
  serve       Start ollama
  create      Create a model from a Modelfile
  show        Show information for a model
  run         Run a model
  pull        Pull a model from a registry
  push        Push a model to a registry
  list        List models
  cp          Copy a model
  rm          Remove a model
  help        Help about any command

Flags:
  -h, --help      help for ollama
  -v, --version   Show version information

Use "ollama [command] --help" for more information about a command.

ollama网站中可以搜索支持的模型:library (ollama.com), 可以搜索阿里的千问了解一下详情:

ollama-search-qwen

点击进入qwen (ollama.com), 可以找到支持的模型版本, 并提供了运行命令:

ollama-qwen-info

step3: 使用ollama运行qwen:7b

先使用ollama run命令来运行qwen-7b模型,运行命令:ollama run qwen:7b,等待下载

ollama-run-qwen-7b

执行完成进行测试:

qwen-7b-installed-and-test

PS: 退出可输出"/bye"命令

step4: 配置spring并测试ChatClient

本地的ollama服务的默认端口号是11434, application.yml配置如下:

spring:
  ai:
    ollama:
      base-url: http://localhost:11434
      chat:
        model: qwen:7b

test代码:

@SpringBootTest
class AiApplicationTests {
	@Autowired
	private OllamaChatClient ollamaChatClient;

	@Test
	void contextLoads() {
		String message = """
    	给我讲一个java程序员的笑话吧
				""";
		System.out.println(ollamaChatClient.call(message));
	}
}

运行测试结果:

spring-demo-test-qwen-7b

总结

搭建本地的Spring AI环境还是比较容易的,使用Ollama对于本地的硬件要求也不是很高,基于搭建好的Spring AI运行环境可以继续测试Spring AI的API。


评论