springAI

什么是大模型

大模型,是指具有大模型参数和复杂计算结构的机器学习模型,这些模型通常由深度神经网络构建而成,拥有数十亿甚至数千亿个参数,其设计目的在于提高模型的表达能力和预测性能,以应对更加复杂的任务和数据;
大模型,简单来说,就是一个特别聪明,特别能干的‘大脑’,这个‘大脑’由很多个小小的‘神经元’组成,每个‘神经元’都能处理一部分信息,当这些‘神经元’一起工作时,大模型就能理解并回答各种问题,或者完成各种复杂的任务,就像你又一个超级聪明的助手,它能帮你写邮件,写PPT,回答你的各种问题等等,它就像是一个上知天文,下知地理,无所不知的人。

如何训练大模型

要训练一个大模型不容易,需要给它提供很多学习材料,就像我们小时候读书学习一样,而且为了让这个‘大脑’更聪明,还需要很多高级的计算机设备来帮助它学习。
训练大模型:
1.高性能的CPU和GPU,多核心和高主频的CPU以及支持CUDA的GPU加速训练过程;
2.大容量存储设备,训练大模型需要存储大量的数据集,模型参数和中间结果;
3.高速网络连接,通过网络连接将训练任务分配到多个计算节点上,
4.深度学习框架,如TensorFlow,PyTorch等,这些框架提供了构建和训练模型的工具和库;
5.分布式训练框架,为了加速大模型的训练,可以使用分布式训练框架,如Horovod,Ray等;
6.编程语言和工具,Python是深度学习领域最常用的编程语言,还有(如Git)来管理代码和版本迭代;
7.训练大模型非常耗电,高性能计算机和GPU进行长时间的工作,需要消耗大量的电力;

Sping AI
Sping AI是一个AI工程领域的应用程序框架;
它的目标是将Spring生态系统的设计原则应用于人工智能领域,比如Spring生态系统的可移植性和模块化设计,并推广使用POJO来构建人工智能领域应用程序;
Spring AI并不是要构建一个自己的AI大模型,而是让你对接各种AI大模型;

开发Spring AI程序的前期准备
1.本机电脑要可以访问OpenAI网站https://openai.com/

2,要有OpenAI的API Key;(注册账号或者购买)

API-Key:sk-3sfER03LDLG3SDFsdlwe2283JSdw023lkrmrHDND32fmREKFD 淘宝购买一个 搜索 open ai api key

开发Spring AI应用程序

Spring AI应用程序也是基于Spring Boot进行开发
1,建项目,创建一个Spring Boor项目
在这里插入图片描述
2,加依赖,加入spring-ai-openai-spring-boot-starter依赖;
ai依赖:

<dependency>
    <groupId>org.springframework.ai</groupId>
    <artifactId>spring-ai-openai-spring-boot-starter</artifactId>
</dependency>

开发Spring AI应用程序
pom.xml配置

1.继承父项目:

<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>
<properties>
<java.version>17</java.version>
<spring-ai.version>1.0.0-SNAPSHOT</spring-ai.version>
</properties>

2.配置项目依赖下载的仓库

<!-- 配置本项目的仓库 因为maven中心仓库还没有更新spring ai的jar包 -->
<repositories>
<!-- 快照版本的仓库-->
<repository>
<id>spring-snapshot</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
</repositories>

3.配文件 application.yml

spring:
 application:
   name: spring-ai-01-chat

 ai:
   openai:
    api-key: sk-3sfER03LDLG3SDFsdlwe2283JSdw023lkrmrHDND32fmREKFD
    base-url: https://api.openai.com
    chat:
      options:
       #model: gpt-4-32k
       temperature: 0.3F

聊天API

4.写代码
注入OpenAiChatClient

 /**
* spring - ai 自动装配的,可以直接注入使用
*/
@Resource
private OpenAiChatClient openAiChatClient;

调用call方法

   openAiChatClient.call(msg);

5.去运行

package com.example.controller;

import jakarta.annotation.Resource;
import org.springframework.ai.chat.ChatResponse;
import org.springframework.ai.chat.prompt.Prompt;
import org.springframework.ai.openai.OpenAiChatClient;
import org.springframework.ai.openai.OpenAiChatOptions;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import reactor.core.publisher.Flux;

@RestController
public class ChatController {
   

/**
* spring - ai 自动装配的,可以直接注入使用
*/
@Resource
private OpenAiChatClient openAiChatClient;

/**
* 调用OpenAI的接口
* @param msg 我们提的问题
* @return
*/
@RequestMapping(value = "/ai/chat")
public String chat(@RequestParam(value = "msg") String msg){
   
System.out.println(msg);
String called = openAiChatClient.call(msg);
return called;
}

/**
* 调用OpenAI的接口
* @param msg 我们提的问题
* @return
*/
@RequestMapping(value = "/ai/chat2")
public Object chat2(@RequestParam(value = "msg") String msg){
   
System.out.println(msg);

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时光浅止

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值