Jalankan second brain Khoj anda pada base URL OpenAI custom.
Updated 2026-07-29
Khoj mendokumentasikan persediaan proksi-OpenAI dengan dua permukaan: pembolehubah environment OPENAI_BASE_URL yang menyemai model pada larian pertama, dan entri AI Model API dalam panel admin dengan medan Api Base Url. Arahkan mana-mana satu ke https://api.apisrouter.com/v1 dan sembang, agent, dan automasi berjalan pada mana-mana model katalog.
Jawapan pantas: env var pada larian pertama, panel admin bila-bila masa.
Fail compose self-hosting Khoj membawa baris OPENAI_BASE_URL yang dikomen yang bertujuan, mengikut perkataannya sendiri, untuk penyedia serasi OpenAI API lain. Tetapkannya kepada https://api.apisrouter.com/v1 dengan OPENAI_API_KEY menyimpan kunci gateway sebelum permulaan pertama, dan inisialisasi Khoj melakukan sesuatu yang luar biasa berguna: ia menyoal senarai model endpoint dan menyemai jadual chat-model dengan setiap id yang dilayani endpoint, jadi katalog itu muncul dalam pemilih model Khoj tanpa kemasukan manual. Pada pelayan yang sudah diinisialisasi, guna panel admin sebaliknya. Cipta entri AI Model API (medan: Name, Api Key, Api Base Url) menunjuk ke gateway, kemudian cipta entri Chat Model yang Name-nya ialah id model tepat, dengan Model Type ditetapkan kepada Openai dan dipautkan ke AI Model API itu. Kedua-dua permukaan didokumentasikan dalam panduan proksi-OpenAI Khoj di docs.khoj.dev.
services:
server:
environment:
- OPENAI_BASE_URL=https://api.apisrouter.com/v1
- OPENAI_API_KEY=sk-YOUR-APISROUTER-KEYApa yang dilakukan Khoj dengan chat model-nya.
Khoj (khoj-ai di GitHub, lebih kurang 36K bintang) ialah second brain AI self-hostable: ia mengindeks nota dan dokumen anda (markdown, org-mode, PDF, dan banyak lagi), kemudian membenarkan anda bersembang atasnya, menjalankan agent custom dengan persona dan alat sendiri, menjadualkan automasi yang menembak pada cron, dan melancarkan larian penyelidikan berbilang langkah. Ada app hosted, tetapi pelayan self-hosted adalah tempat endpoint custom terpakai, dan itulah deployment yang diterangkan halaman ini. Setiap ciri itu menyalur melalui chat model yang anda pilih. Sembang dokumen memuatkan serpihan nota yang diambil ke dalam prompt, agent menambah panggilan alat dan arahan persona, automasi menjalankan pipeline yang sama tanpa pengawasan, dan mod penyelidikan merantaikan banyak panggilan model per soalan. Model Type Openai memberitahu Khoj untuk bertutur /v1/chat/completions kepada Api Base Url entri AI Model API yang dipautkan, meneruskan Name model sebagai rentetan biasa, itulah sebab id Claude atau DeepSeek berfungsi di sana selagi endpoint melayaninya. Embedding carian adalah subsistem yang berbeza. Khoj meng-embed dokumen anda dengan model sentence-transformers tempatan secara lalai, jadi pengindeksan dan carian semantik terus berfungsi tidak kira apa yang anda lakukan dengan endpoint sembang. Menghalakan sembang melalui gateway hanya memindahkan bil penaakulan.
Persediaan penuh: entri panel admin langkah demi langkah.
Pada pelayan yang berjalan, keseluruhan integrasi adalah tiga skrin admin. Pertama, tambah AI Model API: buka /server/admin/database/aimodelapi/add, namakannya, tampal kunci gateway ke dalam Api Key, dan tetapkan Api Base Url kepada https://api.apisrouter.com/v1. Kedua, tambah chat model: di /server/admin/database/chatmodel/add, tetapkan Name kepada id katalog yang tepat (claude-sonnet-4-6, deepseek-v4-flash), tetapkan Model Type kepada Openai, pautkan entri Ai Model Api yang baru anda buat, dan tetapkan Max prompt size kepada nilai yang sesuai dengan tetingkap konteks model. Dokumentasi menasihatkan membiarkan Tokenizer tidak ditetapkan untuk model jenis OpenAI. Ulang untuk setiap model yang anda mahu dalam pemilih. Ketiga, pilih model: pada /settings, pilih chat model baharu anda sebagai lalai. Agent boleh mengatasi model per agent, itulah cara satu instans Khoj menjalankan id pantas untuk automasi harian dan id frontier untuk penyelidikan.
1) /server/admin/database/aimodelapi/add
Name: APIsRouter
Api Key: sk-YOUR-APISROUTER-KEY
Api Base Url: https://api.apisrouter.com/v1
2) /server/admin/database/chatmodel/add
Name: claude-sonnet-4-6 (exact catalog id)
Model Type: Openai
Ai Model Api: APIsRouter
Max prompt size: 100000
3) /settings -> select the new chat modelMemilih model untuk second brain.
Kerana chat model adalah baris yang anda tambah terhadap satu AI Model API, mengekalkan dua atau tiga id dalam pemilih tidak berkos apa-apa. Persediaan praktikal ialah lalai pantas ditambah peningkatan frontier, kedua-duanya dibilkan melalui kunci yang sama supaya log penggunaan menunjukkan berapa kos sebenar setiap tahap pada nota anda.
- Sembang dokumen adalah berat input: serpihan nota yang diambil mengatasi jawapan dari segi saiz. Harga per-token-input menggerakkan kos per soalan, yang memihak kepada claude-haiku-4-5-20251001, deepseek-v4-flash, atau gemini-3.5-flash untuk imbas kembali harian.
- Mod penyelidikan menggandakan panggilan. Satu soalan penyelidikan boleh merantai banyak giliran model, jadi id yang anda tetapkan di sana menggerakkan bil lebih daripada mana-mana tetapan lain; claude-sonnet-4-6 ialah pilihan seimbang, gpt-5.4 peningkatan.
- Automasi berjadual berjalan tanpa pengawasan. Hargakan seperti langganan: panggilan sehari didarab token per panggilan, tepat apa yang dilaporkan log penggunaan per-kunci.
- Pengetahuan peribadi kaya dengan percanggahan (rancangan berubah, nota menjadi basi), dan model berbeza dalam sebaik mana ia menandakan nota yang berkonflik dan bukan mencampurkannya; uji dua id pada set soalan yang sama sebelum komited.
- Max prompt size adalah per chat model dalam Khoj, jadi id konteks-panjang hanya berbaloi jika anda menaikkan medan itu untuk sepadan.
Bayar mengikut penggunaan · bawah harga rasmi
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| Model | Harga Rasmi | Harga Kami |
|---|---|---|
| Claude Sonnet 4.6 | $3.00 / $15.00 per M | $2.40 / $12.00 per M |
| Claude Haiku 4.5 20251001 | $1.00 / $5.00 per M | $0.80 / $4.00 per M |
| GPT-5.4 | $2.50 / $15.00 per M | $2.00 / $12.00 per M |
| DeepSeek V4 Flash | $0.14 / $0.28 per M | $0.10 / $0.30 per M |
| Gemini 3.5 Flash | $1.50 / $9.00 per M | $1.20 / $7.20 per M |
Mod kegagalan khusus Khoj.
Env var adalah semaian larian-pertama, bukan tetapan langsung. OPENAI_BASE_URL dibaca semasa inisialisasi untuk mencipta entri penyedia dan menemui model; pada pelayan yang sudah diinisialisasi, menyunting fail compose tidak menukar apa-apa yang boleh anda lihat. Guna panel admin untuk perubahan selepas but pertama, atau tetapkan semula pangkalan data jika anda benar-benar mahu semaian baharu. Perangkap kunci-placeholder: apabila OPENAI_BASE_URL ditetapkan tanpa OPENAI_API_KEY, Khoj mengisi kunci dengan placeholder supaya pelayan tempatan seperti Ollama berfungsi. Gateway memerlukan kunci sebenar, jadi jika penyemaian larian-pertama berlaku tanpanya, sembang gagal dengan ralat pengesahan sehingga anda menampal kunci ke dalam entri AI Model API dalam panel admin. Auto-discovery menyemai segala-galanya. Kerana inisialisasi menyenaraikan setiap model yang dilayani endpoint, gateway multi-vendor boleh menyemai jadual model yang panjang. Tidak berbahaya, tetapi berbaloi dipangkas dalam panel admin supaya pemilih kekal boleh digunakan. Name chat model adalah tepat. Khoj meneruskannya secara verbatim; kesilapan taip muncul sebagai model-not-found pada mesej pertama, dan output /v1/models gateway adalah ejaan berwibawa. Dan jika carian semantik atas nota anda berkelakuan tidak sepatutnya, itu adalah subsistem embedding tempatan, tidak berkaitan dengan endpoint sembang.
Siapa yang menghalakan Khoj melalui gateway.
- Self-hoster yang mahukan sembang model frontier atas nota mereka tanpa akaun vendor setiap keluarga model; satu kunci merangkumi id Claude, GPT, DeepSeek, dan Gemini.
- Pengguna yang menjalankan automasi berjadual setiap hari, di mana id pantas mengekalkan kos berulang rata dan log penggunaan menjadikannya kelihatan.
- Persediaan yang mementingkan privasi yang mengekalkan pengindeksan dan embeddings tempatan dan hanya mendedahkan prompt sembang kepada satu endpoint yang boleh diaudit.
- Peminat yang membandingkan chat model atas korpus peribadi yang sama: setiap calon adalah satu baris chat-model terhadap AI Model API yang sama.
- Pembangun tanpa akses kepada pengebilan vendor tertentu. Akses berasaskan top-up tanpa keperluan kad menghapuskan kebergantungan pendaftaran setiap penyedia.
Sahkan endpoint dan nyahpepijat sembang pertama.
Semak gateway dahulu: senaraikan model dengan kunci anda dan sahkan id yang anda rancang daftarkan. Auto-discovery Khoj sendiri membuat panggilan yang sama semasa penyemaian larian-pertama, jadi jika curl ini berfungsi, penyemaian juga akan berfungsi. Kegagalan disetempatkan dengan bersih. Ralat pengesahan bermaksud Api Key pada entri AI Model API salah atau masih placeholder yang disemai. Model-not-found bermaksud Name chat model tidak sepadan dengan ejaan katalog. Respons yang terputus di tengah jawapan biasanya bermaksud Max prompt size atau siling output model ditetapkan terlalu rendah untuk perbualan itu. Masalah pengindeksan dan carian adalah pipeline embedding tempatan dan tiada kaitan dengan endpoint. Sebaik sahaja sembang mengalir, konsol APIsRouter menunjukkan model per permintaan, kiraan token, dan perbelanjaan. Automasi dan larian penyelidikan adalah tempat kos second-brain tersembunyi, dan penggunaan per-kunci adalah cara anda melihatnya per ciri dan bukan sebagai satu kejutan bulanan.
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50Soalan lazim
Adakah Khoj menyokong proksi atau gateway serasi OpenAI?
Ya, sebagai persediaan yang didokumentasikan: cipta entri AI Model API dengan Api Base Url menunjuk ke endpoint, kemudian tambah chat model dengan Model Type Openai. Fail compose juga mendedahkan OPENAI_BASE_URL untuk penyemaian larian-pertama.
Bolehkah Khoj bersembang dengan model Claude atau DeepSeek melalui ini?
Ya. Model Type Openai meneruskan Name chat model sebagai rentetan biasa melalui /v1/chat/completions ke Api Base Url. Mana-mana id yang dilayani gateway berfungsi, termasuk id Claude, DeepSeek, GLM, dan Gemini.
Mengapa menukar OPENAI_BASE_URL dalam docker-compose tidak melakukan apa-apa?
Pembolehubah itu menyemai penyedia dan model semasa inisialisasi larian-pertama sahaja. Pada pelayan yang diinisialisasi, edit entri AI Model API dalam panel admin sebaliknya; itulah tetapan langsung.
Adakah base URL custom menjejaskan carian dokumen Khoj?
Tidak. Khoj meng-embed dan mencari dokumen anda dengan model sentence-transformers tempatan secara lalai. Entri AI Model API hanya memindahkan sembang, agent, automasi, dan penyelidikan.
Apa itu Max prompt size pada entri chat model?
Had per-model pada berapa banyak prompt yang dimuatkan Khoj ke dalam permintaan. Tetapkan supaya sesuai dengan tetingkap konteks model; terlalu rendah memotong nota yang diambil, dan id konteks-panjang hanya membantu jika medan ini dinaikkan untuk sepadan.
Adakah ini terpakai kepada app Khoj hosted?
Tidak, endpoint custom adalah ciri self-hosting. App hosted mengurus model sendiri di sisi pelayan; permukaan panel-admin dan environment di sini tergolong kepada pelayan yang anda jalankan sendiri.