系列文章目录
揭秘Node+Langchain技术组合的魔法(一)快速开始
揭秘Node+Langchain技术组合的魔法(五)RAG2
文章目录
前言
随着人工智能技术的飞速进步,AI的影响力已经深入到我们生活的每一个角落。在这个变革的时代,AI工程师和算法工程师们无疑成为了行业的焦点,他们的成就和收益也成为了热议的话题。然而,面对这样的浪潮,传统的前端开发工程师是否也能在这个AI的黄金时代中找到自己的位置,分得一杯羹呢?
正如雷军在一场激励人心的演讲中所言:“如果你想成就一番事业,那就勇敢地开始行动。哪怕最初的成绩并不理想,哪怕过程充满瑕疵,一个不完美的开始仍然是最好的起点。不要等待所谓的完美准备,因为完美永远不存在于准备之中,而只会在不断的行动与调整中逐渐显现。” 这段话,对于每一位渴望在AI领域开拓新天地的前端工程师来说,无疑是一剂强心针。让我们一起在这个系列文章中探索,如何将前端开发与AI技术相结合,开启前端工程师的AI编程之旅。
一、Node.js:不止于启动工具
对于大多数前端开发者而言,Node.js 并不是一个陌生的名词。然而,许多人可能仅仅将其视为启动前端程序的辅助工具。实际上,Node.js 的潜力远超于此。作为一个开源的、跨平台JavaScript运行时环境,Node.js 的应用范围广泛,不仅限于工具开发,它还能胜任后台服务、桌面应用等多种角色。在未来的文章中,我将专门开辟一个系列来探讨Node.js结合Express框架的开发技巧,因为它的开发模式与前端如出一辙,掌握它可以说是水到渠成。至于Node.js的更多细节,网络上已有丰富的资源,这里就不过多赘述。
二、LangChain:大语言模型的集成框架
LangChain,这是一个专注于将大型语言模型(LLMs)无缝集成至应用程序中的开源框架。其核心宗旨在于简化开发流程,提供一系列易于上手的工具和组件。你可以将其视为一个集成了众多AI工具的开发套件。LangChain 支持Python和Node.js两种编程语言,而在本系列文章中,我们将重点关注如何使用Node.js来实现LangChain的强大功能。
四、环境准备
1.node环境
此处不多搬运,可自行百度
2.ollama环境
ollama是一个专门在本地安装运行大模型的工具
2.1 软件下载
软件下载地址:Ollama
本人选择的是Windows版本
2.2 安装以及环境变量配置
安装时要注意两点,一是安装目录会默认在c盘,二是安装的大模型也会安装在c盘
🌟 建议大家跟我一样提前建好安装的目录和存放模型的文件夹
🎯 切换安装目录
找到安装文件所在位置,进入cmd模式,然后执行如下命令
OllamaSetup.exe /DIR=D:\ProgramFiles\Ollama\shengcheng
🎯 切换模型文件路径
进入到环境变量设置界面,添加用户环境变量
变量名是:OLLAMA_MODELS 变量值是你想要存放模型文件的路径
2.3 大模型安装
📚 进入官网查看支持的大模型列表
本人选择的是deepseek-r1的8b模型(本人电脑带不动特别大的)
复制右侧的ollama命令,在cmd页面中执行
这个命令字面意思是运行deepseek的8b模型,实际上会监测你有没有下载这个模型,没有下载的话会自动下载,下载完成后自动运行
运行成功后就可以在小黑框里面做一些简单的交流了
2.4 ollama 常见的命令
1.安装或者运行
ollama run deepseek-r1:8b
2.查看已经安装的大模型列表
ollama ls
3.查看在运行的大模型列表
ollama ps
4.停止某个正在运行的大模型
ollama stop deepseek-r1:8b
5.删除某个大模型
ollama rm deepseek-r1:8b
五、制作第一个Demo
1.拉取模板
官方推荐的快速开始模板地址:https://github.com/langchain-ai/langchainjs
2.安装依赖
💡 如果和模板中原有依赖冲突的话把模板中的langchain依赖直接删了即可
因为官方推荐的模板是基于在线的大模型的,本人比较穷,买不起在线的token,免费的又嫌太麻烦,所以就直接调用本地的大模型了
npm i @langchain/core @langchain/ollama
3.修改模板
修改的文件是 src\index.ts
整个文件代码不多,我整个贴到下面了
import { ChatOllama } from '@langchain/ollama';
// 创建模型实例,设置基础参数
const model = new ChatOllama({
baseUrl: "http://localhost:11434",
model: "deepseek-r1:8b",
temperature: 0.7, // 控制输出的随机性
});
// 组合消息链并调用模型
const res = await model.invoke("给我讲个笑话");
console.log('AI助手的回答:');
console.log(res);
4.运行项目
执行 npm run start
结果展示
总结
AI技术的更新迭代速度之快,令人瞩目。我们常常会遇到这样的情况:刚掌握一项技能,新的技术便已崭露头角。正如Langchain刚刚崭露头角,MCP便紧随其后,带来了一种全新的模式。在这样的大背景下,无论是大型企业还是个人,都在探索中不断前进,共同描绘着技术发展的无限可能。
附录
LangChain官网:Introduction | 🦜️🔗 Langchain
LangChainApi:LangChain.js