【最新报道】初窥Windows AI 工作室

自我介绍

  • 做一个简单介绍,酒研年近48 ,有20多年IT工作经历,目前在一家500强做企业架构.因为工作需要,另外也因为兴趣涉猎比较广,为了自己学习建立了三个博客,分别是【全球IT瞭望】,【架构师研究会】和【开发者开聊】,有更多的内容分享,谢谢大家收藏。
  • 企业架构师需要比较广泛的知识面,了解一个企业的整体的业务,应用,技术,数据,治理和合规。之前4年主要负责企业整体的技术规划,标准的建立和项目治理。最近一年主要负责数据,涉及到数据平台,数据战略,数据分析,数据建模,数据治理,还涉及到数据主权,隐私保护和数据经济。 因为需要,比如数据资源入财务报表,另外数据如何估值和货币化需要财务和金融方面的知识,最近在学习财务,金融和法律。打算先备考CPA,然后CFA,如果可能也想学习法律,备战律考。
  • 欢迎爱学习的同学朋友关注,也欢迎大家交流。微信小号【ca_cea】

微软的桌面人工智能开发环境提供了早期预览,可以让您构建在PC和移动设备上运行的小型语言模型。

微软利用其Ignite 2023活动中以开发者为中心的部分介绍了一系列人工智能开发工具。Azure AI Studio使用Azure OpenAI模型或其他模型支持云托管应用程序的大规模人工智能开发,而Copilot Studio则通过OpenAI支持的“增强”扩展了旧的Power Virtual Agents低代码人工智能工具

微软还宣布了第三个工具,但它花了一段时间才出现在开发者的电脑上。该工具是Windows AI Studio,现在可以预览。让我们来看看。

Windows AI Studio简介

Windows AI Studio旨在将微软及其合作伙伴的人工智能模型库引入PC,现在使用GPU,但最终也使用板载人工智能加速器,如微软最新Surface硬件中的Arm和Intel NPU。这些NPU最初是在我撰写本专栏的Surface Laptop Studio 2中交付的。随着DirectML对这些和其他设备中集成的Intel NPU的支持将于2024年初到期,这一选项应该对开发人员和其他用户具有吸引力。

Windows AI Studio旨在帮助您训练和自定义模型,为代码中的使用做好准备。经过培训后,您可以使用ONNX(开放神经网络交换)跨平台运行时转换模型以在桌面和移动应用程序中使用。作为Visual Studio代码扩展提供的Windows AI Studio将允许您将许多不同的工具和AI模型放在一个地方,与其他工具一起工作,这样您就可以在构建模型的同时完善模型。NET应用程序。


Windows AI Studio提供了一个有趣的Windows和Linux工具的混合体,可以在CPU和GPU上工作,使用Windows Linux子系统(WSL)来托管和运行模型。这种方法确实需要功能强大的硬件、充足的内存和最近的GPU。如果没有离散GPU,您将无法使用Windows AI Studio,该GPU可以是工作站级卡,也可以是通过Thunderbolt连接工作的外部GPU。

Windows AI Studio安装和先决条件

Windows AI Studio安装起来非常简单。您可以从Visual Studio市场下载它,在那里您还可以找到快速入门说明。请注意,默认情况下,Visual Studio Code中的Visual Studio Marketplace视图设置为安装发布版本,因此您可能需要将视图切换到预发布版本。一旦你做出了改变,下载就变得简单快捷。

有一些重要的先决条件。你需要一个Nvidia GPU和WSL,至少运行Ubuntu 18.4版本作为默认Linux。安装Windows AI Studio后,将检查WSL环境中是否支持Conda和CUDA,以便使用GPU。如果没有安装,Windows AI Studio提供了一个一键选项,以确保所有必备库都到位。

这使用Visual Studio Code的远程服务器选项来加载和运行安装脚本。如果要查看它的运行情况,请打开Visual Studio Code的内置终端并切换到其“输出”视图。安装可能需要一段时间,因为它将下载并安装相关的库。预计它至少需要五分钟,如果你有一台旧电脑,则需要更长的时间。Windows AI Studio文档目前仅在GitHub上;Microsoft Learn仅显示占位符页面。

您在Windows AI Studio中的第一个模型

安装后,Windows AI Studio会在Visual Studio代码扩展侧边栏中添加一个新的类似芯片的图标。点击此按钮可启动Windows AI Studio开发环境。在启动时,它将检查您的开发环境是否仍然满足必要的先决条件。一旦检查通过,并且对WSL配置进行了任何更新,扩展就会加载一个What's New页面,并用其当前的一组功能填充其操作窗格。在最新的预览版中,可以看到四种不同的操作,并且计划进行更多操作。然而,目前只有一个有效,即模型微调动作。

其他计划中的选项包括检索增强一代(RAG),这是一个与微软Phi-2基础模型合作的游乐场,以及访问Hugging Face等服务的现成模型库。使用Phi-2将允许您构建和训练自己的小型语言模型,而无需依赖Azure OpenAI等云托管服务。

RAG支持将允许您采用现有的大型语言模型,并将其用作您自己的自定义LLM的基础,而无需在您自己的数据上对其进行完全再培训。RAG使用即时工程技术为LLM提供更全面的背景,以得出更准确的答案。使用RAG,您可以将更多特定于领域或最新的数据推送到LLM中,作为提示的一部分,使用外部数据源,包括您自己的特定业务信息。

将RAG工具添加到Windows AI Studio中应该可以帮助您构建和测试数据的矢量索引和嵌入。一旦你有了这些,你就可以开始开发搜索驱动的管道,这些管道将使你的LLM应用程序成为基础,并使用TypeChat、Prompt Flow和Semantic Kernel等工具将它们的响应限制在你自己的域中。

用QLoRA量化模型

然而,目前,这一早期预览版专注于微调现有的人工智能模型,准备转换为ONNX并嵌入WinML项目。单独使用此功能是值得的,因为它是任何自定义机器学习产品的关键要求,您希望您的模型在本地硬件上运行,而不是在云中运行。

要设置模型调整环境,首先选择一个本地文件夹,然后选择一个模型。最初的选择很小,有五种开源文本生成模型可从微软、拥抱脸、Mistral AI和Meta获得。在这里,微软正在使用QLoRA调整方法:量化低级别适配器,这是华盛顿大学开发的一种方法,已经显示出令人印象深刻的结果。最初的论文描述了一个模型系列,它在单个GPU上只需24小时的调优,就可以提供ChatGPT 99.3%的性能。

如果我们要把生成人工智能带到我们的计算机和手持设备上,这就是我们需要的方法。我们不需要大型语言模型的复杂性(或大小);相反,我们需要在一个小的语言模型中对自己的数据执行相同的性能。QLoRA和类似技术是在开源基础模型之上构建这些定制AI的一种方式。

选择模型后,单击“配置项目”开始在Windows和WSL中设置项目。在使用模型之前,您可能需要输入“拥抱脸”的访问令牌或注册访问。Windows AI Studio为您提供了一组调整参数,您将使用这些参数来优化模型的性能。对于初始测试,只需接受默认值并等待模型生成即可。还可以选择使用其他数据集来改进调优。

使用Olive微调模型

生成模型后,系统会提示您在Windows AI Studio工作区中重新启动Visual Studio代码窗口。这会将您从Windows切换到WSL,随时可以使用安装过程中安装的工具。作为工作区初始设置的一部分,Windows AI Studio将安装Prompt Flow扩展。

打开模型工作区后,可以使用Visual Studio代码终端启动用于调整模型的Conda环境。现在,您可以在默认内容或自己的数据集上使用QLoRA来运行Olive。这可能需要一些时间,所以要做好等待的准备。即使在相对高端的显卡上,调整也需要几个小时。

当调整过程完成后,您可以使用一个简单的Gradio web界面来测试您的训练模型,然后再将其打包并在应用程序中使用。这是一个有趣的小工具,值得在调优前后运行,这样您就可以看到流程如何影响交互。

重要的是要记住,这是一个非常早期发布的复杂工具。微软在简化人工智能模型和调优工具方面做了很多工作,但你仍然需要知道你想要从你正在构建的语言模型中得到什么。作为车削过程的一部分,你可以调整很多变量,了解每个变量控制的是什么,以及它们如何影响最终的模型是值得的。

目前,Windows AI Studio很可能是人工智能专家的一个工具。然而,它显示了很多希望。随着它的发展,并添加了更多功能,它很容易成为Windows开发工作流程的重要组成部分——尤其是如果人工智能加速器成为下一代PC的常见组件。

欢迎收藏  【全球IT瞭望】,【架构师酒馆】和【开发者开聊】.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/276320.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python+OpenCV 零基础学习笔记(6):ROI

文章目录 相关链接运行环境前言ROI颜色区域分割颜色通道合并 相关链接 【2022B站最好的OpenCV课程推荐】OpenCV从入门到实战 全套课程 CSDN标题里个括号对应视频的分P OpenCVPython CSDN专栏 Gitee 项目地址 运行环境 Python:3.11.5Anaconda:23.7.4IDE:vscode运行环境&#x…

three.js 模型 居中

物体不居中 模型的几何中心位置不对, 设置偏离物体实际几何中心,当设置position(0,0,0)时就会出现偏离。 解决方案 此处有两种解决方案 建模师处理模型,将模型的几何中心移动到(0, 0&#…

数据集介绍【02】CIFAR10

CIFAR10数据集共有60000个样本,每个样本都是一张32*32像素的RGB图像(彩色图像),每个RGB图像又必定分为3个通道(R通道、G通道、B通道)。这60000个样本被分成了50000个训练样本和10000个测试样本。 CIFAR10数…

使用terraform 来创建GCP的instance template 和基于它的vm

本人在上一篇的文章中已经介绍了如何去创建 google cloud的 vm 的image 和 instance template了 url: 快速构建自定义配置好的VM - 使用GCP instance-template 和 custom-image 但是里面的操作是基于gcloud CLI的。 在实际项目上, 我们对google cloud …

Mysql For Navicate (老韩)

Navicate创建数据库 先创建一个数据库;然后在数据库中创建一张表;在表格当中填入相应的属性字段;打开表, 然后填入相应的实例字段; – 使用数据库图形化App和使用指令来进行操作各有各的好处和利弊; 数据库的三层结构(破除MySQL神秘) 所谓安装Mysql数据库, 就是在主机安装一…

树莓派界面改成中文

安装完树莓派系统(Raspberry Pi OS with Desktop),第一次启动时,时会有如下面二个图所示,让你选择区域时区和语言。 树莓派默认的语言为英文,如果你在安装时没有选择的话,默认的区域为英国,语言为英国英文&…

java数据结构与算法刷题-----LeetCode 680. 验证回文串 II

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 思路:双指针 详情见代码注释 class Solution {//贪心双指针&a…

apisix 插件配置 未生效 未起作用

插件配置完成,却没生效,请检查插件的启用状态是否是启用状态, 以某个route配置的限速插件(limit-req)为例 1.打开dashboad-->路由-->某个路由-->更多-->查看, 查看配置,实际未启用…

C语言之进制转换

C语言之进制转换 一、引言二、十进制与二进制、八进制、十六进制三、二进制与八进制、十六进制四、八进制与十六进制 一、引言 在C语言中,经常使用的整数的进制有十进制、二进制、十六进制(在C语言中以0x或0X为前缀)、八进制(在C…

PTA-感染人数

设某住宿区域是一个nn的方阵,方阵中的每个小方格为一个房间,房间里可能住一个人,也可能空着。第一天,某些房间中住着的人得了一种高传染性的流感,以后每一天,得流感的人会使其邻居(住在其上、下…

【重点!!!】【贪心】45.跳跃游戏II

题目 法1:贪心 贪心是最优解法,必须掌握!重点理解,看B站视频辅助!!! 在具体的实现中,我们维护当前能够到达的最大下标位置,记为边界。我们从左到右遍历数组&#xff0…

对接第三方统一登录接口时,调用对方接口在Nginx上报405响应码错误解决方法

1、先看我的Nginx的配置文件(业务入口局部配置) 2、正确的解决方式是在location代码块中添加一行代码,【error_page 405 200 $request_uri;】如下所示: 3、接口测试 4、备注:如果报以下错误,是因为Nginx中…

【多线程及高并发 三】volatile synchorized 详解

👏作者简介:大家好,我是若明天不见,BAT的Java高级开发工程师,CSDN博客专家,后端领域优质创作者 📕系列专栏:多线程及高并发系列 📕其他专栏:微服务框架系列、…

【快速全面掌握 WAMPServer】04.人生初体验

网管小贾 / sysadm.cc 我们在前面的教程中为小伙伴们详细地介绍了 WampServer 的安装方法,相信大家对于如何安装应该已经有了一个比较完全的掌握。 在完全掌握安装方法之后,我们还可以更加便捷地使用我为大家提供的一键安装批处理程序来快速搞定安装部署…

apache 文件读取命令执行(CVE-2021-41773)

漏洞描述: CVE-2021-41773 漏洞是在 9 月 15 日发布的 2.4.49 版中对路径规范化所做的更改引入到 Apache HTTP Server 中的。此漏洞仅影响具有“require all denied”访问权限控制配置被禁用的Apache HTTP Server 2.4.49 版本。成功的利用将使远程攻击者能够访问易…

【Mybatis】深入学习MyBatis:CRUD操作与动态SQL实战指南

🍎个人博客:个人主页 🏆个人专栏: Mybatis ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 一基本用法 1 CRUD操作 1. 增加(Create) 2. 查询(Read) 3. 更新&#x…

endpoints控制器源码解析

endpoints controller 的实现原理 本文从源码的角度分析KubeController Attachdetach相关功能的实现。 本篇kubernetes版本为v1.27.3。 kubernetes项目地址: https://github.com/kubernetes/kubernetes controller命令main入口: cmd/kube-controller-manager/controller-mana…

10分钟带你了解分布式系统的补偿机制

我们知道,应用系统在分布式的情况下,在通信时会有着一个显著的问题,即一个业务流程往往需要组合一组服务,且单单一次通信可能会经过 DNS 服务,网卡、交换机、路由器、负载均衡等设备,而这些服务于设备都不一…

在微服务中如何实现全链路的金丝雀发布?

目录 1. 什么金丝雀发布?它有什么用? 2.如何实现全链路的金丝雀发布 2.1 负载均衡模块 2.2 网关模块 2.3 服务模块 2.3.1 注册为灰色服务实例 2.3.2 设置负载均衡器 2.3.3 传递灰度发布标签 2.4 其他代码 2.4.1 其他业务代码 2.4.2 pom.xml 关…

出现频率高达80%的软件测试常见面试题合集(内附详细答案)

最近看到网上流传着各种面试经验及面试题,往往都是一大堆技术题目贴上去,但是没有答案。 为此我业余时间整理了这份软件测试基础常见的面试题及详细答案,望各路大牛发现不对的地方不吝赐教,留言即可。 01 软件测试理论部分 1.1…