Phần 1: Nền Tảng — Mô Hình Tư Duy
Bạn có hàng trăm note rải rác trong Obsidian, Notion, tập tin PDF nghiên cứu và các file Markdown. Bạn phải chuyển qua lại giữa ChatGPT, Claude, và Gemini, dán ngữ cảnh thủ công từng lần. Bạn muốn một AI đã đọc hết mọi thứ bạn biết — nhưng các nhà cung cấp lớn lại nhốt toàn bộ dữ liệu của bạn trên đám mây của họ.
Đó chính xác là khoảng trống mà Khoj được xây dựng để lấp đầy.
Mô Hình Tư Duy: Hãy nghĩ Khoj như một bộ não AI cá nhân chạy theo nguyên tắc — không phải chatbot đơn thuần, mà là một trợ lý kiến thức luôn hoạt động, đã đọc mọi tài liệu bạn từng viết, có thể tìm kiếm internet, tạo agent tự động, và làm tất cả điều này ngay trên máy bạn hoặc trên đám mây của Khoj, tùy lựa chọn.
Trong khi hầu hết các công cụ AI là stateless (mỗi cuộc trò chuyện bắt đầu từ đầu), Khoj là stateful và được lập chỉ mục kiến thức. Đây là AI nhớ được bạn.
Phần 2: Điều Tra — Kiến Trúc Chuyên Sâu
Bức Tranh Tổng Thể
Khoj là ứng dụng Python full-stack được xây dựng trên nền FastAPI ở lõi. Đây là luồng tổng quát:
| |
Cấu Trúc Mã Nguồn
Codebase Khoj dưới src/khoj/ được tổ chức rõ ràng theo chức năng:
| Thư mục | Mục đích |
|---|---|
routers/ | Các endpoint FastAPI REST & WebSocket (chat, agent, tìm kiếm, file) |
processor/conversation/ | LLM adapter cho từng nhà cung cấp (OpenAI, Anthropic, Google, Ollama) |
processor/content/ | Parser tài liệu (PDF, Markdown, Notion, Org-mode, Word) |
database/ | Models Django ORM — cuộc trò chuyện, agent, file, người dùng |
search/ | Pipeline tìm kiếm ngữ nghĩa dùng sentence-transformers |
routers/api_agents.py | REST API đầy đủ để tạo và quản lý agent |
Mẫu LLM Adapter
Một trong những thiết kế thanh lịch nhất của Khoj là mẫu LLM adapter. Mỗi nhà cung cấp có module riêng với cùng interface:
| |
Mẫu tương tự được áp dụng cho openai_chat.py, google_chat.py, và ollama_chat.py. Router chọn adapter phù hợp lúc runtime dựa trên model mà người dùng cấu hình — bạn chuyển từ GPT-4o sang Gemini sang Llama 3 mà không cần thay đổi bất kỳ dòng code nào.
Pipeline Nạp Tài Liệu
Khoj đọc kho kiến thức của bạn và lập chỉ mục vào vector store để truy hồi ngữ nghĩa:
- PDF → parser
pypdf - Markdown / Org-mode → trích xuất plain text
- Notion → tích hợp API chính thức
- Word → parser Office XML
- Ảnh → mô tả bằng Vision LLM
Tất cả đều vào chỉ mục vector embedding (sentence-transformers). Khi bạn đặt câu hỏi, Khoj thực hiện tìm kiếm tương đồng ngữ nghĩa trên corpus của bạn, lấy k phần liên quan nhất, và truyền chúng làm ngữ cảnh vào LLM — RAG cổ điển, nhưng tích hợp sâu sắc.
Phần 3: Chẩn Đoán — Khoj Làm Gì Cho Lập Trình Viên
Trường Hợp 1: Trợ Lý Nghiên Cứu Cá Nhân
Tải toàn bộ thư viện nghiên cứu — 300 PDF, 1.000 note Markdown, toàn bộ Notion — và trò chuyện với chúng:
| |
Hỏi: “Trong các bài báo của mình, bài nào đề cập kiến trúc Transformer cho dự báo chuỗi thời gian?” Khoj truy hồi các đoạn liên quan, trích dẫn chúng, và tổng hợp câu trả lời mạch lạc.
Trường Hợp 2: Agent AI Tùy Chỉnh
Hệ thống agent của Khoj cho phép bạn tạo nhân vật AI chuyên biệt với kho kiến thức, LLM, system prompt và công cụ riêng:
| |
Mỗi agent có endpoint chat riêng. Bạn có thể có agent “Nhà Phân Tích Nghiên Cứu” đọc PDF học thuật và agent “Copywriter Marketing” đọc tài liệu brand guidelines — cả hai chạy trên cùng một server Khoj.
Trường Hợp 3: Nghiên Cứu Tự Động (Scheduled Jobs)
Khoj có thể đóng vai trợ lý chủ động:
- Thiết lập task nghiên cứu hàng ngày: “Mỗi sáng, tìm kiếm tin tức về AI safety và gửi cho tôi một bản tóm tắt dạng newsletter”
- Nó duyệt web, tổng hợp thông tin, và giao đến kênh bạn cấu hình (email, webhook, v.v.)
Trường Hợp 4: Bảo Mật Dữ Liệu — Chạy Hoàn Toàn Local
Dành cho lập trình viên không muốn gửi dữ liệu lên đám mây bên thứ ba:
| |
Tài liệu của bạn ở trên ổ đĩa của bạn. Cuộc trò chuyện được xử lý local. Không có dữ liệu nào rời máy tính.
Các LLM Được Hỗ Trợ
| Loại | Nhà cung cấp | Model ví dụ |
|---|---|---|
| Cloud | OpenAI | GPT-4o, o3-mini |
| Cloud | Anthropic | Claude 3.7 Sonnet |
| Cloud | Gemini 1.5 Pro, Flash | |
| Cloud | Cohere, Mistral AI | Command R, Mistral Large |
| Local | Ollama | Llama 3.1, Qwen, Gemma, DeepSeek |
Phần 4: Giải Pháp — Cách Bắt Đầu
Lựa Chọn A: Cloud (Không Cần Cài Đặt)
Con đường nhanh nhất — truy cập app.khoj.dev và tạo tài khoản miễn phí. Không cần cài đặt gì.
Lựa Chọn B: Self-Host với Docker (Khuyên Dùng)
| |
Truy cập http://localhost:42110 là xong.
Lựa Chọn C: Self-Host với pip (Dành Cho Python Developer)
| |
Để tăng tốc bằng GPU:
| |
Thêm Kho Kiến Thức Của Bạn
Sau khi khởi động Khoj:
- Web App: Vào Settings → Files → kéo thả PDF, Markdown, hoặc kết nối Notion
- Obsidian Plugin: Cài plugin Khoj → nó lập chỉ mục vault của bạn tự động
- CLI đồng bộ:
| |
Kết Nối LLM Ưa Thích
Trong Settings → Chat Models:
- Thêm OpenAI key cho GPT-4o
- Thêm Anthropic key cho Claude
- Trỏ về
http://localhost:11434cho các model Ollama local
Khoj sẽ định tuyến tất cả cuộc trò chuyện qua model bạn chọn làm mặc định.
Mô Hình Tư Duy Cuối Cùng
| |
GitHub: khoj-ai/khoj
Docs: docs.khoj.dev
Live App: app.khoj.dev
