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

49_Spring AI 干货笔记之 OpenAI SDK 图像生成(官方)

一、OpenAI SDK 图像生成(官方)

Spring AI 通过 OpenAI Java SDK 支持 OpenAI 的 DALL-E 图像生成模型,提供了与 OpenAI 服务(包括 Microsoft Foundry 和 GitHub Models)的健壮且官方维护的集成。

此实现使用 OpenAI 官方的 OpenAI Java SDK。有关 Spring AI 的替代实现,请参阅 OpenAI 图像生成。

DALL-E 是 OpenAI 最先进的图像生成模型,可以根据自然语言描述创建逼真的图像和艺术作品。

OpenAI SDK 模块会根据您提供的基础 URL 自动检测服务提供商(OpenAI、Microsoft Foundry 或 GitHub Models)。

二、认证

认证使用基础 URL 和 API 密钥完成。该实现通过 Spring Boot 属性或环境变量提供灵活的配置选项。

2.1 使用 OpenAI

如果您直接使用 OpenAI,请在 OpenAI 注册页面 创建账户,并在 API 密钥页面 生成 API 密钥。

基础 URL 无需设置,默认为 api.openai.com/v1:

spring.ai.openai-sdk.api-key=<your-openai-api-key># base-url 是可选的,默认为 https://api.openai.com/v1

或使用环境变量:

exportOPENAI_API_KEY=<your-openai-api-key># OPENAI_BASE_URL 是可选的,默认为 https://api.openai.com/v1

2.2 使用 Microsoft Foundry

当使用 Microsoft Foundry URL 时,会自动检测到 Microsoft Foundry。您可以使用属性进行配置:

spring.ai.openai-sdk.base-url=https://<your-deployment-url>.openai.azure.com spring.ai.openai-sdk.api-key=<your-api-key>spring.ai.openai-sdk.microsoft-deployment-name=<your-deployment-name>

或使用环境变量:

exportOPENAI_BASE_URL=https://<your-deployment-url>.openai.azure.comexportOPENAI_API_KEY=<your-api-key>

无密码认证(Azure 推荐):

Microsoft Foundry 支持无密码认证,无需提供 API 密钥,这在 Azure 上运行时更安全。

要启用无密码认证,请添加 com.azure:azure-identity 依赖:

<dependency><groupId>com.azure</groupId><artifactId>azure-identity</artifactId></dependency>

然后配置时不提供 API 密钥:

spring.ai.openai-sdk.base-url=https://<your-deployment-url>.openai.azure.com spring.ai.openai-sdk.microsoft-deployment-name=<your-deployment-name># 无需 api-key - 将使用环境中的 Azure 凭据

2.3 使用 GitHub Models

当使用 GitHub Models 的基础 URL 时,会自动检测到 GitHub Models。您需要创建一个具有 models:read 范围的 GitHub 个人访问令牌(PAT)。

spring.ai.openai-sdk.base-url=https://models.inference.ai.azure.com spring.ai.openai-sdk.api-key=github_pat_XXXXXXXXXXX

或使用环境变量:

exportOPENAI_BASE_U
http://www.gsyq.cn/news/128404.html

相关文章:

  • Linly-Talker在在线托福雅思培训中的口语陪练应用
  • 中小企业如何低成本搭建数字人服务?Linly-Talker实战案例
  • Linly-Talker训练数据来源是否公开?伦理争议回应
  • Linly-Talker与LangChain整合构建知识库问答数字人
  • 市场营销科学 101:如何使用合成控制分析基于地理的活动
  • 企业级动物领养平台管理系统源码|SpringBoot+Vue+MyBatis架构+MySQL数据库【完整版】
  • Linly-Talker能否识别方言输入?ASR模块能力测试
  • Linly-Talker在博物馆导览中的沉浸式应用案例
  • +高校线上心理咨询室设计与实现pf信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
  • 计算机毕业设计springboot软件学院体育设备管理系统 基于SpringBoot的软件学院体育器材全生命周期管理平台 软件学院智慧体育资产运营系统的设计与实现
  • 10种被动收入来源,帮助开发者度过裁员难关
  • Linly-Talker如何实现唇形与语音精准同步?技术揭秘
  • Linly-Talker在保险产品讲解中的标准化应用
  • 【华为 ICT HCIA eNSP 习题汇总】——题目集26
  • Linly-Talker支持自定义动作库吗?高级控制参数介绍
  • LLM 采样参数详解:Temperature, Top-k 与 Top-p
  • Linly-Talker能否输出透明通道视频?后期合成支持情况
  • 11.CSS属性 (@property)
  • ReLU 如何使神经网络能够逼近连续非线性函数?
  • 免费在线文件解析 - 夸克网盘解析
  • Linly-Talker能否实现手势动作配合讲解?肢体驱动展望
  • 集合进阶(一部分)
  • 技术路线图在执行过程中遇到市场变化时,如何动态调整?
  • 如何用Linly-Talker生成带情绪表达的数字人视频
  • 2004-Image thresholding using Tsallis entropy
  • 关系型数据库sqlserver和pg创建覆盖索引的include写法示例及原理详解
  • 思考与练习(第十一章 面向对象编程基础)
  • Linly-Talker支持动态批处理,提高GPU吞吐量
  • 五、选择器进阶
  • MySQL 5.7覆盖索引的实现方式、替代方案和限制