mac mlx大模型框架的安装和使用

mlx是apple平台的大模型推理框架,对mac m1系列处理器支持较好。

这里记录mlx安装和运行示例。

1 安装mlx框架

conda create -n mlx python=3.12

conda activate mlx

pip install mlx-lm

2 运行mlx测试例

以下是测试程序,使用方法和hf、vllm等推理框架基本一致。

复制代码
import os
os.environ['HF_ENDPOINT'] = "https://hf-mirror.com"

import mlx_lm

model_id="mlx-community/Qwen2.5-Coder-7B-Instruct-4bit"

model, tokenizer = mlx_lm.load(model_id)
stream_generate = mlx_lm.stream_generate

messages = [
    {"role": "system", "content": "你是一个科学家型的AI助手。"},
    {"role": "user", "content": "您好!"},
    {"role": "assistant", "content": "你好!有什么我可以帮助你的吗?"},
    {"role": "user", "content": "你能解释一下牛顿第一定律吗,包括公式原来,参数解释等。"}
]

prompt_ids = tokenizer.apply_chat_template(messages)
output_tokens = 0
text = ""

for response in stream_generate(model, tokenizer, prompt=prompt_ids):
    output_tokens += 1
    text += response.text

print(f"\nmlx output: {text}")

mlx output: <|im_start|>牛顿第一定律,也被称为惯性定律,是经典力学中的一个基本定律。它表明,如果一个物体不受外力作用,或者受到的外力相互抵消,那么这个物体将保持其静止状态或者匀速直线运动状态。

公式:F合=0

参数解释:

F合:表示物体受到的合力,单位为牛顿(N)。

0:表示合力为零,即物体不受外力作用或者受到的外力相互抵消。

牛顿第一定律的物理意义:

牛顿第一定律告诉我们,物体的运动状态不会因为没有外力作用而改变。如果物体处于静止状态,它会一直保持静止;如果物体处于匀速直线运动状态,它会一直保持匀速直线运动。这个定律揭示了物体的惯性性质,即物体具有保持其运动状态的倾向。

牛顿第一定律的应用:

牛顿第一定律在日常生活和工程中有很多应用。例如,当我们推一个物体时,如果物体开始移动,我们需要继续施加力以保持其运动状态。如果没有外力作用,物体最终会停下来。此外,牛顿第一定律也解释了为什么我们在汽车急刹车时会向前倾,因为...

reference


smolagents - 如何在mac用agents做简单算术题

https://blog.csdn.net/liliang199/article/details/149281317

相关推荐
xieliyu.几秒前
计算机网络:Fiddler 抓包工具使用教程 + HTTP 协议报文格式详解
java·笔记·计算机网络·测试工具·http·java-ee·fiddler
SunnyDays10111 分钟前
如何使用 Python 给 PDF 添加附件:文档附件与附件注释
开发语言·python·pdf
步行cgn1 分钟前
@Value 详解:Spring 属性注入的核心注解
java·python·spring
词却3 分钟前
机器学习入门:手写数字识别与算法对比
人工智能·算法·机器学习
SamChan903 分钟前
PDF翻译服务端到端基准测试:4款主流方案的吞吐量、延迟、内存占用对比
服务器·网络·python·ai·pdf·wpf
雪芽蓝域zzs8 分钟前
第十四节:后端返回权限动态路由
前端·javascript·vue.js
2401_850481178 分钟前
UVA815
java
霸道流氓气质12 分钟前
Spring AI 多租户隔离方案
java·人工智能·spring
ACP广源盛1392462567313 分钟前
M6/M5 Pro Mac mini 端侧 AI 爆发@ACP#YLB3118 存储扩展芯片在本地 AI 服务中的机会与落地场景
大数据·网络·数据库·人工智能·嵌入式硬件·macos
不会就选b17 分钟前
Linux之socket编程(七)----序列化与反序列化(1)
java·linux·服务器