首页 > 系统相关 >spring boot简单运用ollama大模型(windows版本)

spring boot简单运用ollama大模型(windows版本)

时间:2024-08-23 11:14:51浏览次数:7  
标签:windows spring boot springframework ai import org

1、下载模型(windows为例)

  打开官方网站https://ollama.com/download/windows。

  打开exe文件,打开命令行工具,直接运行ollama run 要下载的模型(右上角的models能找到你想要的,例子以llama3.1展示,spring ai暂时非全支持,支持模型步骤2列出)

  运行完后直接是这样显示

  

  至此,模型就安装完毕。

2、创建spring 项目

  1、创建spring boot项目。以maven为例(spring ai 以jdk17的版本)

    <properties>
        <java.version>17</java.version>
        <spring-ai.version>1.0.0-M1</spring-ai.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-ollama-spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.ai</groupId>
                <artifactId>spring-ai-bom</artifactId>
                <version>${spring-ai.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>
    <repositories>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>https://repo.spring.io/milestone</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>

  2、修改配置(application.yml)

spring:
  application:
    name: demo
  ai:
    ollama:
      base-url: http://localhost:11434
      chat:
        options:
          model: llama3.1
          temperature: 0.7

  这个里面对应的模型要你下载的,我们是llama3.1,地址是本机的地址, spring ai 支持的模型仅下列

 

  3、创建聊天控制类

import org.springframework.ai.chat.messages.UserMessage;
import org.springframework.ai.chat.model.ChatResponse;
import org.springframework.ai.chat.prompt.Prompt;
import org.springframework.ai.ollama.OllamaChatModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import reactor.core.publisher.Flux;

import java.util.Map;

@RestController
public class ChatController {
    private final OllamaChatModel chatModel;

    @Autowired
    public ChatController(OllamaChatModel chatModel) {
        this.chatModel = chatModel;
    }

    @GetMapping("/ai/generate")
    public Map generate(@RequestParam(value = "message", defaultValue = "Tell me a joke") String message) {
        return Map.of("generation", chatModel.call(message));
    }

    @GetMapping("/ai/generateStream")
    public Flux<ChatResponse> generateStream(@RequestParam(value = "message", defaultValue = "Tell me a joke") String message) {
        Prompt prompt = new Prompt(new UserMessage(message));
        return chatModel.stream(prompt);
    }

}

  至此,简单的应用就完成了。

  

  

 

标签:windows,spring,boot,springframework,ai,import,org
From: https://www.cnblogs.com/lannoy/p/18375635

相关文章

  • 构建Spring Boot应用的微服务服务契约管理
    构建SpringBoot应用的微服务服务契约管理大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!在微服务架构中,服务之间的通信依赖于明确的接口契约。服务契约管理是确保服务间能够正确交互的关键。SpringBoot提供了多种机制来定义和管理服务契约。服务......
  • Spring Boot集成Spring Cloud Task进行批处理任务管理
    SpringBoot集成SpringCloudTask进行批处理任务管理大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!在微服务架构中,批处理任务是常见的需求,用于执行定时或周期性的工作。SpringCloudTask为SpringBoot应用提供了批处理任务管理的能力,支持任务的创......
  • Windows11 Docker镜像存储路径更改(非C盘路径)
    前言基于WSL2安装docker后,在使用过程中会发现大量的docker镜像文件,使系统C盘容量激增,对电脑后续使用造成不便,所以需要在安装的时候,手动修改docker的镜像地址,使得镜像文件保存到另外的非系统盘中。原因最新的windows提供了新的虚拟化技术(WSL/WSL2),所以设置页面不能镜像的存储位......
  • Windows11下安装Docker
    一、准备工作先下载以下资源,暂时不要安装:Docker安装包Wsl2安装包二、开始安装1.打开主板BIOS的虚拟化选项,可以在任务管理器中确实是否已经打开2.勾上虚拟机平台所有选项(建议完成这一步骤重启)3.用管理员身份打开PowerShell,执行下面命令启动wsldism.exe/online/enable-f......
  • 利用Spring Boot实现微服务的API限流策略
    利用SpringBoot实现微服务的API限流策略大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!API限流是一种控制访问速率的机制,用于保护后端服务不被过载。SpringBoot提供了多种工具和方法来实现API限流策略。API限流的概念API限流通常通过限制在一定......
  • springboot办公用品管理系统
    springboot办公用品管理系统。源码➕数据库➕文档(LWPPT)。开发技术:微信小程序框架Javaspringbootmysql。项目内容:办公用品管理系统可以将功能划分为管理员功能、员工功能和员工功能。(1)后台管理员关键功能包含办公用品、物品借用、物品归还、借用登记、归还登记、物品......
  • SpringBoot 用的 spring-jcl 打印日志,与 LoggingSystem 有鸡毛关系?
    开心一刻现实中,我有一个异性游戏好友,昨天我心情不好,找她聊天我:我们两个都好久没有坐下来好好聊天了她:你不是有女朋友吗我:人家不需要我这种穷人啊她:难道我需要吗前情回顾从源码分析SpringBoot的LoggingSystem→它是如何绑定日志组件的从源码的角度讲述了SpringBoot......
  • Spring 源码解读专栏:从零到一深度掌握 Spring 框架
    前言Spring是Java世界中无可争议的王者框架,它以其灵活、轻量、强大而著称,成为企业级开发的首选工具。然而,很多开发者在使用Spring时,往往只停留在会用的层面,对于其内部实现和设计原理知之甚少。本专栏旨在通过系统化的Spring源码解读,从实践到源码分析,再到设计模式的......
  • windows配置zed2相机环境
    准备工作1.确保电脑有独立显卡    如图,可以看到示例计算机中,有AMD独立显卡,而Intel为集成显卡。如果这里除了Intel集成显卡外,没有AMD、NVIDIA或者其他品牌显卡,则该计算机不是独显。2.安装anconda来创建zed环境     创建python=3.7的环境进行zed相机调试......
  • P[ostgreSQL16在Windows下安装
    1.官网下载安装包并安装2.安装时遇到问题Problemrunningpost-installstep.Installationmaynotcompletecorrectlty.Thedatabaseclusterinitialisationfailed.解决方法:安装完成后管理员启动cmd,cd到pg的bin目录输入D:\PostgreSQL\bin>initdb.exe-DD:\database......