上周,我在为期六周的“掌握大型语言模型:开发者与数据科学家会议”上做了一场演讲,主题是如何从命令行访问和利用大型语言模型。我的重点是介绍我开发的名为LLM的Python命令行工具,以及如何使用它及其插件来探索这些模型,并将其用于实际任务。
演讲视频被录制并上传到了YouTube,我还将其转换成了带有详细注释和屏幕截图的演示文稿(没有幻灯片)。LLM是一个工具,旨在帮助用户直接在终端中运行大型语言模型提示。你可以通过pipx、pip或brew安装它,比如pipx install llm
。
一旦安装了LLM,你可以通过llm keys set openai
设置OpenAI模型,然后输入你的API密钥。此外,还有许多插件支持其他提供商的模型,甚至包括本地运行的模型。
基本用法非常简单,配置好OpenAI密钥后,只需输入像llm '五个宠物鹈鹕的好名字'
这样的提示,输出会实时显示在终端,或者重定向到文件中,如llm '五个宠物鹈鹕的好名字' > pelicans.txt
。
使用-c
选项可以进行连续对话,比如llm -c '然后说说海豹'
,后续的追问可以这样添加。
LLM通过插件支持额外的模型,这些插件列在LLM插件目录中,包含远程API和本地模型的众多选择。例如,我演示了llm-claude-3
插件,它提供了Anthropic Claude 3家族模型的访问,其中Claude 3 Opus的质量接近GPT-4o,而Claude 3 Haiku则更便宜且性能更好。
每次运行提示和响应都会永久记录在SQLite数据库中,你可以通过llm logs path
查看数据库路径。如果安装了Datasette,可以用它浏览数据库,就像这样操作:datasette "$(llm logs path)"
。
我还分享了一个搜索功能,展示了我用LLM在笔记本上记录的2434个响应。通过llm -c
选项,我们可以看到对话中的多轮提问。
除了远程模型,LLM还可以与本地模型如GPT4All配合,通过llm install llm-gpt4all
安装。例如,你可以用Mistral-7B Instruct这款高质量的小型模型进行交互。
为了更高效地运行模型,LLM提供了llm chat
命令,它可以在多个提示之间保持模型在内存中,或者使用Ollama本地服务器来运行模型。
Mozilla赞助的项目LLamafile是一个激动人心的选择,它将模型和运行所需软件打包成一个可跨平台执行的单个文件。LLM可以通过llm-llamafile
插件与LLamafile实例通信。