<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Spring AI 快速接入 DeepSeek 大模型

      Spring AI 快速接入 DeepSeek 大模型

      @

      Spring AI 框架概述

      在經(jīng)歷了八個(gè)里程碑式的版本之后(M1~M8),Spring AI 1.0 正式版本,終于在 2025 年 5 月 20 日正式發(fā)布了,這是另一個(gè)新高度的里程碑式的版本,標(biāo)志著 Spring 生態(tài)系統(tǒng)正式全面擁抱人工智能技術(shù),并且意味著 Spring AI 將會給企業(yè)帶來穩(wěn)定 API 支持。

      Spring AI 是 Spring 官方推出的一個(gè)人工智能集成框架,旨在簡化 AI 功能在 Spring 應(yīng)用中的整合。它提供了一套標(biāo)準(zhǔn)化的 API 和工具,讓開發(fā)者能夠輕松接入多種主流 AI 服務(wù)(如 OpenAI、Azure AI、Hugging Face 等),同時(shí)保持 Spring 生態(tài)的簡潔性和靈活性。

      核心特性

      1. 統(tǒng)一 API 設(shè)計(jì)

      通過抽象層屏蔽不同 AI 提供商(如 OpenAI、Gemini、Ollama 等)的接口差異,開發(fā)者只需使用 Spring AI 的通用接口(如 ChatModel),即可切換底層 AI 服務(wù)。

      同理就類似于,我們 JDBC 連接數(shù)據(jù)庫的被統(tǒng)一的連接接口,這里我們的 Spring AI 就類似于我們這里的 JDBC,不同的是 這個(gè) Spring AI 是連接操作其他 LLM(大模型)的被統(tǒng)一的接口。

      1. 開箱即用的功能支持
      2. 支持對話模型(Chat)類的大模型:與 ChatGPT 類似的交互。
      3. 支持嵌入模型(Embedding)類的大模型:嵌入模型是將文本、圖像或其他數(shù)據(jù)轉(zhuǎn)換為數(shù)值向量(即嵌入向量)的技術(shù)
      4. 支持圖像生成(Image Generation)類的大模型:圖像生成是指AI根據(jù)文本描述或其他輸入創(chuàng)建新圖像的能力。
      5. 支持函數(shù)調(diào)用(Function Calling):函數(shù)調(diào)用功能使AI模型能夠與外部API和服務(wù)交互。也就是說,你寫一個(gè)函數(shù),AI 也能調(diào)用你寫的函數(shù)。
      6. 與 Spring 生態(tài)無縫集成
      7. 支持 Spring Boot 自動配置、依賴注入、Actuator 監(jiān)控等,與 Spring Security、Spring Data 等組件協(xié)同工作。
      8. Prompt 工程支持
      9. 提供 PromptTemplate 等工具,方便動態(tài)生成提示詞(Prompts),支持上下文管理。
      10. 模塊化設(shè)計(jì)
      11. 開發(fā)者可以根據(jù)項(xiàng)目需求選擇特定的AI服務(wù)模塊
      12. 例如只需OpenAI功能就只引入spring-ai-openai
      13. 如需Google Vertex AI則引入spring-ai-vertexai
      14. 每個(gè)AI供應(yīng)商/服務(wù)有獨(dú)立的Spring Starter模塊

      適用場景

      • 快速構(gòu)建 AI 驅(qū)動的應(yīng)用(如智能客服、內(nèi)容生成工具)。
      • 需要靈活切換 AI 后端(如從本地模型切換到云服務(wù))。
      • 結(jié)合 Spring 生態(tài)實(shí)現(xiàn)企業(yè)級 AI 功能(如權(quán)限控制、數(shù)據(jù)持久化)。

      官網(wǎng)與資源

      AI 提供商與模型類型

      在SpringAI中,模型類型AI提供商是兩個(gè)不同維度的概念,但它們又相互關(guān)聯(lián)。讓我用更清晰的方式幫你區(qū)分和理解:

      模型類型(Model Type)

      指的是AI模型的功能類別,即它能完成什么任務(wù)。
      特點(diǎn):與具體廠商無關(guān),是通用的能力分類。

      常見模型類型

      模型類型 功能說明 典型應(yīng)用場景
      Chat(對話型) 對話交互(如ChatGPT) 客服機(jī)器人、聊天助手
      Embedding(嵌入型) 將文本轉(zhuǎn)換為向量(數(shù)值數(shù)組) 語義搜索、RAG + 傳統(tǒng)搜索基于關(guān)鍵詞匹配(如Google早期的搜索),而語義搜索通過理解查詢的語義(含義)來返回更相關(guān)的結(jié)果。 + 它利用深度學(xué)習(xí)模型(如BERT、Embedding模型)將文本轉(zhuǎn)換為向量(vector),通過向量相似度匹配內(nèi)容,即使查詢詞和文檔沒有直接的關(guān)鍵詞重疊。
      Image(文生圖型) 生成/處理圖像(如Stable Diffusion) 設(shè)計(jì)輔助、內(nèi)容生成
      Text-to-Speech(文轉(zhuǎn)語音型) 將文本轉(zhuǎn)為語音 語音助手、有聲內(nèi)容
      Function Calling(函數(shù)回調(diào)型) 讓AI調(diào)用外部函數(shù)/API 實(shí)時(shí)數(shù)據(jù)查詢、工作流自動化

      AI提供商(Provider)

      提供具體AI模型服務(wù)的公司或平臺。
      特點(diǎn): 同一提供商可能支持多種模型類型

      常見提供商

      提供商 支持的模型類型 具體模型示例
      OpenAI Chat, Embedding, Image GPT-4o、text-embedding-3、DALL-E
      Google Vertex AI Chat, Embedding, Image PaLM 2、Imagen
      Azure OpenAI Chat, Embedding 微軟托管的OpenAI服務(wù)
      Hugging Face Chat, Embedding, Image 開源模型(如BLOOM、Stable Diffusion)
      Stability AI Image Stable Diffusion系列
      DeepSeek Chat,代碼專用模型、Embedding、數(shù)學(xué)專用模型 DeepSeek-V3、DeepSeek-Coder、DeepSeek-Embedding、DeepSeek-Math

      兩者的關(guān)系

      • 一個(gè)提供商支持多種模型類型
        例如:OpenAI同時(shí)提供Chat模型(GPT-4)、Embedding模型(text-embedding-3)、Image模型(DALL-E)。
      • 一種模型類型可由多個(gè)提供商實(shí)現(xiàn)
        例如:Chat模型既可以用OpenAI的GPT-4,也可以用Google的PaLM 2。

      Spring AI 框架支持哪些 AI 提供商的哪些模型

      Spring AI 框架支持主流的 AI 提供商的主流模型,并且會隨著 Spring AI 版本的升級而變化。

      以下是截至 2024年6月Spring AI 框架官方及社區(qū)支持的 AI 提供商及其對應(yīng)的 模型類型的詳細(xì)列表,包含國內(nèi)和國外主流廠商。

      AI 提供商 支持的模型類型 具體模型示例 是否國內(nèi)廠商 Spring AI 模塊名
      OpenAI Chat, Embedding, Image Generation, Function Calling GPT-4, GPT-3.5, text-embedding-3, DALL-E 3 ? spring-ai-openai
      Azure OpenAI Chat, Embedding, Image Generation GPT-4, GPT-3.5, text-embedding-ada-002 ? spring-ai-azure-openai
      Google Vertex AI Chat, Embedding, Code Generation Gemini 1.5, PaLM 2, textembedding-gecko ? spring-ai-vertexai
      Hugging Face Chat, Embedding, Text Generation, Image Generation BLOOM, Llama 2, Stable Diffusion, BERT ? spring-ai-huggingface
      Stability AI Image Generation Stable Diffusion XL, Stable Diffusion 3 ? spring-ai-stabilityai
      Anthropic Chat Claude 3, Claude 2 ? spring-ai-anthropic (社區(qū)支持)
      Ollama Chat, Embedding (本地運(yùn)行開源模型) Llama 3, Mistral, Gemma ? spring-ai-ollama
      DeepSeek ? (尚未官方支持,但未來可能集成) DeepSeek-V3, DeepSeek-Coder ? 暫無,雖然沒有給 deepseek 提供專門的 starter,但是由于 deepseek API 接口規(guī)范與 OpenAI 保持一致,因此也可以使用 openai 的 starter。
      百度文心大模型 ? (尚未官方支持) ERNIE-Bot 4.0, ERNIE-Embedding ? 暫無
      阿里云通義千問 ? (尚未官方支持) Qwen-72B, Qwen-Embedding ? 暫無
      智譜AI (GLM) ? (尚未官方支持) ChatGLM3, GLM-Embedding ? 暫無
      訊飛星火 ? (尚未官方支持) SparkDesk 3.0 ? 暫無
      MiniMax ? (尚未官方支持) ABAB 5.5 ? 暫無

      Spring AI 接入 DeepSeek

      DeepSeek 的 API 設(shè)計(jì)兼容 OpenAI:DeepSeek 的 API 接口規(guī)范(如請求/響應(yīng)格式、鑒權(quán)方式)與 OpenAI 保持一致,因此可以直接使用 OpenAI 的客戶端庫調(diào)用 DeepSeek。

      引入依賴

      <dependencies>
          <!-- Spring MVC -->
          <dependency>
              <groupId>org.springframework.boot</groupId>
              <artifactId>spring-boot-starter-web</artifactId>
          </dependency>
          <!--
              DeepSeek 的 API 設(shè)計(jì)兼容 OpenAI:
              DeepSeek 的 API 接口規(guī)范(如請求/響應(yīng)格式、鑒權(quán)方式)與 OpenAI 保持一致,
              因此可以直接使用 OpenAI 的客戶端庫調(diào)用 DeepSeek。
          -->
          <dependency>
              <groupId>org.springframework.ai</groupId>
              <artifactId>spring-ai-openai-spring-boot-starter</artifactId>
              <version>1.0.0-M6</version>
          </dependency>
          <!-- Lombok -->
          <dependency>
              <groupId>org.projectlombok</groupId>
              <artifactId>lombok</artifactId>
              <optional>true</optional>
          </dependency>
      </dependencies>
      <repositories>
          <!--指向 Spring 官方提供的快照倉庫,為了嘗試 Spring 的最新功能-->
          <repository>
              <id>spring-snapshots</id>
              <name>Spring Snapshots</name>
              <url>https://repo.spring.io/snapshot</url>
              <snapshots>
                  <enabled>true</enabled>
              </snapshots>
          </repository>
      </repositories>
      
      

      編寫配置文件

      # Spring AI OpenAI/DeepSeek 配置
      spring:
        ai:
          openai:
            api-key: sk-b768607df6cd4xxx0f5aa38 # 設(shè)置 DeepSeek API 的訪問密鑰,永遠(yuǎn)不要將密鑰提交到代碼倉庫,建議通過環(huán)境變量注入。搞不好要花錢的。
            base-url: https://api.deepseek.com           # 指定 DeepSeek API 的基礎(chǔ)地址,格式與OpenAI相同。
            chat:
              options:
                model: deepseek-chat                     # 選擇要調(diào)用的 DeepSeek 模型名稱,必須與 DeepSeek 支持的模型列表匹配(如 deepseek-chat、deepseek-coder 等),不同模型可能有不同的計(jì)費(fèi)標(biāo)準(zhǔn)和能力。
                temperature: 1.3                         # temperature 值越高,AI 回答越隨機(jī)和創(chuàng)意;值越低,回答越確定和保守。1.3 屬于高值,適合需要發(fā)散性輸出的場景,但可能犧牲準(zhǔn)確性。
      

      編寫 service

      import lombok.RequiredArgsConstructor;
      import org.springframework.ai.chat.model.ChatModel;
      import org.springframework.ai.chat.prompt.Prompt;
      import org.springframework.ai.chat.prompt.SystemPromptTemplate;
      import org.springframework.stereotype.Service;
      
      import java.util.Map;
      
      @RequiredArgsConstructor
      @Service
      public class AiService {
      
          private final ChatModel chatModel;
      
          // 簡單的直接調(diào)用
          public String generate(String message) {
              return chatModel.call(message);
          }
      
          // 使用系統(tǒng)提示模板
          public String generateWithSystemPrompt(String userMessage) {
      
              SystemPromptTemplate systemPromptTemplate = new SystemPromptTemplate("""
                      你是一個(gè)資深{domain}專家,回答需滿足以下要求:
                      1. 語言風(fēng)格:{tone}
                      2. 回答長度:{length}
                      3. 用戶問題:{userMessage}
                      """);
      
              Prompt prompt = new Prompt(
                      systemPromptTemplate.createMessage(Map.of(
                              "domain", "科技",
                              "tone", "幽默",
                              "length", "不超過100字",
                              "userMessage", userMessage
                      ))
              );
      
              return chatModel.call(prompt).getResult().getOutput().getText();
          }
      }
      
      

      編寫 controller

      import com.example.demo.service.AiService;
      import lombok.RequiredArgsConstructor;
      import org.springframework.web.bind.annotation.GetMapping;
      import org.springframework.web.bind.annotation.RequestMapping;
      import org.springframework.web.bind.annotation.RequestParam;
      import org.springframework.web.bind.annotation.RestController;
      
      @RestController
      @RequestMapping("/api/ai")
      @RequiredArgsConstructor
      public class AiController {
      
          private final AiService aiService;
      
          @GetMapping("/chat")
          public String chat(@RequestParam String message) {
              return aiService.generate(message);
          }
      
          @GetMapping("/chat-with-prompt")
          public String chatWithPrompt(@RequestParam String message) {
              return aiService.generateWithSystemPrompt(message);
          }
      }
      

      啟動服務(wù),在瀏覽器地址欄上訪問:

      到此,Spring AI 接入 DeepSeek 就完成了。

      最后:

      “在這個(gè)最后的篇章中,我要表達(dá)我對每一位讀者的感激之情。你們的關(guān)注和回復(fù)是我創(chuàng)作的動力源泉,我從你們身上吸取了無盡的靈感與勇氣。我會將你們的鼓勵留在心底,繼續(xù)在其他的領(lǐng)域奮斗。感謝你們,我們總會在某個(gè)時(shí)刻再次相遇。”

      在這里插入圖片描述

      posted @ 2025-08-23 10:01  Rainbow-Sea  閱讀(330)  評論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 鲁大师在线视频播放免费观看| 人妻中文字幕在线视频无码| 国产亚洲精品久久久久蜜臀| 国产精品自拍自在线播放| 激情综合色综合久久丁香| 大帝AV在线一区二区三区| 广河县| 中文字幕一区二区三区麻豆| 国产视频深夜在线观看| 久久无码高潮喷水| 国产精品视频午夜福利| 啊灬啊灬啊灬快灬高潮了电影片段| 四虎在线成人免费观看| 国产播放91色在线观看| 潘金莲高清dvd碟片| 久久亚洲色www成人| 自拍视频在线观看三级| 精品人妻中文字幕av| 色先锋av影音先锋在线| 亚洲中文字幕日韩精品| 久久99精品久久久久久| 亚洲精品不卡av在线播放| 日本免费人成视频在线观看 | 蓬溪县| 久久精品国产亚洲av麻| 色成年激情久久综合国产| 国产在线98福利播放视频| 成人亚洲av免费在线| 亚洲高清免费在线观看| 亚洲精品麻豆一区二区| 男女性高爱潮免费网站| 99精品久久毛片a片| 日本精品一区二区不卡| 紫云| 日韩人妻无码一区二区三区 | 日日碰狠狠躁久久躁96avv| 亚洲久久色成人一二三区| 男人扒女人添高潮视频| 国产偷国产偷亚洲清高动态图| 亚洲精中文字幕二区三区| 福利视频在线一区二区|