项目简介
嗯,当我浏览互联网时,我倾向于保存大量内容,但是还记得您保存的时间和内容吗?大脑彻底冻结!这就是 SurfSense 的用武之地。SurfSense 是一个个人人工智能助理,适用于您在万维网上看到的任何内容(社交媒体聊天、日历邀请、重要邮件、教程、食谱和任何内容)。现在,您将永远不会忘记任何浏览会话。使用易于使用的跨浏览器扩展程序轻松捕获您的网络浏览会话和所需的网页内容。然后,向您的个人知识库询问有关您保存的内容的任何信息,然后瞧——即时回忆!
主要特点
- 💡想法:将您在互联网上看到的任何内容保存在您自己的个人知识库中。
- ⚙️跨浏览器扩展:保存您最喜欢的浏览器中的内容。
- 🔍强大的搜索:快速查找网络浏览会话中的任何内容。
- 💬与您的网络历史记录聊天:以自然语言与您保存的网络浏览会话进行交互并获取引用的答案。
- 🔔当地LLM支持:与 Ollama 当地LLMs完美合作。
- 🏠自托管:开源且易于本地部署。
- 📊高级 RAG 技术:利用高级 RAG 技术的力量。
- 🔟钱包便宜:与 OpenAI gpt-4o-mini 模型和 Ollama 本地LLMs完美配合。
- 🕸️无 WebScraping :扩展直接从 DOM 中读取数据以获得准确的数据。
如何开始?
Docker 支持
- 设置
SurfSense-Frontend/.env
和backend/.env
- 运行
docker-compose build --no-cache
。 - 构建镜像后运行
docker-compose up -d
- 现在通过更新将扩展与 docker live 后端 url 连接起来
ss-cross-browser-extension/.env
并建造它。
后端
出于身份验证目的,还需要在计算机上运行 PostgreSQL 实例。
现在让我们设置 SurfSense 后端
- 克隆这个仓库。
- 转到 ./backend 子目录。
- 设置Python虚拟环境
运行``pip install -r requirements.txt
安装所有必需的依赖项。- 在 .env 中更新/创建所需的环境变量
ENV VARIABLE | 描述 |
---|---|
IS_LOCAL_SETUP | Ollama milstra-nemo 为“true”,OpenAI gpt-4o-mini 为“false” |
POSTGRES_DATABASE_URL | postgresql+psycopg2://user:pass@host:5432/database |
API_SECRET_KEY | 可以是任何随机字符串值。请务必记住它,因为出于安全目的,您需要将其在用户注册请求中发送到后端。 |
- 后端是 FastAPI 后端,所以现在只需使用命令在 unicorn 上运行服务器
uvicorn server:app --host 0.0.0.0 --port 8000
- 如果一切正常,应该看到这样的屏幕。
前端
对于本地前端设置,只需填写前端的.env
文件。
ENV VARIABLE | DESCRIPTION |
---|---|
NEXT_PUBLIC_API_SECRET_KEY | 您为后端设置的相同字符串值 |
NEXT_PUBLIC_BACKEND_URL | 在此处提供托管后端 url。例如。 http://127.0.0.1:8000 |
NEXT_PUBLIC_RECAPTCHA_SITE_KEY | Google Recaptcha v2 客户端密钥 |
RECAPTCHA_SECRET_KEY | Google Recaptcha v2 服务器密钥 |
并使用pnpm run dev
运行它
应该看到 Next.js 前端在localhost:3000
上运行
确保从前端注册一个帐户,以便您可以登录扩展程序。