如果使用微软 Azure 托管的 OpenAI 服务

使用微软 Azure 托管的 OpenAI 服务时,LangChain4j 提供了专门的集成支持,通过 langchain4j-azure-openai 模块可以轻松实现交互。以下是详细的使用指南:

1. 准备工作

  • 创建 Azure OpenAI 资源 :在 Azure 门户 中创建 OpenAI 资源,获取:
    • 资源端点(Endpoint):格式如 https://{your-resource-name}.openai.azure.com/
    • API 密钥(Key):在资源的「密钥和端点」页面获取
    • 部署名称(Deployment Name):在资源的「模型部署」页面创建模型部署(如部署 gpt-35-turbogpt-4

2. 添加依赖

pom.xml 中添加 Azure OpenAI 集成依赖:

xml 复制代码
<dependency>
    <groupId>dev.langchain4j</groupId>
    <artifactId>langchain4j-azure-openai</artifactId>
    <version>0.272.0</version> <!-- 建议使用最新版本 -->
</dependency>

3. 基础使用示例

以下是调用 Azure OpenAI 模型的基础代码:

4. 带对话记忆的示例

结合对话记忆功能,让模型记住上下文:

5. 关键配置说明

  • endpoint:Azure OpenAI 资源的唯一端点,格式固定,不可省略。
  • deploymentName:必须与 Azure 门户中创建的部署名称完全一致(区分大小写)。
  • API 版本 :默认使用最新 API 版本,如需指定可添加 .apiVersion("2023-05-15")
  • 超时与重试 :可通过 .timeout(60000) 设置超时,配合重试机制处理临时网络问题。

6. 环境变量配置建议

在生产环境中,建议通过环境变量注入敏感信息:

  • Windows(PowerShell):
powershell 复制代码
$env:AZURE_OPENAI_ENDPOINT = "https://your-resource.openai.azure.com/"
$env:AZURE_OPENAI_API_KEY = "your-api-key"
$env:AZURE_OPENAI_DEPLOYMENT_NAME = "your-deployment-name"
  • Linux/macOS(终端):

    bash 复制代码
    export AZURE_OPENAI_ENDPOINT="https://your-resource.openai.azure.com/"
    export AZURE_OPENAI_API_KEY="your-api-key"
    export AZURE_OPENAI_DEPLOYMENT_NAME="your-deployment-name"

7. 常见问题

  • 部署名称错误 :若提示「部署不存在」,检查 deploymentName 是否与 Azure 门户中的部署名称一致。
  • 权限问题:确保 API 密钥对应的 Azure 账号有访问该资源的权限。
  • 区域差异:Azure 资源部署在不同区域(如 East US、West Europe),端点会随之变化,需匹配正确区域。

通过以上步骤,你可以在 LangChain4j 中无缝集成 Azure OpenAI 服务,并利用其企业级特性(如稳定的 SLA、数据隐私合规)构建生产级 LLM 应用。

相关推荐
码云数智-园园14 小时前
折叠面板不用 JS?<details> 和 <summary> 标签的隐藏用法
microsoft
Miya_Ye14 小时前
Azure AI Search(1)
microsoft·azure·ai search
️学习的小王15 小时前
Flask实现云栖笔记|开箱即用网页版本地笔记本
笔记·python·flask
典典分享指南16 小时前
Excel SUMIFS 跨表汇总实战:多表条件求和的完整指南
django·flask·numpy·pyqt·fastapi
烂蜻蜓16 小时前
Flask入门教程(二十四):请求对象API——获取客户端数据的完整指南
后端·python·flask
Data_Journal1 天前
Scrapyd:分步教程
开发语言·python·microsoft·golang·编辑器·html·iphone
聪明蛋子哟2 天前
多智能体协作的三种模式:从群聊到分层,如何设计可扩展的Agent系统
后端·python·flask
liuyicenysabel2 天前
从 0 到 1:一套 GitHub + GHCR + k3s 的全自动 CI/CD 流水线(Flask 项目实战)
ci/cd·flask·github
霸道流氓气质2 天前
Spring AI Function Calling实现原理与自定义函数
java·spring·microsoft
蓝鸟19742 天前
Python Flask + Oracle 接口开发 小白完整版笔记(入参/查库/批量/JSON/避坑)
python·oracle·flask