Azure 机器学习:在 Azure 机器学习中使用 Azure OpenAI 模型
目录
- 一、环境准备
- 二、Azure 机器学习中的 OpenAI 模型是什么?
- 三、在机器学习中访问 Azure OpenAI 模型
- 连接到 Azure OpenAI
- 部署 Azure OpenAI 模型
- 四、使用自己的训练数据微调 Azure OpenAI 模型
- 使用工作室微调
- 微调设置
- 训练数据
- 自定义微调参数
- 部署微调的模型
- 使用基于代码的示例微调
- 疑难解答
在本文中,你将了解如何使用 Azure 机器学习发现、微调和大规模部署 Azure OpenAI 模型。
关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。

一、环境准备
- 必须有权访问 Azure OpenAI 服务。
- 必须位于 Azure OpenAI 支持的区域
二、Azure 机器学习中的 OpenAI 模型是什么?
近年来,人工智能的进步导致了大型基础模型(基于大量数据进行训练)的兴起。 这些模型可以轻松适应各行各业的多种应用程序。 这一新兴趋势为企业在深度学习工作负载中构建和使用这些基础模型提供了独特的机会。
机器学习中的 OpenAI 模型提供机器学习原生功能,使客户可以通过以下方式大规模生成和使用 Azure OpenAI 模型:
- 在机器学习中访问机器学习模型目录中提供的 Azure OpenAI。
- 与 Azure OpenAI 建立连接。
- 使用机器学习微调 Azure OpenAI 模型。
- 使用机器学习将 Azure OpenAI 模型部署到 Azure OpenAI。
三、在机器学习中访问 Azure OpenAI 模型

Azure 机器学习工作室中的模型目录(预览)是浏览各种基础模型集合的起点。 Azure OpenAI 模型集合包含仅在 Azure 上提供的模型。 使用这些模型,客户将能够访问适用于 Azure OpenAI 中提供的大型语言模型的即时工程、微调、评估和部署功能。 可以在 Azure OpenAI 服务集合下的模型目录中查看受支持的 Azure OpenAI 模型的完整列表。

可以按推理任务或微调任务筛选模型目录中的模型列表。 选择特定的模型名称后,将会显示所选模型的模型卡,其中列出了有关该模型的详细信息。

连接到 Azure OpenAI
若要部署 Azure OpenAI 模型,需要具有 Azure OpenAI 资源。 若要创建 Azure OpenAI 资源,请按照创建和部署 Azure OpenAI 服务资源中的说明进行操作。
部署 Azure OpenAI 模型
若要从机器学习部署 Azure OpenAI 模型,请执行以下操作:
-
在左窗格中选择“模型目录”。
-
在 Azure OpenAI 语言模型下选择“查看模型”。 然后选择要部署的模型。
-
选择“部署”,将模型部署到 Azure OpenAI。

-
从选项中选择“Azure OpenAI 资源”。
-
在“部署名称”中输入部署名称,然后选择“部署”。
-
若要查找部署到 Azure OpenAI 的模型,请转到工作区中的“终结点”部分。
-
选择“Azure OpenAI”选项卡,并查找创建的部署。 在选择部署时,系统会将你重定向到已链接到部署的 OpenAI 资源。
四、使用自己的训练数据微调 Azure OpenAI 模型

若要提高工作负载中的模型性能,可能需要使用自己的训练数据微调模型。 通过使用工作室中的微调设置或使用本教程中基于代码的示例,可以轻松微调这些模型。
使用工作室微调
若要调用微调设置窗体,请在任何基础模型的模型卡上选择微调。
微调设置

训练数据
-
传入要用于微调模型的训练数据。 可以选择上传 JSON 行 (JSONL) 格式的本地文件。 也可以从工作区中选择现有的已注册数据集。
- 具有完成任务类型的模型:使用的训练和验证数据必须采用 JSON 文档格式,其中每一行代表一个提示-完成对。

- 具有聊天任务类型的模型:数据集中的每一行都应是 JSON 对象列表。 每一行对应于一个对话。 行中的每个对象都是对话中的一个轮次或语句。

- 验证数据:传入要用于验证模型的数据。
- 在微调窗体中选择“完成”以提交微调作业。 作业完成后,可以查看已微调模型的评估指标。 然后,可以将此经过微调的模型部署到终结点以进行推理。
自定义微调参数
如果要自定义微调参数,可以在微调向导中选择“自定义”,以配置批大小、纪元数和学习速率乘数。 其中每个设置都具有默认值,但如果需要,可以通过基于代码的示例进行自定义。

部署微调的模型
若要从机器学习运行经过微调的模型作业以部署 Azure OpenAI 模型,请执行以下操作:
- 完成 Azure OpenAI 模型的微调后,在“模型”列表中找到微调期间提供的名称的已注册模型,然后选择要部署的模型。
- 选择“部署”并为部署命名。 模型将会部署到链接到工作区的默认 Azure OpenAI 资源。
使用基于代码的示例微调
为了支持用户快速开始使用基于代码的微调,我们已面向 azureml-examples GitHub 存储库发布示例(包括 Python 笔记本和 Azure CLI 示例):
- SDK 示例
- CLI 示例
疑难解答
下面是一些步骤,可帮助你解决机器学习中 Azure OpenAI 的以下任何问题。
在尝试部署 Azure OpenAI 模型时,可能会遇到以下任何错误。
-
每个模型名称和版本只能进行一个部署
- 修复:转到 Azure OpenAI Studio 并删除尝试部署的模型的部署。
-
未能创建部署
- 修复:无法创建 Azure OpenAI。 此错误这是由于配额问题造成的。 请确保具有足够的配额可用于部署。 微调模型的默认配额是每个客户 2 个部署。
-
未能获取 Azure OpenAI 资源
- 修复:无法创建资源。 你不在正确的区域中,或者已超出三个 Azure OpenAI 资源的最大限制。 需要删除现有的 Azure OpenAI 资源,或者需要确保在受支持区域之一中创建了工作区。
-
模型不可部署
- 修复:此错误通常发生在尝试部署 GPT-4 模型时。 由于需求较高,需要[申请访问权限才能使用 GPT-4 模型]。
-
微调作业失败
- 修复:目前,对于新的微调模型,只能为特定订阅指定最多 10 个工作区。 如果用户创建更多工作区,尽管可以获得模型访问权限,但他们的作业将失败。 尝试将每个订阅的工作区数限制为 10。
关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。
相关文章:
Azure 机器学习:在 Azure 机器学习中使用 Azure OpenAI 模型
目录 一、环境准备二、Azure 机器学习中的 OpenAI 模型是什么?三、在机器学习中访问 Azure OpenAI 模型连接到 Azure OpenAI部署 Azure OpenAI 模型 四、使用自己的训练数据微调 Azure OpenAI 模型使用工作室微调微调设置训练数据自定义微调参数部署微调的模型 使用…...
XML Web 服务 Eclipse实现中的sun-jaxws.xml文件
说明 在sun-jaxws.xml文件,可以配置endpoint、handler-chain等内容。在这个文件中配置的内容会覆盖在Java代码中使用注解属性配置的的内容。 这个文件根据自己的项目内容修改完成以后,作为web应用的一部分部署到web容器中(放到web应用的WEB…...
16.1 二次根式 教学设计及课堂检测设计
课堂检测如下:...
Android数据流的狂欢:Channel与Flow
在 Android 应用程序的开发中,处理异步数据流是一个常见的需求。为了更好地应对这些需求,Kotlin 协程引入了 Channel 和 Flow,它们提供了强大的工具来处理数据流,实现生产者-消费者模式,以及构建响应式应用程序。 本文…...
Java 单元测试最佳实践:如何充分利用测试自动化
单元测试是众所周知的做法,但还有很大的改进空间!在这篇文章中,我们讨论最有效的单元测试最佳实践,包括在此过程中最大化自动化工具的方法。我们还将讨论代码覆盖率、模拟依赖关系和整体测试策略。 什么是单元测试? 单…...
windows系统用于 SDN 的软件负载均衡器 (SLB)
适用于:Azure Stack HCI 版本 22H2 和 21H2;Windows Server 2022、Windows Server 2019、Windows Server 2016 软件负载均衡器包括哪些内容? 软件负载均衡器提供以下功能: 适用于北/南和东/西 TCP/UDP 流量的第 4 层 (L4) 负载均…...
漏洞复现--IP-guard flexpaper RCE
免责声明: 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直…...
Electron-vue出现GET http://localhost:9080/__webpack_hmr net::ERR_ABORTED解决方案
GET http://localhost:9080/__webpack_hmr net::ERR_ABORTED解决方案 使用版本解决方案解决总结 使用版本 以下是我解决此问题时使用的electron和vue等的一些版本信息 【附】经过测试 electron 的版本为 13.1.4 时也能解决 解决方案 将项目下的 .electron-vue/dev-runner.js…...
Linux---(六)自动化构建工具 make/Makefile
文章目录 一、make/Makefile二、快速查看(1)建立Makefile文件(2)编辑Makefile文件(3)解释(4)效果展示 三、背后的基本知识、原理(1)如何清理对应的临时文件呢…...
谷歌:编写干净的代码以减少认知负荷
您是否曾经阅读过代码却发现很难理解?您可能正在经历认知负荷! 认知负荷是指完成一项任务所需的脑力劳动量。阅读代码时,您必须记住变量值、条件逻辑、循环索引、数据结构状态和接口契约等信息。随着代码变得更加复杂,认知负荷也…...
微信小程序display常用属性和子元素排列方式介绍
wxss中display常用显示属性与css一致,介绍如下: 针对元素本身显示的属性: displayblock,元素显示换行displayinline,元素显示换行,但不可设置固定的宽度和高度,也不可设置上下方向的margin和p…...
设计模式—结构型模式之代理模式
设计模式—结构型模式之代理模式 代理模式(Proxy Pattern) ,给某一个对象提供一个代理,并由代理对象控制对原对象的引用,对象结构型模式。 静态代理 比如我们有一个直播平台,提供了直播功能,但是如果不进行美颜,可能就比较冷清…...
C# PDF转HTML字符串
需要nuget安装Aspose.PDF插件,本文使用23.10.0版本 一、获取PDF文件,保存到某个路径;再读取返回字符串。 //html文件保存路径 string filePath dirPath "xxx.html"; if (!File.Exists(filePath)) {//获取pdf文件流Byte[] pdfBy…...
el-table解决数据过少小于高度有留白的问题
问题:给el-table设置个高度,高度为500px,之后就添加如下4条数据,那么底部就没数据,直接就空白了,本文章就是为了解决这个问题,如果底部留白那么就添加几条空数据就行了.如果数据已达到高度了那么就不会留白了 1.效果 这个空列可以根据高度来决定添加几个空格子去铺满列表&…...
vue实现无感刷新token
vue实现无感刷新token 1、前言2、实现思路2.1 方法一2.2 方法二2.3 方法三 3、可能遇到的问题3.1 问题一:如何防止多次刷新token3.2 问题二:同时发起两个或者两个以上的请求时,其他接口怎么解决 1、前言 最近在做vue3管理系统项目的时候&…...
竞赛选题 深度学习的动物识别
文章目录 0 前言1 背景2 算法原理2.1 动物识别方法概况2.2 常用的网络模型2.2.1 B-CNN2.2.2 SSD 3 SSD动物目标检测流程4 实现效果5 部分相关代码5.1 数据预处理5.2 构建卷积神经网络5.3 tensorflow计算图可视化5.4 网络模型训练5.5 对猫狗图像进行2分类 6 最后 0 前言 &#…...
Python高级语法----Python C扩展与性能优化
文章目录 1. 编写Python C扩展模块示例代码编译和运行运行结果2. 利用Cython优化性能示例代码编译和运行运行结果3. Python性能分析工具示例代码分析结果1. 编写Python C扩展模块 Python C扩展模块允许你将C语言代码集成到Python程序中,以提高性能。这对于计算密集型任务特别…...
行业洞察:分布式云如何助力媒体与娱乐业实现创新与增长?
过去数年,流媒体经历了蓬勃的发展过程,观众可以根据喜好收看自己所喜爱的节目内容,并希望在全球范围内访问内容。 繁荣的市场让媒体和娱乐行业的 IT 领导者们竞相发力,用更短的时间去创造互动且令人难忘的内容体验,力求…...
【多线程 - 05、后台线程】
后台线程 后台线程,它是在后台运行的,它的任务是为其他线程提供服务,这种线程被称为“后台线程(Daemon Thread)”,又称为“守护线程”或“精灵线程”。JVM的垃圾回收线程就是典型的后台线程。 后台线程的特…...
C语言之文件操作(剩余部分)
上篇博客字数到极限了,给大家把内容补充在这一篇,我们还剩下文件读取结束的判定和文件缓冲区的内容没有介绍,让我们开始下面的学习吧! 目录 1.文件读取结束的判定 1.1feof函数 1.2ferror函数 代码示例 2.文件缓冲区 2.1fflu…...
网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...
第19节 Node.js Express 框架
Express 是一个为Node.js设计的web开发框架,它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用,和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...
【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...
Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...
day36-多路IO复用
一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...
wpf在image控件上快速显示内存图像
wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像(比如分辨率3000*3000的图像)的办法,尤其是想把内存中的裸数据(只有图像的数据,不包…...
前端打包工具简单介绍
前端打包工具简单介绍 一、Webpack 架构与插件机制 1. Webpack 架构核心组成 Entry(入口) 指定应用的起点文件,比如 src/index.js。 Module(模块) Webpack 把项目当作模块图,模块可以是 JS、CSS、图片等…...
CMake系统学习笔记
CMake系统学习笔记 基础操作 最基本的案例 // code #include <iostream>int main() {std::cout << "hello world " << std::endl;return 0; }// CMakeLists.txt cmake_minimum_required(VERSION 3.0)# 定义当前工程名称 project(demo)add_execu…...
【web笔记】JavaScript实现有动画效果的进度条
文章目录 1 实现效果2 实现代码 1 实现效果 2 实现代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"utf-8"><style>#progress {width: 300px;height: 20px;border-radius: 0; /* 移除圆角 */-webkit-appearance…...
HarmonyOS Next 弹窗系列教程(3)
HarmonyOS Next 弹窗系列教程(3) 选择器弹窗 (PickerDialog) 介绍 选择器弹窗通常用于在用户进行某些操作(如点击按钮)时显示特定的信息或选项。让用户可以进行选择提供的固定的内容。 以下内容都属于选择器弹窗: …...
