一、软件介绍
文末提供程序和源码下载
Khoj 是一款个人 AI 应用程序,可扩展您的功能。它从设备上的个人 AI 顺利扩展到云规模的企业 AI。
- 与任何本地或在线LLM聊天(例如 llama3、qwen、gemma、mistral、gpt、claude、gemini)。
- 从 Internet 和您的文档(包括图像、pdf、markdown、org-mode、word、notion 文件)获取答案。
- 从您的浏览器、Obsidian、Emacs、桌面、电话或 Whatsapp 访问它。
- 创建具有自定义知识、角色、聊天模型和工具的代理,以承担任何角色。
- 自动化消除重复研究。将个人时事通讯和智能通知发送到您的收件箱。
- 使用我们的高级语义搜索快速轻松地查找相关文档。
- 生成图像、大声说话、播放您的信息。
- Khoj 是开源的,可自托管。总是。
- 在您的计算机上私下运行它,或在我们的云应用程序上试用。
二、在您自己的计算机上自托管 Khoj
自托管的好处:
- 隐私:您的数据永远不必离开您的私有网络。如果部署在您的个人计算机上,您甚至可以在没有互联网连接的情况下使用 Khoj。
- 定制: 您可以根据自己的喜好自定义 Khoj,从模型到主机 URL,再到功能启用。
设置 Khoj
这些是自托管 Khoj 的一般设置说明。您可以使用 Docker 或 Pip 安装 Khoj 服务器。
离线模型 + GPU
要将离线聊天模型与 GPU 一起使用,我们建议将 Docker 设置与 Ollama 结合使用。您还可以直接通过 Python 包使用本地 Khoj 设置。
首次运行
首次运行后重新启动 Khoj 服务器,以确保正确应用所有设置。
三、设置方法
支持mac、win、linux,本文只介绍win版本,其他版本设置请看Self-Host | Khoj AI
win设置
先决条件
安装 WSL2 并重新启动计算机
# Run in PowerShell
wsl --install
使用 WSL2 后端安装 Docker Desktop(默认)
设置
从 Github 下载 Khoj docker-compose.yml 文件
# Windows users should use their WSL2 terminal to run these commands
mkdir ~/.khoj && cd ~/.khoj
wget https://raw.githubusercontent.com/khoj-ai/khoj/master/docker-compose.yml
在 docker-compose.yml
将 , KHOJ_DJANGO_SECRET_KEY (以及可选的 KHOJ_ADMIN_EMAIL ) 设置为 KHOJ_ADMIN_PASSWORD 安全的值。这使您可以稍后通过管理面板自定义 Khoj。
如果您想分别使用 OpenAI、Anthropic 或 Gemini 商业聊天模型,请将 OPENAI_API_KEY 、 ANTHROPIC_API_KEY 或 GEMINI_API_KEY 设置为您的 API 密钥。
取消注释 OPENAI_BASE_URL 以使用在主机上运行的 Ollama。或者将其设置为与 OpenAI 兼容的 API(如 vLLM 或 LMStudio)的 URL。
通过在与 docker-compose.yml 文件相同的目录中运行以下命令来启动 Khoj。
# Windows users should use their WSL2 terminal to run these commands
cd ~/.khoj
docker-compose up
远程访问
默认情况下,Khoj 只能在它正在运行的计算机上访问。要从远程计算机访问 Khoj,请参阅 远程访问文档。
在终端上的服务器日志中看到 🌖 Khoj is ready to use 后,您的设置就完成了。
使用 Khoj
您现在可以在 http://localhost:42110 中打开 Web 应用程序并开始交互!
无需任何其他作,但您可以按照以下步骤进一步自定义设置。
FIRST MESSAGE 到 OFFLINE 聊天模型
离线聊天模型在您首次向其发送消息时下载。下载可能需要几分钟时间!后续消息应该更快。
添加聊天模型
登录到 Khoj 管理面板
转到 http://localhost:42110/server/admin 并使用您在安装过程中设置的管理员凭证登录。
CSRF 错误
确保您使用的是 localhost,而不是 127.0.0.1 来访问管理面板,以避免 CSRF 错误。
CSRF TRUSTED ORIGIN 或 UNSET COOKIE 错误
如果在 Khoj 服务器前面使用负载均衡器/reverse_proxy:设置环境变量 KHOJ_ALLOWED_DOMAIN=your-internal-ip-or-domain 以避免此错误。如果未设置,则默认为 KHOJ_DOMAIN。
不允许的主机或错误请求 (400) 错误
如果您尝试访问在自定义域(例如 192.168.12.3 或 example.com)上或通过 HTTP 公开的 Khoj,则可能会遇到此问题。如果需要,请设置环境变量 KHOJ_DOMAIN=your-external-ip-or-domain 和 KHOJ_NO_HTTPS=True,以避免此错误。
注意
在 Mac 上使用 Safari?您可能无法登录管理面板。请尝试改用 Chrome 或 Firefox。
配置聊天模型
设置您想要使用的聊天模式。Khoj 支持本地和在线聊天模式。