作者: 引线小白-本文永久链接:httpss://www.limoncc.com/post/66ccaec741608007/
知识共享许可协议: 本博客采用署名-非商业-禁止演绎4.0国际许可证
一、导言
这个专栏,以前都是写比较机器学习数学原理的东西,以后依然会保持。今天笔者单独开一个系列,讲述如何在rust中运行AI模型。计划主题如下:
1、如何在rust中运行pytorch的模型
2、如何使用candle运行大语言模型LLM
3、如何使用axum为模型写一个API服务
4、如何在candle使用gguf格式模型来实现低资源部署
5、如何在rust中运行sdxl
先立flag,再来实现。
二、极简入门
在python模型开发部分,我们用jit导出一个jit的模型。
1 | import torch |
rust部分
去官网下载对应环境的libtorch解压,然后要注意添加如下环境变量
1 | # added by torch |
并在运行时设定环境变量: DYLD_LIBRARY_PATH=Yourpath/libtorch/lib,然后新建一个rust项目,在Cargo.toml中添加libtorch的依赖项1
2
3[dependencies]
# libtorch
tch = "0.13.0"
main.rs文件写入如下代码:
1 | use tch::jit; |
是不是超级简单。当然如果你没rust开发经验,你会看到一些觉得奇怪的语法,诸如::、<>、.、&。其实容易猜出来是什么意思。
::是路径
<>里面是类型
&表示引用
.表示方法
和python不一样路径和方法都用的点.rust里面做了明确区分,然后其他写法和python没有什么区别。
版权声明 | |
由引线小白创作并维护的柠檬CC博客采用署名-非商业-禁止演绎4.0国际许可证。 本文首发于柠檬CC [ https://www.limoncc.com ] , 版权所有、侵权必究。 | |
本文永久链接 | httpss://www.limoncc.com/post/66ccaec741608007/ |
如果您需要引用本文,请参考: |
引线小白. (Oct. 19, 2023). 《一个简单例子——Run AI In Rust系列01》[Blog post]. Retrieved from https://www.limoncc.com/post/66ccaec741608007 |
@online{limoncc-66ccaec741608007, title={一个简单例子——Run AI In Rust系列01}, author={引线小白}, year={2023}, month={Oct}, date={19}, url={\url{https://www.limoncc.com/post/66ccaec741608007}}, } |