Admin Panel
Describes the Khoj settings configurable via the admin panel
App Settings
Agents
Add all the agents you want to use for your different use-cases like Writer, Researcher, Therapist etc.
Personality
: This is a prompt to tell the chat model how to tune the personality of the agent.Chat model
: The chat model to use for the agent.Name
: The name of the agent. This field helps give the agent a unique identity across the app.Avatar
: Url to the agents profile picture. It help give the agent a unique visual identity across the app.Style color
,Style icon
: These fields help give the agent a unique, visually identifiable identity across the app.Slug
: This is the agent name to use in urls.Public
: Check this if the agent is expected to be visible to all users on this Khoj server.Managed by admin
: Check this if the agent is managed by admin, not by any user.Creator
: The user who created the agent.Tools
: The list of tools available to this agent. Tools include notes, image, online. This field is not currently configurable and only supports all tools (i.e["*"]
)
Chat Model Options
Add all the chat models you want to try, use and switch between for your different use-cases. For each chat model you add:
Chat model
: The name of an OpenAI, Anthropic, Gemini or Offline chat model.Model type
: The chat model provider likeOpenAI
,Offline
.Vision enabled
: Set totrue
if your model supports vision. This is currently only supported for vision capable OpenAI models likegpt-4o
Max prompt size
,Subscribed max prompt size
: These are optional fields. They are used to truncate the context to the maximum context size that can be passed to the model. This can help with accuracy and cost-saving.Tokenizer
: This is an optional field. It is used to accurately count tokens and truncate context passed to the chat model to stay within the models max prompt size.
Server Chat Settings
The server chat settings are used as:
- The default chat models for subscribed (
Advanced
field) and unsubscribed (Default
field) users. - The chat model for all intermediate steps like intent detection, web search etc. during chat response generation.
If a server chat setting is not added the first ChatModelOption in your config is used as the default chat model.
To add a server chat setting:
- Set your preferred default chat models in the
Default
fields of your ServerChatSettings - The
Advanced
field doesn't need to be set when self-hosting. When unset, theDefault
chat model is used for all users and the intermediate steps.
OpenAI Processor Conversation Configs
These settings configure chat model providers to be accessed over API. The name of this setting is kind of a misnomer, we know, it'll hopefully be changed at some point. For each chat model provider you add:
Api key
: Set to your OpenAI, Anthropic or Gemini API keys.Name
: Give the configuration any friendly name likeOpenAI
,Gemini
,Anthropic
.Api base url
: Set the API base URL. This is only relevant to set if you're using another OpenAI-compatible proxy server like Ollama or LMStudio.
Search Model Configs
Search models are used to generate vector embeddings of your documents for natural language search and chat. You can choose any embeddings models on HuggingFace to try, use for your to create vector embeddings of your documents for natural language search and chat.
Text to Image Model Options
Add text to image generation models with these settings. Khoj currently supports text to image models available via OpenAI, Stability or Replicate API
api-key
: Set to your OpenAI, Stability or Replicate API keymodel
: Set the model name available over the selected model providermodel-type
: Set to the appropiate model provideropenai-config
: For image generation models available via OpenAI (compatible) API you can set the appropriate OpenAI Processor Conversation Settings instead of specifying theapi-key
field above
Speech to Text Model Options
Add speech to text models with these settings. Khoj currently only supports whisper speech to text model via OpenAI API or Offline
Voice Model Options
Add text to speech models with these settings. Khoj currently supports models from ElevenLabs.
User Data
- Users, Entrys, Conversations, Subscriptions, Github configs, Notion configs, User search configs, User conversation configs, User voice configs
Miscellaneous Data
- Process Locks: Persistent Locks for Automations
- Client Applications:
Client applications allow you to setup third party applications that can query your Khoj server using a client application ID + secret. The secret would go in a bearer token.