AI日报:苹果为使用Mac的人工智能开发者推出开源工具

文章目录

  • 总览
  • 主要介绍
    • 开发理念
    • 开发细节
    • MLX功能
    • 用途
  • MLX可以用于商业软件吗?

总览

苹果正在为开发人员提供新的工具,用于在其硬件上训练和运行大型语言模型。

主要介绍

开发理念

苹果公司通过发布一系列新的开源人工智能工具,向开源人工智能领域致敬。

用于机器学习的MLX框架是专门为苹果的Silicon处理器架构开发的。MLX可通过GitHub获得,旨在简化苹果硬件上的机器学习模型培训和部署。

在这里插入图片描述

开发细节

苹果表示,MLX的设计受到了其他流行框架的“启发”,包括PyTorch、Jax和ArrayFire。然而,MLX的不同之处在于统一的内存模型——MLX中的阵列位于共享内存中,而操作可以在任何支持的设备类型上执行,而无需执行数据复制。

MLX存储库中写道:“该框架旨在用户友好,但仍然可以高效地训练和部署模型。框架本身的设计在概念上也很简单。我们打算让研究人员更容易地扩展和改进MLX,以快速探索新想法。”。

MLX有一个Python API,它紧跟NumPy——一个流行的Python编程库。MLX还包含C++API和更高级别的包,这些包遵循PyTorch构建更复杂的模型。

MLX功能

MLX的其他关键功能包括:

  • 可组合函数转换:MLX具有用于自动微分、自动矢量化和计算图优化的可组合函数变换。

  • 惰性计算:MLX中的计算是惰性的,只有在需要时才具体化数组。

  • 动态图构建:MLX中的计算图是动态构建的。如果用户更改函数的形状,参数不会触发缓慢的编译,从而使调试更容易、更直观。

在这里插入图片描述

用途

为了展示MLX的能力,苹果机器学习研究科学家Awni Hannun在X(推特)上发布了一段视频,显示了Meta的LLaMA的70亿参数版本在M2 Ultra芯片上运行,该芯片在苹果的高端计算系统Mac Studio和Mac Pro中都有。

苹果展示MLX的其他例子包括使用稳定扩散生成图像、使用OpenAI的Whisper进行语音识别以及使用LoRA进行参数高效微调。

与大多数公司一样,苹果一直在加强其人工智能工作。今年夏天有报道称,该公司正在开发自己的基于网络应用程序的聊天机器人服务**“Apple GPT”**

MLX可以用于商业软件吗?

苹果的MLX是根据麻省理工学院的许可证提供的,该许可证允许广泛的使用自由,包括商业用途

许可证的条件要求在软件的所有副本中包含版权声明和许可声明。

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

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

相关文章

java jvm堆内存分析工具MAT(导出运行中jvm堆内存、加载导出文件分析)

下载地址:https://eclipse.dev/mat/downloads.php 历史版本:https://eclipse.dev/mat/previousReleases.php jdk1.8这些老版本jdk需要使用历史版本的,我的是1.8,用的1.10的mat 我下载的地址:https://www.eclipse.org/d…

C# 使用异步委托获取线程返回值

写在前面 异步委托主要用于解决 ThreadPool.QueueUserWorkItem 没有提供获取线程执行完成后的返回值问题。异步委托只能在.Net Framework 框架下使用,.Net Core中会报平台错误,而且使用Task.Result来获取返回值,可以达成同样的目的&#xff…

区块链技术的未来,了解去中心化应用的新视角

小编介绍:10年专注商业模式设计及软件开发,擅长企业生态商业模式,商业零售会员增长裂变模式策划、商业闭环模式设计及方案落地;扶持10余个电商平台做到营收过千万,数百个平台达到百万会员,欢迎咨询。 随着…

Python与ArcGIS系列(十五)根据距离抓取字段

目录 0 简述1 实例需求2 arcpy开发脚本0 简述 在处理gis数据的时候,会遇到这种需求:将一个图层与另一个图层中相近的要素进行字段赋值。本篇将介绍如何利用arcpy及arcgis的工具箱实现这个功能。 1 实例需求 为了介绍这个功能的实现,我们需要有一个特定的功能需求。在这里选…

Mac如何设置control+space切换上一中输入法

#设置方法# *搜索输入法 系统设置-搜索:输入法,并点击键盘快捷键 *点击输入法,勾选:选择上一个输入法,点击完成。

ServletJSP

Servlet 1.Servlet生命周期 2.HttpServletRequest与HttpServletResponse 2.1HttpServletRequest 获取请求参数 请求乱码问题: 请求转发 request作用域 2.2HttpServletResponse 输出 乱码 重定向 3.Cookie 4.Sessions 5.ServletContext 获取方式及常用方法&a…

【Spring教程17】Spring框架实战:实例详解解读AOP通知类型的使用

欢迎大家回到《Java教程之Spring30天快速入门》,本教程所有示例均基于Maven实现,如果您对Maven还很陌生,请移步本人的博文《如何在windows11下安装Maven并配置以及 IDEA配置Maven环境》,本文的上一篇为《AOP配置管理中AOP切入点表…

ubuntu如何远程ssh登录Windows环境并执行测试命令

ubuntu如何远程ssh登录Windows环境并执行测试命令 1 paramiko模块简介1.1 安装paramiko1.2 paramiko基本用法1.2.1 创建SSHClient实例1.2.2 设置主机密钥策略1.2.3 连接SSH服务器1.2.4 执行命令1.2.5 关闭SSH连接1.2.6 异常处理 2 windows的配置2.1 启动OpenSSH服务2.2 配置防火…

JMeter直连数据库

JMeter直连数据库 使用场景操作步骤 使用场景 用作请求的参数化 登录时需要的用户名,密码可以从数据库中查询获取 用作结果的断言 添加购物车下订单,检查接口返回的订单号,是否与数据库中生成的订单号一致 清理垃圾数据 添加商品后&#xff…

Gin之GORM 操作数据库(MySQL)

GORM 简单介绍 GORM 是 Golang 的一个 orm 框架。简单说,ORM 就是通过实例对象的语法,完成关系型数据库的操作的技术,是"对象-关系映射"(Object/Relational Mapping) 的缩写。使用 ORM框架可以让我们更方便…

Kotlin+Apache HttpClient+代理服务器=高效的eBay图片爬虫

引入 你是否想过用Kotlin来编写爬虫程序?你是否想过用Apache HttpClient来处理HTTP请求和响应?你是否想过用代理服务器来绕过反爬措施?如果你的答案是肯定的,那么本文将为你介绍一种高效的eBay图片爬虫的实现方式,让你…

深入理解 Kafka 集群管理与最佳实践

构建和管理一个稳定、高性能的Kafka集群对于实现可靠的消息传递至关重要。本文将深入研究Kafka集群的各个方面,包括集群搭建、节点配置、分区与副本管理、安全性与监控,为读者提供全面的指导和实例代码。 1. 搭建 Kafka 集群 1.1 Broker 节点 在Kafka…

C++11 【初识】

C11简介 1.在2003年C标准委员会曾经提交了一份技术勘误表(简称TC1),使得C03这个名字已经取代了C98称为C11之前的最新C标准名称。 2.不过由于C03(TC1)主要是对C98标准中的漏洞进行修复,语言的核心部分则没有改动,因此人们习惯性的把两个标准合…

java版Spring Cloud+Spring Boot+Mybatis之隐私计算 FATE - 多分类神经网络算法测试

一、说明 本文分享基于 Fate 使用 横向联邦 神经网络算法 对 多分类 的数据进行 模型训练,并使用该模型对数据进行 多分类预测。 二分类算法:是指待预测的 label 标签的取值只有两种;直白来讲就是每个实例的可能类别只有两种 (0 或者 1)&…

【运维】Kafka高可用: KRaft(不依赖zookeeper)集群搭建

文章目录 一. kafka kraft 集群介绍1. KRaft架构2. Controller 服务器3. Process Roles4. Quorum Voters 二. 集群安装1. 安装1.1. 配置1.2. 格式化 2. 启动测试2.1. 启功节点服务2.2. 测试 本文主要介绍了 kafka raft集群架构: 与旧架构的不同点,有哪些…

ISP去噪(2)_np 噪声模型

#灵感# ISP 中的去噪,都需要依赖一个噪声模型。很多平台上使用采集的raw进行calibration,可以输出这个模型,通常称为 noise profile。 名词解释: Noise profile 似乎可以翻译成“噪声档案”,其含义是某个噪声源&…

昇腾910安装驱动出错,降低Centos7.6的内核版本

零、问题描述: 在安装Atlas800-9000服务器的驱动的时候,可能会出现错误:Dkms install failed, details in : /var/log/ascend_seclog/ascend_install.log 如下所示: [rootlocalhost ~]# ./Ascend-hdk-910-npu-driver_23.0.rc3_l…

数字孪生项目的开发框架

数字孪生的开发框架提供了一套工具和API,使开发者能够创建和管理数字孪生模型。这些框架通常包括虚拟建模、仿真、数据集成和分析等功能。以下是一些常见的数字孪生开发框架,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发…

python matplotlib set_aspect

说明: # 设置轴比例相等,以获得圆柱体视角 ax.set_aspect(equal) 代码案例: import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D import numpy as np# 创建数据 theta np.linspace(0, 2*np.pi, 100) z np.linspace(0, 1, 100) r z**2 …

k8s集群部署及可视化kuboard 部署

目录 一.准备环境 1.准备三台服务器 2.做域名解析[集群] 3.时间同步[集群] 4.关闭防火墙与selinux[集群] 5.配置静态ip[集群] 6.关闭swap分区[集群] 7.注意: 二.docker部署[集群] 2.安装最新版 3.查看Docker版本: 4.启动Docker服务&#xff1…