当前位置: 首页 > news >正文

SpringAI快速上手

 一、导入依赖

 镜像(导入maven依赖)

 <repositories><repository><id>spring-snapshots</id><name>Spring Snapshots</name><url>https://repo.spring.io/snapshot</url><releases><enabled>false</enabled></releases></repository></repositories>

 依赖(导入maven依赖)

<!-- SpringAI -->
<dependency><groupId>org.springframework.experimental.ai</groupId><artifactId>spring-ai-openai-spring-boot-starter</artifactId><version>0.7.1-SNAPSHOT</version>
</dependency>
​
<!-- 测试依赖 -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope>
</dependency>

二、申请AI免费的 Key

前提:有一个自己的 github账号

Key申请位置:GitCode - 全球开发者的开源社区,开源代码托管平台

一直往下翻,找到申请领取Key,如:

 或者点击链接: 申请领取内测免费API Key

三、配置ai-key与base-url

将 api-key 的位置替换成自己申请的 key

spring:ai:openai:api-key: 	#	替换成自己申请的keybase-url: https://api.chatanywhere.tech

四、快速上手AI

测试类中通过 AiClient 调用,如:

import org.junit.jupiter.api.Test;
import org.springframework.ai.client.AiClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;@SpringBootTest
class SpringaiApplicationTests {@Autowiredprivate  AiClient aiClient;@Testvoid testAiClient() {//	问题String ask = "庆余年是什么电视剧";//	回答String answer = aiClient.generate(ask);//	输出打印System.out.println(answer);}
}

显示效果:

相关文章:

SpringAI快速上手

一、导入依赖 镜像&#xff08;导入maven依赖&#xff09; <repositories><repository><id>spring-snapshots</id><name>Spring Snapshots</name><url>https://repo.spring.io/snapshot</url><releases><enabled>…...

07 django管理系统 - 部门管理 - 搜索部门

在dept_list.html中&#xff0c;添加搜索框 <div class"container-fluid"><div style"margin-bottom: 10px" class"clearfix"><div class"panel panel-default"><!-- Default panel contents --><div clas…...

数据操作学习

1.导入torch。虽然被称为PyTorch&#xff0c;但应导入torch而不是pytorch import torch 2.张量表示一个数值组成的数组&#xff0c;这个数组可能有多个维度 xtorch.arange(12)x 3.通过张量的shape属性来访问张量的形状和张量中元素的总数 x.shape x.numel() 4.要改变张量的形…...

什么是网络代理

了解网络代理 网络代理是一种特殊的网络服务&#xff0c;它允许一个网络终端&#xff08;通常指客户端&#xff09;通过这个服务与另一个网络终端&#xff08;通常指服务器&#xff09;进行非直接的连接。网络代理服务器位于发送主机和接收主机之间&#xff0c;接收网络请求&a…...

安防监控摄像头图传模组,1公里WiFi无线传输方案,监控新科技

在数字化浪潮汹涌的今天&#xff0c;安防监控领域也迎来了技术革新的春风。今天&#xff0c;我们就来聊聊这一领域的产品——摄像头图传模组&#xff0c;以及它如何借助飞睿智能1公里WiFi无线传输技术&#xff0c;为安防监控带来未有的便利与高效。 一、安防监控的新篇章 随着…...

问:JVM中GC类型有哪些?触发条件有哪些?区别是啥?

在Java虚拟机&#xff08;JVM&#xff09;中&#xff0c;垃圾收集&#xff08;GC&#xff09;是自动管理内存的关键机制。GC负责识别并回收那些不再被程序使用的对象&#xff0c;以释放内存空间。根据回收的区域和策略的不同&#xff0c;JVM中的GC可以分为多种类型。 一、GC的…...

【操作系统的使用】Linux 输入输出重定向:掌握控制台的高级用法

文章目录 Linux 输入输出重定向&#xff1a;掌握控制台的高级用法输出重定向将命令输出保存到文件将命令输出追加到文件 输入重定向从文件读取输入 管道操作将多个命令的输出链接起来 错误重定向将错误信息保存到文件同时重定向输出和错误信息 Linux 输入输出重定向&#xff1a…...

无线通信中的四个关键概念:OFDM、多径效应、CSI和信道均衡

无线通信中的四个关键概念&#xff1a;OFDM、多径效应、CSI和信道均衡 无线通信技术在现代通信系统中发挥着至关重要的作用。无论是日常的手机通信&#xff0c;还是复杂的物联网应用&#xff0c;理解无线信道的特性和优化信号传输的技术是关键。在本文中&#xff0c;我们将介绍…...

如何高效规划千人大会?数字化会议管理的实战经验分享!建议收藏!

在当今快节奏的商业环境中&#xff0c;大型会议不仅是企业展示自身实力、促进交流合作的重要平台&#xff0c;更是推动行业发展、分享创新思维的关键活动。然而&#xff0c;随着参会人数的增加&#xff0c;如何高效规划并管理一场千人大会&#xff0c;成为了组织者面临的巨大挑…...

mysql指令笔记(基本)

一、数据库操作 创建数据库&#xff1a;CREATE DATABASE database_name;选择数据库&#xff1a;USE database_name;删除数据库&#xff1a;DROP DATABASE database_name; 二、表操作 创建表&#xff1a;CREATE TABLE table_name (column1 datatype constraint, column2 datat…...

web前端-----html5----用户注册

以改图为例 <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <title>用户注册</title> </hea…...

bug的定义和测试

一、软件测试的生命周期 软件测试的⽣命周期是指测试流程&#xff0c;这个流程是按照⼀定顺序执⾏的⼀系列特定的步骤&#xff0c;去保证产品 质量符合需求。在软件测试⽣命周期流程中&#xff0c;每个活动都按照计划的系统的执⾏。每个阶段有不同的 ⽬标和交付产物 需求分析…...

Kamailio-Sngrep 短小精悍的利器

一个sip的抓包小工具&#xff0c;在GitHub上竟然能够积累1K的star&#xff0c;看来还是有点东西&#xff0c;当然官方的友链也是发挥了重要作用 首先送上项目地址&#xff0c;有能力的宝子可以自行查看 经典的网络抓包工具有很多&#xff0c;比如&#xff1a; Wireshark&…...

9.6 Linux_I/O_IO模型

基本概念 I/O执行过程与分类&#xff1a; 用户进程中的一个完整I/O分为 "用户进程空间->内核空间->设备空间(磁盘、网卡)" 这两个阶段。 I/O可以分为内存I/O、网络I/O、磁盘I/O 同步和异步是什么&#xff1a; 1、对于线程的请求调用&#xff0c;同步与异步…...

React 探秘(一):fiber 架构

文章目录 背景React 采用 fiber 主要为了解决哪些问题&#xff1f;性能问题&#xff1a;用户体验问题&#xff1a; 为什么在 React 15 版本中性能会差&#xff1a;浏览器绘制原理&#xff1a;react 15 架构和问题 那么 fiber 怎么解决了这个问题&#xff1f;任务“大”的问题递…...

poi通过在word中写入了表格,通过libreoffice转换成PDF后,word中刚才画的表格宽度无限拉伸问题的解决。

一、复现&#xff1a; poi版本&#xff1a; <poi>3.17</poi><poi-ooxml>3.17</poi-ooxml><poi-ooxml-schemas>3.17</poi-ooxml-schemas><dependency><groupId>org.apache.poi</groupId><artifactId>poi</arti…...

尚硅谷rabbitmq2024 集群篇仲裁队列 第52节 答疑

我们希望创建一个队列&#xff0c;队列分布在各个节点上&#xff0c;仲裁队列很好的解决了这个问题.那么在仲裁队列之前&#xff0c;创建一个队列&#xff0c;队列不是分布在各个节点上的吗&#xff1f; 在RabbitMQ中&#xff0c;默认情况下创建的队列是“普通队列”&#xff0…...

《Spring Cloud 微服务:构建高效、灵活的分布式系统》

《Spring Cloud 微服务&#xff1a;构建高效、灵活的分布式系统》 一、引言 在当今快速发展的数字化时代&#xff0c;软件系统的规模和复杂性不断增加。为了应对这种挑战&#xff0c;微服务架构应运而生。Spring Cloud 作为构建微服务架构的强大工具集&#xff0c;提供了一系…...

OpenFeign 入门与实战:快速搭建 Spring Cloud 微服务客户端

1. 前言 随着微服务架构的流行&#xff0c;服务之间的通信变得越来越重要。Spring Cloud 提供了一系列工具来帮助开发者构建分布式系统&#xff0c;其中 OpenFeign 是一个轻量级的 HTTP 客户端&#xff0c;它简化了 Web 服务客户端的开发。本文将介绍如何在 Spring Cloud 应用…...

上门按摩系统开发方案源码搭建

上门按摩系统开发方案 一、项目概述 上门按摩系统是一个连接按摩技师和客户的平台&#xff0c;旨在提供便捷、高效的上门按摩服务。通过该系统&#xff0c;客户可以轻松预约合适的按摩技师&#xff0c;并享受个性化的按摩服务。 二、系统功能模块 用户管理模块&#xff1a;…...

HelloWord-Keyboard固件编程完全指南:从零掌握机械键盘定制开发

HelloWord-Keyboard固件编程完全指南&#xff1a;从零掌握机械键盘定制开发 【免费下载链接】HelloWord-Keyboard 项目地址: https://gitcode.com/gh_mirrors/he/HelloWord-Keyboard 想要打造属于自己的智能机械键盘吗&#xff1f;HelloWord-Keyboard项目为你提供了一个…...

OpenClaw跨平台控制:Qwen3-14B管理多台设备的自动化流

OpenClaw跨平台控制&#xff1a;Qwen3-14B管理多台设备的自动化流 1. 为什么需要集中化设备管理&#xff1f; 去年搭建家庭实验室时&#xff0c;我手头逐渐积累了三台不同用途的设备&#xff1a;一台跑深度学习模型的Ubuntu服务器、一台存储数据的NAS&#xff0c;还有一台偶尔…...

Kuikly实现Android iOS Web小程序一码覆盖实践

跨端开发趋势与“一码覆盖”的现实路径 在多终端普及与用户场景碎片化的背景下&#xff0c;移动、桌面、Web与小程序的并行发展让“一次开发、多端运行”成为开发者的核心诉求。传统方案中&#xff0c;React Native因桥接机制存在通信延迟与UI不一致问题&#xff0c;Flutter因…...

RAGFlow实战:从零基础到构建企业级AI知识库

在2026年的今天&#xff0c;大模型&#xff08;LLM&#xff09;已经不再是新鲜事&#xff0c;但如何将这些“通才”模型转化为企业内部的“专才”&#xff0c;依然是技术落地的核心痛点。检索增强生成&#xff08;RAG&#xff09;技术应运而生&#xff0c;而RAGFlow作为一款开源…...

STM32F4标准库实战:用DMA+FSMC驱动TFT-LCD,让你的GUI刷新快人一步(附避坑指南)

STM32F4标准库实战&#xff1a;DMAFSMC驱动TFT-LCD的性能飞跃与避坑全攻略 在嵌入式GUI开发中&#xff0c;流畅的界面刷新体验往往决定着产品的第一印象。当你在STM32F4平台上使用LVGL或emWin时&#xff0c;是否遇到过这些场景&#xff1a;手指滑动列表时的明显卡顿、动画渲染…...

别再只调参了!深入理解PCL网格化:从Delaunay三角剖分到法线一致性的底层原理

深入解析PCL网格化&#xff1a;从Delaunay三角剖分到法线一致性的工程实践 在三维重建领域&#xff0c;点云网格化是将离散采样点转化为连续表面的关键技术。许多开发者虽然能够调用PCL库完成基础网格生成&#xff0c;但当面对setNormalConsistency、setMaximumSurfaceAngle等参…...

隐私优先的AI助手:OpenClaw+Qwen3-4B离线处理敏感财务文档

隐私优先的AI助手&#xff1a;OpenClawQwen3-4B离线处理敏感财务文档 1. 为什么需要离线AI财务助手 去年整理家庭年度支出时&#xff0c;我遇到了一个尴尬问题&#xff1a;想把银行流水导出到Excel做分类统计&#xff0c;但账单PDF包含太多敏感信息&#xff08;账户号、交易对…...

CMake实战:如何自动生成带Git分支和编译时间的版本号(附完整代码)

CMake实战&#xff1a;自动化生成含Git分支与编译时间的版本标识系统 在持续集成和敏捷开发成为主流的今天&#xff0c;每次代码提交都可能触发自动化构建流程。作为开发者&#xff0c;你是否遇到过这样的困扰&#xff1a;测试人员报告了一个问题&#xff0c;但无法快速确认他们…...

VL1_四选一多路器:从RTL设计到覆盖率验证的全流程解析

1. 四选一多路器的基本概念与应用场景 四选一多路器&#xff08;4-to-1 Multiplexer&#xff09;是数字电路设计中最基础的组合逻辑电路之一。简单来说&#xff0c;它就像一个智能开关&#xff0c;能够根据控制信号从四个输入信号中选择一个输出。这种电路在实际项目中应用非常…...

从零到精通:全面掌握AI大模型的系统学习路径,大模型时代掌握未来,抢占AI风口!

本文介绍了人工智能领域的大型预训练模型——大模型&#xff0c;解释了其工作原理和应用场景&#xff0c;如自然语言处理、内容推荐、教育和辅助学习、医疗和健康护理等。文章还探讨了学习大模型的意义&#xff0c;包括技术趋势、就业市场、解决问题能力、创新能力等方面。此外…...