chat-with-mlx应用支持多种语言和模型,可以处理文本文档、PDF、TXT文件以及YouTube视频链接,非常适合多语言环境下的数据交互和模型集成。
特性介绍
- 数据交流:支持处理
doc(x)
、pdf
、txt
文件和YouTube视频链接。 - 支持多语言:包括中文、英语、法语、德语、印地语、意大利语、日语、韩语、西班牙语、土耳其语和越南语。
- 模型集成简便:可以轻松集成任何兼容HuggingFace和MLX的开源模型。
安装和使用步骤
简易设置
- 安装Pip。
- 使用命令
pip install chat-with-mlx
进行安装。 - 注意:如果你想在UI中添加自己的模型,这种设置方式相对困难,但它是测试应用的快速方法。
手动Pip安装
git clone https://github.com/qnguyen3/chat-with-mlx.git
cd chat-with-mlx
python -m venv .venv
source .venv/bin/activate
pip install -e .
手动Conda安装
git clone https://github.com/qnguyen3/chat-with-mlx.git
cd chat-with-mlx
conda create -n mlx-chat python=3.11
conda activate mlx-chat
pip install -e .
使用方法
- 启动应用:输入命令
chat-with-mlx
。
支持的模型
列出了支持的几种模型,如Google Gemma系列、Mistral系列和其他多种模型,适用于不同的语言和任务需求。
添加自定义模型
方案1
- 只需在
chat_with_mlx/models/configs
中添加一个简单的.yaml配置文件即可添加自己的模型。 - 示例配置文件内容如下:
original_repo: google/gemma-2b-it
mlx-repo: mlx-community/quantized-gemma-2b-it
quantize: 4bit
default_language: multi
- 添加配置后,模型将在应用内部自动加载。
方案2
- 与方案1类似,但如果模型下载较慢,你可以手动下载并添加到
chat_with_mlx/models/download
。
已知问题
- 需要在加载新模型前卸载旧模型,否则可能需要重启应用。
- 如果需要切换文件,必须手动停止索引,否则数据库将添加新文档。
为什么选择MLX?
MLX是苹果公司机器学习研究团队推出的一套机器学习框架,具有与NumPy相似的Python API和其他高级特性,如自动微分和向量化操作,支持多设备执行操作,并采用统一内存模型。