Show HN: Khoj - Otak kedua dan chat offline dengan Llama 2
(github.com/khoj-ai)- Khoj adalah aplikasi AI pribadi yang memperluas kemampuan pengguna, dengan arsitektur yang dapat diskalakan dari AI pribadi on-device hingga AI enterprise berskala cloud
- Dapat digunakan untuk chat dengan LLM lokal maupun online, dengan contoh model seperti llama3, qwen, gemma, mistral, gpt, claude, gemini, deepseek
- Bisa mendapatkan jawaban dari internet dan dokumen, dengan format dokumen yang didukung seperti gambar, PDF, Markdown, org-mode, Word, dan file Notion
- Dapat diakses dari Browser, Obsidian, Emacs, Desktop, Phone, Whatsapp, serta mendukung pembuatan agen dengan pengetahuan, persona, model chat, dan alat yang disesuaikan
- Mendukung otomatisasi riset berulang, pengiriman newsletter pribadi dan notifikasi pintar ke inbox, penjelajahan dokumen terkait melalui pencarian semantik tingkat lanjut, pembuatan gambar, serta percakapan suara dan pemutaran ulang pesan
- Bersifat open source dan bisa di-self-host, dapat dijalankan secara privat di komputer pengguna atau digunakan melalui aplikasi cloud
- Versi enterprise tersedia sebagai layanan cloud, on-premise, dan solusi hybrid
1 komentar
Komentar Hacker News
Di landing page situs webnya saya sama sekali tidak melihat Llama atau kasus penggunaan offline, sepertinya hanya disebutkan penggunaan online melalui OpenAI
Saya juga penasaran ukuran model dan fine-tuning apa yang dipakai, serta bagaimana performanya dinilai untuk kasus penggunaan ini
Saya sempat mencoba Llama 2 ukuran 7B dan 13B, dan rasanya cukup memakan banyak RAM di mesin konsumen, jadi potensinya benar-benar menarik
Saya juga penasaran apakah pencariannya memakai embedding dan vector DB dengan tambahan pemfilteran metadata seperti perintah tanggal
Khoj memakai Llama 7B 4-bit quantized GGML dari TheBloke
Ini cukup dekat dengan model chat offline pertama yang dapat memberikan jawaban konsisten atas kueri pengguna saat catatan dimasukkan sebagai konteks, dan menarik juga karena terasa lebih percakapan dibanding GPT-3.5+
Jika saat di-host sendiri ada jaminan bahwa informasi pribadi sama sekali tidak dikirim ke layanan jarak jauh, akan sangat membantu bila jaminan privasi itu ditulis dengan sangat jelas
Melihat ini, keren sekali, dan menurut saya berjalan secara lokal adalah masa depan AI yang sebenarnya
Saya mencobanya di M2 MacBook Air kecil dan mesinnya benar-benar macet
Ini mengingatkan saya pada masa PC lama terkena virus, ketika setelah menggerakkan mouse baru 45 detik kemudian kursornya bergerak, jadi anehnya malah terasa nostalgia
Sepertinya saya harus menurunkan ekspektasi performa untuk Air ini, dan ini pertama kalinya saya mengalami hal seperti ini
Model 7B biasanya berjalan cukup baik dengan unified memory 16GB atau lebih, tetapi saya pernah melihat Mac 8GB cukup kewalahan
Apakah mungkin menerima riwayat web selama sehari lalu merangkum hal-hal yang saya teliti menjadi catatan?
Ini makin mendekati bentuk ideal AI pribadi
Saya tidak sabar, rasanya dalam beberapa tahun lagi saya bisa punya otak digital yang diisi dengan semua yang saya ketahui
Membuat ekstensi browser yang merangkum riwayat web harian sepertinya bukan pekerjaan yang terlalu besar, dan mungkin sudah ada yang mirip
Mengindeks semua jejak digital dan membuatnya mudah dicerna akan sangat bernilai
Semoga Khoj bisa menjadi seperti itu
Saya penasaran apakah ada rekomendasi alat yang melakukan fungsi seperti ini
Atau saya juga ingin mencari orang untuk membuatnya bersama
Telemetri PostHog dipakai untuk apa?
Saya tidak mengerti kenapa tidak ada apa pun di dokumentasi, dan kenapa tidak ada cara opt-out yang jelas
Misalnya untuk mengetahui apakah orang memakai Markdown atau org, dan sebagainya
Semua data dikumpulkan sepenuhnya secara anonim, dan informasi yang dapat mengidentifikasi tidak dikirim ke server telemetri
Untuk opt-out, atur nilai
should-log-telemetrymenjadi false dikhoj.ymlSaya sudah menambahkan item yang dikumpulkan dan caranya ke dokumentasi: https://docs.khoj.dev/#/telemetry
Selain itu, proyeknya bekerja dengan sangat baik
Tampak seperti proyek yang keren
Akan sangat bagus jika bisa mengindeks direktori PDF, dan bahkan melakukan OCR pada PDF agar dokumen hasil scan juga bisa diindeks
Mungkin ini di luar cakupan proyek saat ini, tetapi baru beberapa hari lalu saya juga berpikir alangkah baiknya ada alat seperti ini
Khoj bisa mengindeks direktori PDF untuk pencarian dan chat
Namun saat ini belum bisa memproses file PDF hasil scan yang tidak memiliki teks yang dapat dipilih
Akan bagus jika file seperti itu juga bisa ditangani, tinggal diimplementasikan saja
Semoga segera bisa
Akan bagus jika ia bisa merayapi PDF, unduhan, screenshot, foto, dan lain-lain, lalu menampilkan pohon logis organisasi file, kemudian bisa saya ubah seperti “tambahkan PDF terkait topik ini ke sini dan susun berdasarkan sumber/penulis, lalu pindahkan screenshot ke sini berdasarkan urutan tanggal”
Saya selalu menginginkan komputer yang bisa dipanggil “COMPUTER.”
Saat saya berkata “COMPUTER!”, jawabannya “Tuan, Anda harus memakai keyboard”; ah, keyboard, sungguh kuno
Sepertinya memakai gpt4all, saya penasaran apakah ada cara yang didukung resmi untuk mengganti model inferensi lokal
Banyak aplikasi yang dirancang untuk completion/chat API OpenAI dapat bekerja dengan cara yang hampir sama hanya dengan diarahkan ke endpoint yang disediakan llama-cpp-python [0], sekaligus bisa memakai berbagai model dan quantization yang didukung llama.cpp
Dengan begitu, model yang lebih besar bisa dijalankan di hardware pilihan, termasuk akselerasi Metal di Apple Silicon atau GPU NVIDIA, dan proxy lain seperti openrouter.io juga bisa digunakan
Secara pribadi saya suka memakai openrouter.io karena mendukung model 100k dari Anthropic
[0]: https://github.com/abetlen/llama-cpp-python
Sepertinya cukup mengganti baris ini https://github.com/khoj-ai/khoj/blob/master/src/khoj/process... dengan model yang diinginkan
Memang harus membangun image lokal sendiri dengan
docker-compose, tetapi seharusnya relatif sederhanaBeberapa developer ingin mencoba berbagai model, tetapi kami ingin mengarah ke sesuatu yang mudah digunakan sekaligus memberi bantuan yang mendalam
Karena sumber daya terbatas, kami masih agak mempertimbangkan harus fokus ke mana
Dari sudut pandang seseorang yang baru mulai memakai Obsidian dan mencoba-coba AI chat, ini benar-benar luar biasa
Saya belum mencobanya, tapi hal seperti ini jelas harus ada
Kalau tidak punya GPU yang cukup bagus, sepertinya ini belum benar-benar nyaman dipakai di hardware konsumen, tapi saya yakin dalam beberapa tahun, atau bahkan lebih cepat, itu akan memungkinkan
Logonya juga indah dan saya suka warnanya
Untuk use case seperti ini, Llama 2 sudah cukup mumpuni, sehingga terutama saat privasi penting, membayar ChatGPT jadi terasa kurang menarik
Semoga terus dikembangkan dengan baik
Saya memakai Khoj selama sehari dan ini benar-benar rapi serta dibuat dengan baik
Ada beberapa pengamatan
Saya meninggalkan issue dan saran terkait hal ini di sini: https://github.com/khoj-ai/khoj/issues/389
Saya juga menambahkan catatan di issue GitHub di atas
Misalnya saya penasaran apakah model huggingface/gpt4all bisa dikonfigurasi, dan jika bisa apakah akan otomatis diunduh berdasarkan nama, atau apakah
.bindan YAML harus diletakkan di suatu volumeSeperti yang tertulis di dokumentasi, Anda bisa melihat sendiri server telemetri[1]
Kalau melihat sesuatu yang aneh, beri tahu kami dan kami akan segera membuat hotfix
Semua metadata telemetri juga bisa dilihat di sini[2]
[1]: https://github.com/khoj-ai/khoj/tree/master/src/telemetry
[2]: https://github.com/khoj-ai/khoj/blob/master/src/khoj/routers...
Konfigurasi
docker-composeagak khusus, jadi lihat issue tersebut untuk detailnyaTerima kasih juga atas catatan terkait integrasi GPU; untuk memperjelas, kami memakai optimasi GPU untuk pengindeksan, tetapi belum untuk chat lokal berbasis Llama
Kami sedang mengupayakan agar bagian itu berfungsi
./serverdi ggml?Kalau konteks pencarian sudah dipratokenisasi, ini mungkin lebih sulit
Proyeknya benar-benar keren
Menarik Anda menyebut
C-sisearch-forwardbiasanya dipakai untuk pencarian kecocokan literal dengan latensi rendahSaya penasaran dalam alur kerja seperti apa Khoj bisa memberikan latensi yang dapat diterima sebagai pengganti isearch, atau utilitas yang lebih baik
Apakah ada contoh bagaimana Anda memakainya saat menjelajahi dokumen?
Ini memberi pengalaman pencarian seketika saat mengetik, bukan dengan kata kunci, melainkan lewat antarmuka pencarian bahasa alami
Alur kerja saya seperti ini
C-c s sRETn n o 2[1]:
C-c sdi-bind ke transient menukhoj[2] https://orgmode.org/manual/Speed-Keys.html