利用ollama和next.js构建llm驱动应用
人工智能和大语言模型(LLM)正以前所未有的速度改变着我们的生活。新的模型和集成方案(例如AI代理和运营商)层出不穷,加入这个激动人心的浪潮势在必行。本文将指导您如何将Ollama与Next.js集成,构建基于LLM的应用程序。我们将学习如何下载开源LLM(例如Llama、DeepSeek和Mistral),以及如何使用ollama.js在Next.js中发送消息并处理LLM响应。最终应用效果如下图所示:
前提条件:
您需要具备Next.js的基础知识。
什么是Ollama?
Ollama是由Michael Chiang和Jeffrey Morgan创建的开源框架,它简化了LLM与其他应用程序的集成。Ollama本身并非LLM,而是允许您下载、交互和创建自定义LLM模型。它还提供预配置的API端点,方便您将下载或自定义的LLM集成到其他应用程序中。
需要注意的是,Ollama与Llama(无“o”)不同。Llama是由Meta AI开发的开源LLM,而Ollama是一个独立的开源工具,可以与各种LLM集成。
设置Ollama
首先,从Ollama官方网站下载Ollama。如果您使用的是其他Unix/Linux发行版,也可以运行以下命令进行下载:
curl -fssl https://ollama.com/install.sh | sh
下载安装完成后,运行以下命令验证Ollama是否可执行:
ollama -v
如果一切顺利,您将在控制台中看到版本号。接下来,我们将安装并与第一个模型进行交互。
加载模型
Ollama支持多种开源模型,包括DeepSeek、Llama、Mistral、Qwen和Phi。您可以访问Ollama官网查看支持的模型列表。
本教程将使用Llama 3.2 (由Meta AI开发)的1B参数版本(1.3GB),因为它体积较小,易于管理。运行以下命令下载模型:
ollama run llama3.2:1b
下载完成后,模型将启动,您可以立即开始与之聊天。
您可以花些时间在终端中直接与LLM互动。准备好后,我们将将其集成到Next.js应用程序中。
使用ollama.js与Next.js交互
Ollama提供REST API端点,允许您与下载的模型进行交互。桌面应用程序运行后,它将公开一个端点(例如http://localhost:11434/api),您可以向其发送自定义HTTP请求进行交互。
例如,要获取“什么是驱魔?”的答案,可以发送POST请求到/api/generate端点:
curl http://localhost:11434/api/generate -d '{ "model": "llama3.2", "prompt": "what is exorcism?" }'
您将在终端中看到响应。
为了简化流程,Ollama团队创建了JavaScript库ollama.js。我们将在应用程序中使用此库。
创建一个新的Next.js应用:
npx create-next-app next-ollama
安装过程中,选择Tailwind CSS和页面/路由器。
安装ollama.js:
cd next-ollama npm install ollama
接下来,创建一个简单的聊天界面与LLM交互。
...(此处省略了React代码部分,与原文基本一致,只是对代码进行了轻微的格式调整和注释补充,避免重复内容过长)...
启动应用程序:
npm run dev
您将看到一个简单的聊天界面。
...(此处省略了API端点代码部分,与原文基本一致,只是对代码进行了轻微的格式调整和注释补充,避免重复内容过长)...
最终,您可以直接在Next.js应用中与本地下载的Llama 3.2进行交互。您也可以加载其他开源模型。
总结
本教程介绍了如何使用Ollama安装和下载开源LLM,以及如何使用ollama.js库将它们集成到Next.js应用程序中。 完整的代码可以在GitHub仓库中找到。
后续文章将探讨如何实时流式传输响应,如何使LLM记住之前的对话,以及其他ollama.js方法和社区集成。
感谢您的阅读!
以上就是如何将Ollama整合到Nextjs中的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号