ollama-js

在 JS 里一行代码调用本地大模型

开源 free 开发框架
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 4387
维护状态 较活跃
是否开源 是
定价模式 free

项目预览

项目数据

分类开发框架
开发团队ollama
所属国家
官网地址https://ollama.com
定价模式free
价格说明开源免费,MIT 许可证
访问状态
是否开源是
开源协议MIT
主要语言TypeScript
技术栈/模型javascript,js,ollama
GitHub 星标★ 4387
30天Star增速
HF 下载量
上线时间2023-09-13 00:00:00
代码更新—
仓库体积—
本站数据更新—
维护状态较活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-10-15
浏览次数0

项目介绍

ollama-js 是 Ollama 官方推出的 JavaScript/TypeScript 客户端库,让前端和 Node.js 开发者能直接调用本地大模型。Ollama 本身是一个在本地运行 Llama、Qwen、DeepSeek 等开源模型的工具,而 ollama-js 把它的 HTTP 接口封装成类型安全的 JS 方法,解决开发者不想手写请求、处理流式响应和错误重试的问题。核心能力包括:对话生成、文本补全、嵌入向量、模型拉取与删除、列出本地模型,以及流式输出支持。它同时兼容浏览器和 Node 环境,提供 ESM 与 CommonJS 两种打包格式,并内置 TypeScript 类型定义。由于是官方维护,接口与 Ollama 版本同步更新,适合用来快速搭建本地 AI 聊天、RAG 检索或自动化脚本。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

正在加载星标数据…

技术标签

使用教程

—

难度:入门 约 10 分钟 部署方式:库/依赖 5 步

环境要求

  • Node.js 环境,npm 可正常使用
  • 本地已安装并运行 Ollama(本库通过它调用模型)
  • 浏览器端使用需支持 ESM 的前端构建工具
  • 使用云端模型时需要有 Ollama 账号并登录

安装与启动步骤

  1. 1安装 ollama 库

    在项目根目录执行,把官方 JS 客户端加入依赖。同时兼容 ESM 与 CommonJS,自带 TypeScript 类型。

    npm i ollama
  2. 2发起一次对话

    导入默认实例,调用 chat 传入 model 和 messages,返回对象里用 message.content 取回复文本。

    import ollama from 'ollama'
    
    const response = await ollama.chat({
      model: 'llama3.1',
      messages: [{ role: 'user', content: 'Why is the sky blue?' }],
    })
    console.log(response.message.content)
  3. 3浏览器环境引入

    不依赖 Node 时改从 ollama/browser 导入浏览器专用模块,其余调用方式与 Node 端一致。

    import ollama from 'ollama/browser'
  4. 4开启流式输出

    调用时加 stream: true,返回 AsyncGenerator,用 for await 逐段读取,适合打字机效果。

    import ollama from 'ollama'
    
    const message = { role: 'user', content: 'Why is the sky blue?' }
    const response = await ollama.chat({
      model: 'llama3.1',
      messages: [message],
      stream: true,
    })
    for await (const part of response) {
      process.stdout.write(part.message.content)
    }
  5. 5使用云端模型

    先用命令行一次性登录,再拉取带 -cloud 后缀的大模型,之后按普通模型调用即可自动卸载到云端。

    ollama signin
    ollama pull gpt-oss:120b-cloud

关键配置

配置项必填说明示例
model是指定要调用的模型名,需本地已存在或已从云端拉取llama3.1
messages是对话消息数组,每项含 role 和 content[{ role: 'user', content: 'Why is the sky blue?' }]
stream否设为 true 时返回 AsyncGenerator,可逐段读取输出true

如何确认成功

脚本运行后能在控制台看到模型返回的回复文本;开启 stream 时会逐段输出内容。

常见问题

Q:浏览器里直接 import 'ollama' 报错怎么办?

A:浏览器环境要改成从浏览器模块导入:import ollama from 'ollama/browser',其余调用写法不变。

Q:怎么让回复一个字一个字地出现?

A:调用时传入 stream: true,然后用 for await (const part of response) 遍历,逐段写入输出。

Q:想跑更大的模型但本地跑不动?

A:使用 Ollama 云端模型:先执行 ollama signin 登录,再 ollama pull 拉取带 -cloud 后缀的模型,如 gpt-oss:120b-cloud,之后按普通模型调用即可。

注意事项

  • 本库是 Ollama 的 JS 客户端,用前需先在本机运行 Ollama 服务,README 未给出 Ollama 本体的安装命令
  • 云端模型需要先 ollama signin 完成一次性登录
  • 浏览器端务必使用 ollama/browser 入口,不要复用 Node 入口

核心亮点

  • 官方维护,接口与 Ollama 版本同步,类型定义完整
  • 同时支持浏览器和 Node.js,流式响应开箱即用
  • API 设计简洁,chat、generate、embed 等方法语义清晰

不足之处

  • 功能完全依赖本地 Ollama 服务,无法直连云端模型
  • 文档以 README 为主,复杂场景示例较少

适用场景

  • 本地 AI 聊天应用的前端调用层
  • Node.js 脚本批量生成文本或向量
  • 浏览器内 RAG 检索与嵌入计算

替代项目

langchainjs、openai-node

上一篇:ollama-python

下一篇:Ollama

同类项目推荐

dsh-our-free-model 开源

装个插件就能免密钥白嫖前沿大模型,不限量

在 dsh 里装上这个插件即可,无需登录、注册或填 API Key,就能使用包括 DeepSeek V4.1 Fl···

★ 16037 2026-10-04
langchain 开源

组装 AI 应用的乐高积木,从想法到上线不换工具

The agent engineering platform.

★ 147813 2026-08-09
ComfyUI-sol-attn 开源

在 ComfyUI 中让视频生成注意力更快更省显存

NVIDIA Sol-Attn for ComfyUI / Triton kernel on SM89 - SM121, with zero-copy MiniMax ···

★ 154 2026-08-09
transformers 开源

全球最大的模型仓库全家桶,想用的模型一把抓

Transformers: the model-definition framework for state-of-the-art machine learning m···

★ 167680 2026-08-09