Springboot调用Ollama本地大模式

安装Ollama

  1. 下载Ollama
    https://ollama.com/download 下载Windows版本

  2. 安装到指定目录
    打开一个cmd窗口,执行

    OllamaSetup.exe /DIR=D:\software\Ollama

  3. 设置环境变量,下载的模型保存到指定目录
    在Windows系统设置中设置环境变量 OLLAMA_MODELS: D:\software\Ollama\models

  4. 常用命令行

    #先启动Ollama,再检测端口
    netstat -ano | findstr 11434

    #查看版本
    ollama --version

    #查看本地已下载的大模型
    ollama list

    #运行指定大模型
    ollama run qwen3:1.7b

    #查看运行中的大模型
    ollama ps

    #运行中的大模型会话窗口退出
    /bye


创建Spring boot项目

  1. start.spring.io 页面创建一个项目,在 pom.xml 中引自spring AI的依赖

    复制代码
         <dependency>
             <groupId>org.springframework.ai</groupId>
             <artifactId>spring-ai-starter-model-ollama</artifactId>
             <version>1.0.0</version>
         </dependency>
  2. application.properties 中加入配置项

    server.port=8082

    server.servlet.encoding.enabled=true
    server.servlet.encoding.charset=UTF-8
    server.servlet.encoding.force=true

    spring.application.name=ollama-demo

    spring.ai.ollama.base-url=https://localhost:11434
    spring.ai.ollama.chat.model=qwen2.5:latest

  3. Controller 文件中引入ChatModel

    @RestController
    public class OllamaController {
    @Resource(name = "ollamaChatModel")
    private ChatModel chatModel;

    复制代码
     @GetMapping("ollama/chat")
     public String chat(@RequestParam("msg") String msg) {
         String result = chatModel.call(msg);
         return result;
     }
    
     /**
      * 响应式返回结果
      * @param msg
      * @return
      */
     @GetMapping("/stream/chat")
     public Flux<String> streamChat(@RequestParam("msg") String msg) {
         return chatModel.stream(msg);
     }

    }

相关推荐
毅炼2 分钟前
MySQL 常见问题总结(1)
java·大数据·数据库
Rust研习社6 分钟前
深入 Rust 引用计数智能指针:Rc 与 Arc 从入门到实战
开发语言·后端·rust
Tirzano6 分钟前
SpringOAuth2Server 自定义授权码认证,登录和授权码混合
spring boot
CRMEB系统商城8 分钟前
国内开源电商系统的格局与演变——一个务实的技术视角
java·大数据·开发语言·小程序·开源·php
树獭叔叔12 分钟前
OpenCLI:让任何网站成为你的命令行工具
后端·aigc·openai
yaaakaaang17 分钟前
十八、中介者模式
java·中介者模式
一 乐19 分钟前
饮食营养信息|基于springboot + vue饮食营养管理信息平台系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·饮食营养管理信息系统
峥嵘life24 分钟前
Android + Kiro AI软件开发实战教程
android·后端·学习
zopple38 分钟前
Laravel与ThinkPHP框架深度对比
java·python·php·laravel
疯狂打码的少年1 小时前
【Day13 Java转Python】装饰器、生成器与lambda——Python的函数式“三件套”
java·开发语言·python