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

怎么免费做网站推广上海高端seo公司

怎么免费做网站推广,上海高端seo公司,重庆网站建设中心,网站备案时间周期一般多久Spring AI 是一个用于 AI 工程的应用程序框架。 其目标是将 Spring 生态系统设计原则应用于 AI 领域。 Spring AI 提供以下功能: 支持所有主要的 AI 模型提供商,例如 Anthropic、OpenAI、Microsoft、Amazon、Google 和 Ollama等。支持跨 AI 提供商对同…

Spring AI 是一个用于 AI 工程的应用程序框架。 其目标是将 Spring 生态系统设计原则应用于 AI 领域。

Spring AI 提供以下功能:

  • 支持所有主要的 AI 模型提供商,例如 Anthropic、OpenAI、Microsoft、Amazon、Google 和 Ollama等。
  • 支持跨 AI 提供商对同步和流式处理 API 选项的可移植 API 支持。
  • 支持结构化输出 - AI 模型输出到 POJO 的映射。
  • 支持所有主要的向量数据库提供商,例如 Apache Cassandra、Azure Vector Search、Chroma、Milvus、MongoDB Atlas、Neo4j、Oracle、PostgreSQL/PGVector、PineCone、Qdrant、Redis 和 Weaviate。
  • 支持跨向量存储提供商的可移植 API,包括一种新颖的类似 SQL 的元数据过滤器 API。
  • 工具/函数调用 - 允许模型请求执行客户端工具和函数,从而根据需要访问必要的实时信息。
  • 可观察性。
  • 用于数据工程的文档注入 ETL 框架。
  • AI 模型评估 - 帮助评估生成的内容并防止幻觉响应的实用程序。
  • ChatClient API - 用于与 AI 聊天模型通信的 Fluent AP。
  • Advisors API - 封装重复的生成式 AI 模式,转换发送到和传出语言模型 (LLM) 的数据,并提供跨各种模型和用例的可移植性。
  • 支持 Chat Conversation Memory(聊天记忆) and Retrieval Augmented Generation (RAG)。
  • 针对所有 AI 模型和向量存储提供Spring Boot的自动配置和启动器。

下面,我们通过具体的案例来学习下Spring AI的使用。

导入jar

新建spring boot项目,使用spring ai时,spring boot使用3.0以上版本,jdk使用17及以上版本。

<dependencyManagement><dependencies><dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-bom</artifactId><version>1.0.0-SNAPSHOT</version><type>pom</type><scope>import</scope></dependency></dependencies>
</dependencyManagement>

本例调用智谱大模型,还需要导入如下jar:

<!--     m7以后使用该pom   -->
<dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-starter-model-zhipuai</artifactId>
</dependency>

注意:本例使用spring ai的1.0.0-SNAPSHOT版本,如果使用1.0.0-M6及之前的版本,导入的智谱的artifactId为spring-ai-zhipuai-spring-boot-starter。

yml配置

spring:ai:zhipuai:api-key: XXXXXXXXXXXXXX # 智谱的apikeychat:options:model: glm-4-flashtemperature: 0.7

本例测试智谱大模型的调用,api-key使用读者自己申请的key。

配置类

package com.renr.springainew.common;import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.chat.client.advisor.SimpleLoggerAdvisor;
import org.springframework.ai.zhipuai.ZhiPuAiChatModel;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class SpringAiConfig {// 创建ChatClient对象@Beanpublic ChatClient chatClient(ZhiPuAiChatModel chatModel) {return ChatClient.builder(chatModel).build();}}

调用模型的代码

package com.renr.springainew.controller;import jakarta.annotation.Resource;
import org.springframework.ai.chat.client.ChatClient;
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.zhipuai.ZhiPuAiChatModel;
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;@RestController
public class ChatController {@Resourceprivate ZhiPuAiChatModel chatModel;@Resourceprivate ChatClient client;@GetMapping("/chat")public String chat(String message) {String answer = this.chatModel.call(message);System.out.println(answer);return "success";}@GetMapping("/chat2")public String chat2(String message) {String answer = this.client.prompt("你好").call().content();System.out.println(answer);return "success";}}

本例使用两种方式调用智谱的大模型:

  • 通过ZhipuAiChatModel对象
  • 通过ChatClient对象,ChatClient支持函数调用、聊天记忆、RAG等高级功能

打印请求和响应的日志

修改配置类

package com.renr.springainew.common;import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.chat.client.advisor.SimpleLoggerAdvisor;
import org.springframework.ai.zhipuai.ZhiPuAiChatModel;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class SpringAiConfig {@Beanpublic SimpleLoggerAdvisor simpleLoggerAdvisor() {// 创建SimpleLoggerAdvisor实例,可以传递日志级别等配置参数(此处为默认配置)return new SimpleLoggerAdvisor();}@Beanpublic ChatClient chatClient(ZhiPuAiChatModel chatModel) {return ChatClient.builder(chatModel)// 设置系统消息.defaultSystem("你是一个java架构师")//配置日志相关的Advisor,需要开启日志级别以及配置 默认debug级别.defaultAdvisors(simpleLoggerAdvisor()).build();}//    @Bean
//    public ChatClient chatClient(ZhiPuAiChatModel chatModel) {
//        return ChatClient.builder(chatModel).build();
//    }}

Spring AI的Advisors API 提供了一种灵活而强大的方法来拦截、修改和增强 Spring AI的应用。 通过利用 Advisors API,开发人员可以创建更复杂、可重用和可维护的 AI 组件。本例使用SimpleLoggerAdvisor提供日志打印功能。

另外,在创建ChatClient对象时,我们还设置了系统消息。聊天大模型一般包含三种消息类型:系统消息、用户消息和Ai返回的消息。

yml中增加日志配置

logging:level:org.springframework.ai.chat.client.advisor: DEBUG

调用http://localhost:8080/chat2测试

请求数据日志如下:

request: ChatClientRequest[prompt=Prompt{messages=[SystemMessage{textContent='你是一个java架构师', messageType=SYSTEM, metadata={messageType=SYSTEM}}, UserMessage{content='你好', properties={messageType=USER}, messageType=USER}], modelOptions=org.springframework.ai.zhipuai.ZhiPuAiChatOptions@bd71d690}, context={}]

响应日志如下:

response: {"result" : {"metadata" : {"finishReason" : "STOP","contentFilters" : [ ],"empty" : true},"output" : {"messageType" : "ASSISTANT","metadata" : {"finishReason" : "STOP","role" : "ASSISTANT","id" : "202505072240346deb3a95109d44d9","messageType" : "ASSISTANT"},"toolCalls" : [ ],"media" : [ ],"text" : "作为一位虚拟的Java架构师,我很高兴能为您提供帮助。请问有什么具体的技术问题或者架构设计上的挑战需要我协助您解决吗?"}},"metadata" : {"id" : "202505072240346deb3a95109d44d9","model" : "glm-4-flash","rateLimit" : {"requestsLimit" : 0,"tokensLimit" : 0,"requestsReset" : 0.0,"tokensReset" : 0.0,"tokensRemaining" : 0,"requestsRemaining" : 0},"usage" : {"promptTokens" : 13,"completionTokens" : 33,"totalTokens" : 46,"nativeUsage" : {"completion_tokens" : 33,"prompt_tokens" : 13,"total_tokens" : 46}},"promptMetadata" : [ ],"empty" : false},"results" : [ {"metadata" : {"finishReason" : "STOP","contentFilters" : [ ],"empty" : true},"output" : {"messageType" : "ASSISTANT","metadata" : {"finishReason" : "STOP","role" : "ASSISTANT","id" : "202505072240346deb3a95109d44d9","messageType" : "ASSISTANT"},"toolCalls" : [ ],"media" : [ ],"text" : "作为一位虚拟的Java架构师,我很高兴能为您提供帮助。请问有什么具体的技术问题或者架构设计上的挑战需要我协助您解决吗?"}} ]
}

http://www.dtcms.com/wzjs/321293.html

相关文章:

  • 给别人做网站被诉侵权长沙网络营销公司排名
  • 做论坛app网站郑州网站建设制作
  • 设计帮官网宁波seo网络推广渠道介绍
  • 金融理财网站建设方案搜索技巧
  • 石家庄市建设网站域名官网
  • wordpress是国外服务器吗杭州seo按天计费
  • 实验室网站开发框架seo公司北京
  • 湘潭做网站出色磐石网络网店代运营可靠吗
  • 医美网站建设济南今日头条新闻
  • 日文网站制作百度seo排名优化软件化
  • 建网站 维护百度网站排名搜行者seo
  • 网站文章在哪发布做seo广州百度seo排名优化
  • wap网站建设好不好爱站关键词搜索
  • 网站开发的技术可行性怎么写网络营销策略存在的问题
  • 公司国际网站怎么做一个企业seo网站的优化流程
  • 网站报价怎么做西安seo排名外包
  • 怎么查网站有没有做404竞价托管外包费用
  • 无锡网络公司网站建设免费培训seo网站
  • 手机上如何制作网站优化服务平台
  • 如何做外国网站销售石家庄关键词优化报价
  • ftp怎么做网站的备份aso优化教程
  • 怎么做wap网站怎么发布信息到百度
  • app开发公司有什么部门深圳seo教程
  • 有了自己的网站怎样做后台网站seo怎么操作
  • 如何建一个营销网站什么是网络营销含义
  • 怎样做网站制作团队嘉兴seo排名外包
  • 厦门做网站seo做了5天游戏推广被抓了
  • 网站建设有哪些费用中国今天最新军事新闻
  • 做暧小视频免费网站公司推广方案
  • 大连集团网站建设企业站seo案例分析