成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

逆天強大!Spring AI 身份證識別,圖片分析真牛啊

人工智能
Spring AI 的 Message API(消息接口) 為多模態大型語言模型(LLMs)提供了所有必要的抽象層支持,開發者可通過該接口實現跨模態數據的無縫整合與交互,無需底層適配即可構建支持文本、圖像、音頻等多輸入源的AI應用。

環境:SpringBoot3.4.2

1. 簡介

人類處理知識時,會同時通過多種數據輸入模式進行。我們的學習方式、經驗積累本質上都是多模態的。我們并非僅依賴視覺、僅依賴聽覺或僅依賴文本,而是綜合運用多種感官。

與之相反,傳統機器學習往往專注于針對單一模態數據進行處理的專用模型。例如,我們開發了用于文本轉語音或語音轉文本任務的音頻模型,以及用于目標檢測和分類等任務的計算機視覺模型。

然而,新一輪的多模態大型語言模型浪潮正悄然興起。例如,OpenAI 的 GPT-4o、谷歌的 Vertex AI Gemini 1.5、Anthropic 的 Claude3,以及開源模型 Llama3.2、LLaVA 和 BakLLaVA 等,均能夠接受多種輸入(包括文本、圖像、音頻和視頻),并通過整合這些輸入生成文本響應。

Spring AI 多模態能力

多模態(Multimodality)指模型能夠同時理解并處理來自多種來源的信息,涵蓋文本、圖像、音頻及其他數據格式。

Spring AI 的 Message API(消息接口) 為多模態大型語言模型(LLMs)提供了所有必要的抽象層支持,開發者可通過該接口實現跨模態數據的無縫整合與交互,無需底層適配即可構建支持文本、圖像、音頻等多輸入源的AI應用。

Spring AI Message APISpring AI Message API

說明:

UserMessage 的 content 字段 用于承載主要文本輸入,而可選的 media 字段 則支持添加一種或多種跨模態附加內容(如圖像、音頻、視頻等)。字段通過 MimeType 明確標識模態類型,以定義數據格式(如 image/jpeg、audio/mp3)。

接下來,我們將通過實例演示有關圖片識別的實例。

2.實戰案例

準備環境

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

配置文件

spring:
  ai:
    openai:
      api-key: sk-xxxooo
      base-url: https://api.xty.app
      chat:
        options:
          model: gpt-4

2.1 圖片分析

首先,我們準備如下的這張圖片,我們對該圖片進行分析,看看大模型能分析出什么內容來:

示例代碼:

private final ChatClient chatClient ;
@GetMapping("/image")
public String image() {
  return this.chatClient
      .prompt()
      .user(u -> u.text("你看到了什么?")
          .media(MimeTypeUtils.IMAGE_PNG, new ClassPathResource("static/multimodal.test.png")))
      .call()
      .content() ;
}

輸出結果

圖片圖片

正確的分析出圖片中的內容。

2.2 身份證識別

下面我們在準備一張身份證,看看是否能正確的讀取出身份證中的內容信息。

圖片圖片

示例代碼:

@GetMapping("/sfz")
public String sfz() {
  String text = """
        輸出該身份證中的姓名(name), 性別(sex), 民族(nation), 出生(birth), 住址(address), 身份證號碼(idNo)。
        最終以json格式輸出。
      """;
  return this.chatClient
      .prompt()
      .user(u -> {
        u.text(text)
            .media(MimeTypeUtils.IMAGE_PNG, new ClassPathResource("static/sfz.jpg"));
      })
      .call()
      .content() ;
}

輸出結果

圖片圖片

正確識別出身份證中的所有信息。

2.3 結構化輸出

以下示例將演示通過上傳汽車圖片方式分析圖片,并由系統以結構化 JSON 格式返回分析結果(例如各顏色,總數)。

定義數據模型

public record CarCount(List<CarColorCount> counts, int total) {
}
public record CarColorCount(String color, int count) {
}

接著,定義如下Service 發送圖片到OpenAI進行分析

@Service
public class CarCountService {
  private final ChatClient chatClient;
  public CarCountService(ChatClient.Builder chatClientBuilder) {
    this.chatClient = chatClientBuilder.build();
  }
  public CarCount getCarCount(InputStream imageInputStream, String contentType, String colors) {
    String text = """
          1.統計圖像中不同顏色車輛的數量
          2.用戶通過提示詞(prompt)提供圖像,并指定需統計的顏色
          3.僅統計用戶提示詞中明確指定的顏色(忽略其他顏色)
          4.過濾用戶提示詞中的非顏色信息(如無關文本或無效描述)
          5.若用戶提示詞中未指定任何顏色,直接返回總數為 0
        """ ;
    return chatClient.prompt()
        .system(systemMessage -> systemMessage
            .text(text))
        .user(userMessage -> userMessage
            .text(colors)
            .media(MimeTypeUtils.parseMimeType(contentType), new InputStreamResource(imageInputStream)))
        .call()
        .entity(CarCount.class);
  }
}

REST接口

@PostMapping("/count")
public ResponseEntity<?> getCarCounts(@RequestParam("colors") String colors,
    @RequestParam("file") MultipartFile file) {
  try (InputStream inputStream = file.getInputStream()) {
    var carCount = carCountService.getCarCount(inputStream, file.getContentType(), colors);
    return ResponseEntity.ok(carCount) ;
  } catch (IOException e) {
    return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("圖片上傳失敗");
  }
}

接下來,我們準備如下的圖片

圖片圖片

輸出結果

圖片圖片

責任編輯:武曉燕 來源: Springboot全家桶實戰案例源碼
相關推薦

2020-02-05 15:29:56

計算機網絡設備

2018-01-04 11:28:23

2025-04-08 02:22:22

SpringJackson注解

2009-06-12 11:34:01

2014-11-12 17:45:14

網絡身份識別

2013-09-11 19:10:59

2023-05-24 07:16:29

2025-02-10 00:01:00

SpringOpenCV身份證

2025-06-30 02:10:00

2017-05-02 15:10:56

病歷智慧城市數據

2021-11-04 14:06:15

大數據疫情技術

2020-11-10 10:16:38

Java身份證號碼編程語言

2011-04-29 09:40:59

復印二代身份證多功能一體機

2021-04-11 07:23:14

微信連續轉賬移動應用

2011-04-25 10:00:08

聯想7205身份證復印

2017-12-27 11:55:24

2017-12-26 10:43:00

微信身份證網證微警云聯盟

2010-09-09 10:10:29

SQL函數轉換

2022-01-24 07:16:01

12306電子乘車證明身份證
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩视频一级 | 91xh98hx 在线 国产| 免费a网 | 亚洲视频中文字幕 | 激情欧美一区二区三区中文字幕 | 国产精品视频一区二区三区 | 精品免费观看 | 国产精品一区在线 | www久久国产 | 一本岛道一二三不卡区 | av网站免费在线观看 | 欧美午夜精品久久久久免费视 | 视频在线h| 在线视频a | 精品国产一区一区二区三亚瑟 | 亚洲国产精品suv | 日韩成人在线免费观看 | 亚洲一级黄色 | 在线观看国产视频 | 美女视频一区 | 国产精品国产精品国产专区不片 | 久久久精选 | 久草视频在线播放 | 国产欧美在线一区 | www.久久精品 | 国产农村妇女毛片精品久久麻豆 | wwwxxx国产| 亚洲国产精品成人综合久久久 | 99免费精品 | 久久99国产精品 | 国产精品一区二区在线观看 | 一级毛片在线播放 | 成人国产在线视频 | 欧美日韩精品一区二区三区四区 | 黄色a级一级片 | 亚洲第一在线视频 | 国产成人免费视频网站视频社区 | 欧美xxxx日本| 99精品一区二区 | 午夜欧美一区二区三区在线播放 | 69亚洲精品 |