使用 OpenAI 的 Node.js 通过 Ollama 在本地运行 DeepSeek R1

介绍

DeepSeek R1 是一款开源 LLM,可提供强大的生成式 AI 功能。如果您使用Ollama 在本地运行它,您可能想知道如何将其与您的 Node.js 应用程序集成。本指南将向您展示如何设置和使用OpenAI SDK 以及您本地运行的 DeepSeek R1 模型

步骤 1:使用 Ollama 在本地启动 DeepSeek R1

确保 Ollama 正在运行并且已下载 DeepSeek R1 模型。如果尚未安装,请执行以下操作:

复制代码
ollama pull deepseek-r1:1.5b

然后,启动测试会话以验证其是否正常工作:

复制代码
ollama run deepseek-r1:1.5b

第 2 步:安装依赖项(Nodejs)

首先,确保您已安装 Node.js,然后安装 OpenAI SDK:

复制代码
npm install openai

步骤 3:配置 OpenAI SDK 以使用 Ollama

const OpenAI = require("openai");

const openai = new OpenAI({

baseURL: "http://localhost:11434/v1", // Pointing to Ollama's local API

apiKey: "ollama", // Required by the OpenAI SDK, but Ollama doesn't validate it

});

async function chatWithDeepSeek(prompt) {

try {

const response = await openai.chat.completions.create({

model: "deepseek-r1:1.5b", // Ensure this model is running

messages: { role: "user", content: prompt },

});

console.log(response.choices0.message.content);

} catch (error) {

console.error("Error:", error.message);

}

}

// Test the function

chatWithDeepSeek("Hello, how are you?");

步骤 4:启用流式响应

为了提高性能并实时获得响应,请启用流式

传输函数的流式传输版本

async function chatWithDeepSeekStream(prompt) {

try {

const stream = await openai.chat.completions.create({

model: "deepseek-r1:1.5b",

messages: { role: "user", content: prompt },

stream: true, // Enable streaming

});

for await (const chunk of stream) {

process.stdout.write(chunk.choices0?.delta?.content || "");

}

console.log("\n");

} catch (error) {

console.error("Error:", error.message);

}

}

chatWithDeepSeekStream("Tell me a fun fact about space.");

如果您喜欢此文章,请收藏、点赞、评论,谢谢,祝您快乐每一天。

相关推荐
前端之虎陈随易4 小时前
编程语言级别的Skill市场,AI Agent 的未来形态
前端·vue.js·人工智能·typescript·node.js
我才是银古12 小时前
OpenCode × DeepSeek 配置方案迭代记:砍砍补补,越来越好用
deepseek·opencode
轩渃16 小时前
Cline接入国产大模型完整教程(以DeepSeek为例)
人工智能·deepseek·cline
meilindehuzi_a17 小时前
从零开始:用原生 Node.js 徒手拆解 RAG 与向量检索底层原理
node.js·rag
炒毛豆17 小时前
ai全栈-node.js相关的学习之路(草稿版)
学习·node.js
AC赳赳老秦19 小时前
网络日志自动化分析实战:OpenClaw 清洗访问日志、定位异常攻击、生成安全报表
开发语言·windows·python·安全·自动化·deepseek·openclaw
meilindehuzi_a19 小时前
解密 MCP 协议:如何用 Node.js 从零手写一个本地文件读取 MCP 服务器
运维·服务器·node.js
每天三杯咖啡1 天前
【无标题】
人工智能·技术选型·deepseek
不爱记笔记1 天前
ClaudeCode接入DeepSeek教程!防封号!
人工智能·ai·deepseek·claudecode
俊俊谢1 天前
LLaMA-Factory 部署与 DeepSeek-R1-Distill-Qwen 模型乱码问题解决全记录
机器学习·大模型·llama·qwen·llama-factory·deepseek·hugging-face