跳转到主要内容

使用MLC运行模型的LLM插件

项目描述

llm-mlc

PyPI Changelog Tests License

LLM 插件,用于使用 MLC 运行模型

安装

在与 llm 相同的环境中安装此插件。

llm install llm-mlc

您需要手动安装两个依赖项 - mlc-chat-nightlymlc-ai-nightly - 因为安装过程因平台而异,尚未自动化。

这些步骤在 mlc.ai/package 网站上有详细描述

如果您使用的是苹果硅M1/M2 Mac,可以运行以下命令

llm mlc pip install --pre --force-reinstall \
  mlc-ai-nightly \
  mlc-chat-nightly \
  -f https://mlc.ai/wheels

这里的 llm mlc pip 命令确保 pip 将在 llm 本身相同的虚拟环境中运行。

对于其他系统,请 按照此处说明操作

最后,运行 llm mlc setup 命令以完成安装

llm mlc setup

这将设置 git lfs 并使用它下载一些额外的依赖项

Git LFS is not installed. Should I run 'git lfs install' for you?
Install Git LFS? [y/N]: y
Updated Git hooks.
Git LFS initialized.
Downloading prebuilt binaries...
Cloning into '/Users/simon/Library/Application Support/io.datasette.llm/mlc/dist/prebuilt/lib'...
remote: Enumerating objects: 221, done.
remote: Counting objects: 100% (86/86), done.
remote: Compressing objects: 100% (54/54), done.
remote: Total 221 (delta 59), reused 56 (delta 32), pack-reused 135
Receiving objects: 100% (221/221), 52.06 MiB | 9.13 MiB/s, done.
Resolving deltas: 100% (152/152), done.
Updating files: 100% (60/60), done.
Ready to install models in /Users/simon/Library/Application Support/io.datasette.llm/mlc

安装模型

安装后,您需要使用 llm mlc download-model 命令下载一个模型。

以下是下载和安装Llama 2的方法

llm mlc download-model Llama-2-7b-chat --alias llama2

这将下载大约8GB的内容。

您还可以使用 Llama-2-13b-chat(约15.15GB)或 Llama-2-70b-chat(非常大),尽管这些文件要大得多。

-a/--alias 是可选的,但可以用来为模型设置一个更短的别名。然后可以使用 llm -m <alias> 而不是全名。

download-model 命令还可以接受指向 Hugging Face上的MLC存储库 的URL。

例如,要安装 mlc-chat-WizardLM-13B-V1

llm mlc download-model https://hugging-face.cn/mlc-ai/mlc-chat-WizardLM-13B-V1.2-q4f16_1

您可以使用以下方法查看您安装的所有模型的完整列表

llm mlc models

这将还会显示您应使用的模型名称,例如

MlcModel: mlc-chat-Llama-2-7b-chat-hf-q4f16_1 (aliases: llama2, Llama-2-7b-chat)

通过模型运行提示

一旦您下载并添加了模型,您可以运行如下提示

llm -m Llama-2-7b-chat 'five names for a cute pet ferret'

太好了!以下是五个可爱且富有创意的宠物沙鼠名称建议

  1. Ferbie - 一个适合友好、外向的沙鼠的俏皮、充满爱心的名字。
  2. Mr. Whiskers - 一个优雅、成熟的名称,适合精心打理、庄重的沙鼠。
  3. Luna - 一个充满天籁之音、梦幻般的名字,适合好奇、爱冒险的沙鼠。
  4. Felix - 一个快乐、充满活力的名字,适合活泼、顽皮的沙鼠。
  5. Sprinkles - 一个有趣、俏皮的名字,适合快乐、充满活力且带有一丝顽皮的沙鼠。

记住,最重要的是选择一个您和您的沙鼠都喜爱并享受的名字!

要发送后续提示以继续当前对话,请使用 -c

llm -c 'two more'

当然!以下是两个更多可爱的宠物沙鼠名称建议

  1. Digger - 一个适合喜欢挖掘和打洞的宠物,也是对沙鼠作为挖掘者的本能的致敬。
  2. Gizmo - 一个有趣、古怪的名字,适合好奇、顽皮的宠物,也是对沙鼠爱玩、富有创造力的性格的致敬。

模型选项

这些选项适用于所有模型。它们主要接受0.0到1.0之间的浮点值。

  • -o temperature:较高的温度鼓励更多样化的输出,而较低的温度产生更确定的输出。
  • -o top_p:在每一步中,我们从累积概率超过此值的最低集合中选择标记。
  • -o repetition_penalty:控制模型生成重复文本的可能性。
  • -o max_gen_len:接受一个整数,它控制生成的文本的最大长度。

使用方法如下

llm -m Llama-2-7b-chat \
  -o temperature 0.5 \
  -o top_p 0.9 \
  -o repetition_penalty 0.9 \
  -o max_gen_len 100 \
  'five names for a cute pet ferret'

MLC文档对这些选项有更多详细信息。

开发

要本地设置此插件,首先检出代码。然后创建一个新的虚拟环境

cd llm-mlc
python3 -m venv venv
source venv/bin/activate

现在安装依赖项和测试依赖项

pip install -e '.[test]'

要运行测试

pytest

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

llm-mlc-0.5.tar.gz (11.2 kB 查看哈希值)

上传时间

构建分布

llm_mlc-0.5-py3-none-any.whl (11.7 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面