返回

文章详情

展示 HN:Bolnee-Chat – 企业网站的自托管聊天机器人集成

Hacker News2026年8月30日 09:56

在您的企业网站中集成聊天机器人。自托管,永久免费!Bolnee-Chat 是一个自托管的 RAG 聊天机器人平台。创建一个机器人,添加您的网站 + PDF 作为知识,选择任何兼容 OpenAI 的提供者(OpenRouter,OpenAI,Groq,Ollama,vLLM),并嵌入一个两行的代码片段。答案基于您的来源并附有引用,访客聊天被分组并且可以导出,所有内容都在您的基础设施上运行,使用 SQLite。 为什么选择 Bolnee-Chat?自托管和永久免费,没有供应商锁定,没有按消息计费。可以在您的服务器、Vercel 或 Cloudflare Pages 上运行 - SQLite,无需外部数据库。 RAG-基础的答案 爬取您的网站并摄取 PDF/TXT/MD/DOCX,将其分块存储到 SQLite FTS 并构建基础提示。引用来源,回退配置灵活。 两行嵌入,任何堆栈 复制 window.BotConfig + chatbot-widget.js,并粘贴在 </body> 前。适用于任何网站,音调/主题/问候通过仪表板实时更新。 所有功能 机器人概述 - 统计信息和代码片段 每个机器人的:实时状态、消息/用户计数、创建日期、来源计数、嵌入代码段以及 botName/avatar/chatUrl/accent/greeting/theme。外观 - 实时预览 编辑机器人名称、头像(上传/预览)、音调/背景颜色、主题(亮/暗/自动)、问候。实时预览;通过 PATCH /api/chatbots/:id 保存。聊天 - 按访客分组 按 visitorId → IP 分组,然后按日期,按时间顺序。刷新 + 下载CSV(Excel)/JSON/PDF(打印)。活动会话 = 最近 5 分钟的独立访客。 设置 - 提供者、提示、危险区域 provider/model/baseUrl/apiKey,默认消息(首次交互前),回退消息(没有匹配的来源),删除机器人 + 聊天 + 来源 + 分段。 小部件 - 漂浮、主题感知、持久性 右下角气泡 → 滑动窗口(360×520,75vh 移动)。带有音调 + 头像的标题、打字点、SSE 流、引用来源、VISITOR_ID + 历史存储在 localStorage 中,因此问候只显示一次,聊天可以跨关闭/打开存活。 主题 亮/暗/自动(#0f172a / #fff)。 箱内内容:知识管理 - 列表定位器 · 类型 · 状态 · 错误 · 日期,带有删除;通过添加知识附加更多。 头像文件存储 - 数据 URL 转换为 /api/public/avatar/:id(2MB 限制,数据/avatars/)。加密的提供者密钥 - 每个机器人 apiKey/baseUrl/model 通过 AES-256-GCM 加密,永远不会在代码片段中暴露。 深色模式控制台 - #020617 背景,#1e293b 卡片,slate-800 输入,没有白色表面。 工作流程 1. 创建聊天机器人 - 几秒钟内品牌;名称 + 头像(PNG/JPG/WEBP ≤2MB,预览)→存储为 /api/public/avatar/:id,并显示在小部件标题中。 2. 添加知识 - 网站 + 文件 URL 唯一,文件唯一,或两者兼而有之。同源爬虫(crawler/crawler.py)尊重 robots.txt,提取 h1/h2/p/li,去重,保存数据/{chatbotId}_website.json。状态:排队 → 爬取 → 解析 → 索引 → 已索引。 3. 配置提供者 - 任何兼容 OpenAI 的 API 选择提供者 → 基础 URL 自动填充 → 粘贴 API 密钥 → 实时获取模型列表(优先选择 :free 给 OpenRouter)。密钥以加密形式存储(AES-256-GCM),永远不会在嵌入中。 4. 嵌入 - 两行 从概述中复制 → 嵌入代码或知识 → 第 4 步。自动配置来源,使用 window.location.origin;小部件通过 chatbot-widget.js 加载,并带有 SSE 流。要求 要求详情 操作系统:macOS、Linux、Windows(WSL)运行时:Node.js 18+包管理器:npm Python 3.10+(爬虫,非必需,但建议)Python 依赖:aiohttp,beautifulsoup4,lxml,requests,brotli(+ playwright 在 JS-heavy 网站中)技术栈 安装 # 克隆 git clone https://github.com/AniketWathore/bolnee-chat.git cd bolnee-chat # 环境 cp .env.example .env # 编辑 .env - 最简单的自托管:# DISABLE_AUTH=true # JWT_SECRET=change-me-32-chars # LLM_BASE_URL=https://openrouter.ai/api/v1 # 可选的全局回退 # LLM_API_KEY=sk-or-v1-... # 可选的全局回退 # LLM_MODEL=inclusionai/ling-3.0-flash-fin:free # 安装 npm install # Python 爬虫依赖(可选)pip install aiohttp beautifulsoup4 lxml requests brotli # 验证 npm run lint # tsc --noEmit npm run build # vite + esbuild → dist/ npm run dev # http://localhost:3000(如果忙,自动回退到 3001)SQLite 在 data/bolnee.db 中创建(已 git 忽略)。已爬取的网站 → data/{chatbotId}_website.json,SQLite 中的分块。使用 - 仪表板流 创建聊天机器人 — + 新聊天机器人 → 名称 + 头像(预览 ≤2MB)。添加知识 — 输入 https://your-site.com 和/或上传 PDF/TXT/MD/DOCX/FAQ → 状态排队 → 已索引。配置提供者 — 选择提供者 → 获取模型 → 选择模型 → 保存。密钥加密,不在嵌入中。嵌入 - 从概述中复制代码片段:< script > window.BotConfig = { botName : "客户机器人" , avatar : "https://your-domain/api/public/avatar/BOT_ID" , chatUrl : "https://your-domain/api/public/chat/BOT_ID" , accentColor : "#111111" , greeting : "嗨!我可以帮您什么?" , theme : "暗" } ; </ script > < script src =" https://your-domain/chatbot-widget.js " async > </ script > 在 </body> 前粘贴。小部件在 localStorage 中储存 VISITOR_ID + 聊天记录。问候只显示一次。机器人控制台参考标签

赞助内容

NordVPN Next-gen Antivirus

本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。

请我喝杯咖啡