Java 项目如何快速接入AI大模型ChatGPT

Spring AI 简介

  • 定义:与Spring生态系统集成的项目,简化在Spring应用中使用AI技术。
  • 特点:提供工具和接口,简化集成AI功能,避免底层细节复杂性。

Spring AI 主要功能

  • 跨AI提供商API:聊天、文本到图像、嵌入模型等,支持同步和流API。
  • 支持AI模型:来自OpenAI、Microsoft、Amazon、Google、Huggingface等。
  • 跨Vector Store API:支持8个向量数据库,提供类似SQL的元数据过滤器API。
  • 函数调用 :AI模型可调用Java Function对象。
  • 自动配置和启动器:AI模型和矢量存储的Spring Boot配置。
  • ETL框架:数据工程,支持数据加载到向量数据库。

接入ChatGPT

  • 官方Demoai-openai-helloworld,实现基本会话功能。
  • 国内访问问题:无代理设置,可能访问受限。
  • 改进:增加代理配置,适应国内访问需求。

项目细节

  • 项目地址:spring-ai-chatgpt
  • 实现Demo:3个,包括简单回话、流式回话、消息模板提示。
  • 启动配置 :修改application.yml,填写apiKey和代理配置。

接口示例

  • 简单回话接口:生成完毕后返回。
  • 流式回话接口:实时流式返回生成内容。
  • 模板对话接口:指定格式,自动转换为Java实体类。

配置示例(application.yml)

yaml 复制代码
spring:
  ai:
    proxy:
      host: 127.0.0.1
      port: 1080
    openai:
      api-key: xxxx
    chat:
      options:
        model: gpt-3.5-turbo

接口代码示例

  • @GetMapping("/ai/simple"):简单回话生成。
  • @GetMapping("/ai/stream"):流式回话。
  • @GetMapping("/ai/template"):模板对话,自动映射到Java对象。

项目结构

  • 特点:代码简洁,主要实现代理设置。
  • 重写:OpenAI接口,增加代理功能。
相关推荐
翔云API8 分钟前
PHP静默活体识别API接口应用场景与集成方案
人工智能
浊酒南街15 分钟前
吴恩达深度学习笔记:卷积神经网络(Foundations of Convolutional Neural Networks)4.9-4.10
人工智能·深度学习·神经网络·cnn
LuckyLay20 分钟前
Spring学习笔记_27——@EnableLoadTimeWeaving
java·spring boot·spring
Tony聊跨境30 分钟前
独立站SEO类型及优化:来检查这些方面你有没有落下
网络·人工智能·tcp/ip·ip
向阳121833 分钟前
Dubbo负载均衡
java·运维·负载均衡·dubbo
懒惰才能让科技进步36 分钟前
从零学习大模型(十二)-----基于梯度的重要性剪枝(Gradient-based Pruning)
人工智能·深度学习·学习·算法·chatgpt·transformer·剪枝
Gu Gu Study43 分钟前
【用Java学习数据结构系列】泛型上界与通配符上界
java·开发语言
Qspace丨轻空间1 小时前
气膜场馆:推动体育文化旅游创新发展的关键力量—轻空间
大数据·人工智能·安全·生活·娱乐
没有不重的名么1 小时前
门控循环单元GRU
人工智能·深度学习·gru
love_and_hope1 小时前
Pytorch学习--神经网络--搭建小实战(手撕CIFAR 10 model structure)和 Sequential 的使用
人工智能·pytorch·python·深度学习·学习