在JupyterLab中集成本地AI编程助手:Jupyter AI、Ollama与Hugging Face的完美结合

Jupyter AI将生成式AI功能直接集成到Jupyter界面中。拥有一个本地AI助手不仅确保了隐私,还减少了延迟,并提供了离线功能,使其成为开发者的强大工具。本文将介绍如何在JupyterLab中使用Jupyter AI、Ollama和Hugging Face设置一个本地AI编程助手。通过本文,您将能够在JupyterLab中拥有一个功能齐全的编程助手,能够自动补全代码、修复错误、从零创建新笔记本等,如下图所示。

图片

⚠️ Jupyter AI仍在积极开发中,因此某些功能可能会出现问题。截至撰写本文时,我已测试了该设置并确认其可用,但随着项目的发展,可能会有变化。此外,助手的性能取决于您选择的模型,因此请确保选择适合您用例的模型。

什么是Jupyter AI?

首先,什么是Jupyter AI?顾名思义,Jupyter AI是JupyterLab的生成式AI扩展。这个强大的工具将您的标准Jupyter笔记本或JupyterLab环境转变为生成式AI的游乐场。最棒的是?它还可以在Google Colaboratory和Visual Studio Code等环境中无缝运行。该扩展承担了所有繁重的工作,直接在您的Jupyter环境中提供对各种模型提供商(包括开源和闭源)的访问。

安装与设置

图片

设置环境涉及三个主要组件:

  1. JupyterLab

  2. Jupyter AI扩展

  3. Ollama(用于本地模型服务)

  4. [可选] Hugging Face(用于GGUF模型)

老实说,让助手解决编码错误是容易的部分。棘手的是确保所有安装都正确完成。因此,正确遵循步骤至关重要。

1. 安装Jupyter AI扩展

建议为Jupyter AI创建一个新环境,以保持现有环境的整洁和有序。完成后,按照以下步骤操作。Jupyter AI需要JupyterLab 4.x或Jupyter Notebook 7+,因此请确保您已安装最新版本的Jupyter Lab。您可以使用pip或conda安装/升级JupyterLab:

# 使用pip安装JupyterLab 4
pip install jupyterlab~=4.0

接下来,安装Jupyter AI扩展:

pip install "jupyter-ai[all]"

这是最简单的安装方法,因为它包含了所有提供商的依赖项(因此它支持Hugging Face、Ollama等,开箱即用)。截至目前,Jupyter AI支持以下模型提供商:

图片

如果在安装Jupyter AI时遇到错误,可以手动安装Jupyter AI,而不使用[all]可选依赖组。这样,您可以控制Jupyter AI环境中可用的模型。例如,要仅安装支持Ollama模型的Jupyter AI,请使用以下命令:

pip install jupyter-ai langchain-ollama

依赖项取决于模型提供商(见上表)。接下来,重新启动您的JupyterLab实例。如果您在左侧边栏看到一个聊天图标,这意味着一切已完美安装。使用Jupyter AI,您可以在笔记本中与模型聊天或使用内联魔法命令。

图片

2. 设置Ollama以使用本地模型

现在Jupyter AI已安装,我们需要为其配置一个模型。虽然Jupyter AI直接集成了Hugging Face模型,但某些模型可能无法正常工作。相反,Ollama提供了一种更可靠的方式来本地加载模型。

Ollama是一个方便的工具,用于在本地运行大型语言模型。它允许您从其库中下载预配置的AI模型。Ollama支持所有主要平台(macOS、Windows、Linux),因此请选择适合您操作系统的方法,并从官方网站下载并安装。安装后,通过运行以下命令验证其是否正确设置:

ollama --version
------------------------------
ollama version is 0.6.2

此外,确保您的Ollama服务器正在运行,您可以通过在终端调用ollama serve来检查:

$ ollama serve
Error: listen tcp 127.0.0.1:11434: bind: address already in use

如果服务器已激活,您将看到类似上面的错误,确认Ollama正在运行和使用中。

使用Ollama的模型

选项1:使用预配置模型

Ollama提供了一个预训练模型库,您可以下载并在本地运行。要开始使用模型,请使用pull命令下载。例如,要使用qwen2.5-coder:1.5b,请运行:

ollama pull qwen2.5-coder:1.5b

这将在您的本地环境中下载模型。要确认模型是否已下载,请运行:

ollama list

这将列出您使用Ollama在系统上下载并存储的所有模型。

选项2:加载自定义模型

如果您需要的模型不在Ollama的库中,您可以通过创建一个指定模型源的模型文件来加载自定义模型。有关此过程的详细说明,请参阅Ollama导入文档。

选项3:直接从Hugging Face运行GGUF模型

Ollama现在支持直接从Hugging Face Hub运行GGUF模型,包括公共和私有模型。这意味着如果您想直接从Hugging Face Hub使用GGUF模型,您可以这样做,而无需像选项2中那样需要自定义模型文件。

例如,要加载Hugging Face上的4位量化Qwen2.5-Coder-1.5B-Instruct模型:

  1. 首先,在您的本地应用程序设置中启用Ollama。

2. 在模型页面上,从“使用此模型”下拉菜单中选择Ollama,如下所示。

配置Jupyter AI与Ollama

我们快完成了。在JupyterLab中,打开侧边栏上的Jupyter AI聊天界面。在聊天面板的顶部或其设置(齿轮图标)中,有一个下拉菜单或字段用于选择模型提供商和模型ID。选择Ollama作为提供商,并输入模型名称,如终端中ollama list所示(例如qwen2.5-coder:1.5b)。Jupyter AI将连接到本地Ollama服务器并加载该模型以进行查询。由于这是本地的,因此不需要API密钥。

根据您选择的模型设置语言模型、嵌入模型和内联补全模型。 保存设置并返回聊天界面。

此配置通过Ollama将Jupyter AI链接到本地运行的模型。虽然此过程应启用内联补全,但如果未启用,您可以手动启用,方法是点击Jupyternaut图标,该图标位于JupyterLab界面底部栏的模式指示器左侧(例如,模式:命令)。这将打开一个下拉菜单,您可以在其中选择“启用Jupyternaut补全”以激活该功能。

图片

使用AI编程助手

设置完成后,您可以使用AI编程助手执行各种任务,如代码自动补全、调试帮助和从零生成新代码。重要的是,您可以通过聊天侧边栏或直接在笔记本单元格中使用%%ai魔法命令与助手交互。让我们看看这两种方式。

通过聊天界面的编程助手

这非常简单。您可以直接与模型聊天以执行操作。例如,以下是我们如何要求模型解释代码中的错误,然后通过选择笔记本中的代码来修复错误。

您还可以要求AI从零生成代码,只需用自然语言描述您需要的内容。以下是Jupyternaut生成的Python函数,该函数返回给定正整数N之前的所有素数。

通过笔记本单元格或IPython shell的编程助手:

您还可以直接在Jupyter笔记本中与模型交互。首先,加载IPython扩展:

%load_ext jupyter_ai_magics

现在,您可以使用%%ai单元格魔法与您选择的语言模型交互,使用指定的提示。让我们复制上面的示例,但这次在笔记本单元格中。

有关更多详细信息和选项,您可以参考官方文档。

结论

正如您从本文中所看到的,Jupyter AI使得设置编程助手变得容易,前提是您有正确的安装和设置。我使用了一个相对较小的模型,但您可以从Ollama或Hugging Face支持的各种模型中进行选择。这里的关键优势是使用本地模型提供了显著的好处:它增强了隐私,减少了延迟,并减少了对专有模型提供商的依赖。然而,使用Ollama在本地运行大型模型可能会占用大量资源,因此请确保您有足够的RAM。随着开源模型的快速改进,您甚至可以使用这些替代方案实现可比的性能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值