khoj 1.30.11.dev46__tar.gz → 1.30.11.dev56__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (406) hide show
  1. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/PKG-INFO +1 -1
  2. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/configure.py +3 -3
  3. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/adapters/__init__.py +15 -15
  4. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/admin.py +4 -4
  5. khoj-1.30.11.dev56/src/khoj/database/migrations/0076_rename_openaiprocessorconversationconfig_aimodelapi_and_more.py +26 -0
  6. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/models/__init__.py +8 -12
  7. khoj-1.30.11.dev56/src/khoj/interface/compiled/404/index.html +1 -0
  8. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/1603-f5babe72ba9f6a59.js → khoj-1.30.11.dev56/src/khoj/interface/compiled/_next/static/chunks/1603-e40aadd1e56ab030.js +1 -1
  9. khoj-1.30.11.dev56/src/khoj/interface/compiled/_next/static/chunks/app/automations/layout-7f1b79a2c67af0b4.js +1 -0
  10. khoj-1.30.11.dev56/src/khoj/interface/compiled/_next/static/chunks/app/settings/layout-f285795bc3154b8c.js +1 -0
  11. khoj-1.30.11.dev56/src/khoj/interface/compiled/agents/index.html +1 -0
  12. khoj-1.30.11.dev56/src/khoj/interface/compiled/agents/index.txt +7 -0
  13. khoj-1.30.11.dev56/src/khoj/interface/compiled/automations/index.html +1 -0
  14. khoj-1.30.11.dev56/src/khoj/interface/compiled/automations/index.txt +8 -0
  15. khoj-1.30.11.dev56/src/khoj/interface/compiled/chat/index.html +1 -0
  16. khoj-1.30.11.dev56/src/khoj/interface/compiled/chat/index.txt +7 -0
  17. khoj-1.30.11.dev56/src/khoj/interface/compiled/index.html +1 -0
  18. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/index.txt +2 -2
  19. khoj-1.30.11.dev56/src/khoj/interface/compiled/search/index.html +1 -0
  20. khoj-1.30.11.dev56/src/khoj/interface/compiled/search/index.txt +7 -0
  21. khoj-1.30.11.dev56/src/khoj/interface/compiled/settings/index.html +1 -0
  22. khoj-1.30.11.dev56/src/khoj/interface/compiled/settings/index.txt +9 -0
  23. khoj-1.30.11.dev56/src/khoj/interface/compiled/share/chat/index.html +1 -0
  24. khoj-1.30.11.dev56/src/khoj/interface/compiled/share/chat/index.txt +7 -0
  25. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/migrations/migrate_server_pg.py +3 -9
  26. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/openai/utils.py +1 -6
  27. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/image/generate.py +2 -2
  28. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/api.py +5 -5
  29. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/helpers.py +11 -11
  30. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/initialization.py +10 -12
  31. khoj-1.30.11.dev46/src/khoj/interface/compiled/404/index.html +0 -1
  32. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/automations/layout-f1050c1f20a3af67.js +0 -1
  33. khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/chunks/app/settings/layout-fe8a2f65ccafd142.js +0 -1
  34. khoj-1.30.11.dev46/src/khoj/interface/compiled/agents/index.html +0 -1
  35. khoj-1.30.11.dev46/src/khoj/interface/compiled/agents/index.txt +0 -7
  36. khoj-1.30.11.dev46/src/khoj/interface/compiled/automations/index.html +0 -1
  37. khoj-1.30.11.dev46/src/khoj/interface/compiled/automations/index.txt +0 -8
  38. khoj-1.30.11.dev46/src/khoj/interface/compiled/chat/index.html +0 -1
  39. khoj-1.30.11.dev46/src/khoj/interface/compiled/chat/index.txt +0 -7
  40. khoj-1.30.11.dev46/src/khoj/interface/compiled/index.html +0 -1
  41. khoj-1.30.11.dev46/src/khoj/interface/compiled/search/index.html +0 -1
  42. khoj-1.30.11.dev46/src/khoj/interface/compiled/search/index.txt +0 -7
  43. khoj-1.30.11.dev46/src/khoj/interface/compiled/settings/index.html +0 -1
  44. khoj-1.30.11.dev46/src/khoj/interface/compiled/settings/index.txt +0 -8
  45. khoj-1.30.11.dev46/src/khoj/interface/compiled/share/chat/index.html +0 -1
  46. khoj-1.30.11.dev46/src/khoj/interface/compiled/share/chat/index.txt +0 -7
  47. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/.gitignore +0 -0
  48. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/LICENSE +0 -0
  49. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/README.md +0 -0
  50. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/pyproject.toml +0 -0
  51. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/__init__.py +0 -0
  52. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/app/README.md +0 -0
  53. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/app/__init__.py +0 -0
  54. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/app/asgi.py +0 -0
  55. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/app/settings.py +0 -0
  56. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/app/urls.py +0 -0
  57. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/__init__.py +0 -0
  58. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/apps.py +0 -0
  59. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/management/__init__.py +0 -0
  60. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/management/commands/__init__.py +0 -0
  61. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/management/commands/change_default_model.py +0 -0
  62. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/management/commands/change_generated_images_url.py +0 -0
  63. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/management/commands/convert_images_png_to_webp.py +0 -0
  64. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0001_khojuser.py +0 -0
  65. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0002_googleuser.py +0 -0
  66. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0003_vector_extension.py +0 -0
  67. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0004_content_types_and_more.py +0 -0
  68. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0005_embeddings_corpus_id.py +0 -0
  69. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0006_embeddingsdates.py +0 -0
  70. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0007_add_conversation.py +0 -0
  71. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0008_alter_conversation_conversation_log.py +0 -0
  72. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0009_khojapiuser.py +0 -0
  73. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0010_chatmodeloptions_and_more.py +0 -0
  74. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0010_rename_embeddings_entry_and_more.py +0 -0
  75. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0011_merge_20231102_0138.py +0 -0
  76. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0012_entry_file_source.py +0 -0
  77. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0013_subscription.py +0 -0
  78. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0014_alter_googleuser_picture.py +0 -0
  79. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0015_alter_subscription_user.py +0 -0
  80. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0016_alter_subscription_renewal_date.py +0 -0
  81. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0017_searchmodel.py +0 -0
  82. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0018_searchmodelconfig_delete_searchmodel.py +0 -0
  83. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0019_alter_googleuser_family_name_and_more.py +0 -0
  84. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0020_reflectivequestion.py +0 -0
  85. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0021_speechtotextmodeloptions_and_more.py +0 -0
  86. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0022_texttoimagemodelconfig.py +0 -0
  87. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0023_usersearchmodelconfig.py +0 -0
  88. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0024_alter_entry_embeddings.py +0 -0
  89. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0025_clientapplication_khojuser_phone_number_and_more.py +0 -0
  90. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0025_searchmodelconfig_embeddings_inference_endpoint_and_more.py +0 -0
  91. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0026_searchmodelconfig_cross_encoder_inference_endpoint_and_more.py +0 -0
  92. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0027_merge_20240118_1324.py +0 -0
  93. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0028_khojuser_verified_phone_number.py +0 -0
  94. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0029_userrequests.py +0 -0
  95. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0030_conversation_slug_and_title.py +0 -0
  96. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0031_agent_conversation_agent.py +0 -0
  97. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0031_alter_googleuser_locale.py +0 -0
  98. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0032_merge_20240322_0427.py +0 -0
  99. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0033_rename_tuning_agent_personality.py +0 -0
  100. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0034_alter_chatmodeloptions_chat_model.py +0 -0
  101. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0035_processlock.py +0 -0
  102. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0036_alter_processlock_name.py +0 -0
  103. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0036_delete_offlinechatprocessorconversationconfig.py +0 -0
  104. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0036_publicconversation.py +0 -0
  105. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0037_chatmodeloptions_openai_config_and_more.py +0 -0
  106. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0037_searchmodelconfig_bi_encoder_docs_encode_config_and_more.py +0 -0
  107. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0038_merge_20240425_0857.py +0 -0
  108. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0038_merge_20240426_1640.py +0 -0
  109. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0039_merge_20240501_0301.py +0 -0
  110. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0040_alter_processlock_name.py +0 -0
  111. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0040_merge_20240504_1010.py +0 -0
  112. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0041_merge_20240505_1234.py +0 -0
  113. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0042_serverchatsettings.py +0 -0
  114. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0043_alter_chatmodeloptions_model_type.py +0 -0
  115. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0044_conversation_file_filters.py +0 -0
  116. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0045_fileobject.py +0 -0
  117. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0046_khojuser_email_verification_code_and_more.py +0 -0
  118. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0047_alter_entry_file_type.py +0 -0
  119. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0048_voicemodeloption_uservoicemodelconfig.py +0 -0
  120. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0049_datastore.py +0 -0
  121. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0049_texttoimagemodelconfig_api_key_and_more.py +0 -0
  122. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0050_alter_processlock_name.py +0 -0
  123. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0051_merge_20240702_1220.py +0 -0
  124. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0052_alter_searchmodelconfig_bi_encoder_docs_encode_config_and_more.py +0 -0
  125. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0053_agent_style_color_agent_style_icon.py +0 -0
  126. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0054_alter_agent_style_color.py +0 -0
  127. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0055_alter_agent_style_icon.py +0 -0
  128. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0056_chatmodeloptions_vision_enabled.py +0 -0
  129. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0056_searchmodelconfig_cross_encoder_model_config.py +0 -0
  130. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0057_merge_20240816_1409.py +0 -0
  131. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0057_remove_serverchatsettings_default_model_and_more.py +0 -0
  132. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0058_alter_chatmodeloptions_chat_model.py +0 -0
  133. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0059_searchmodelconfig_bi_encoder_confidence_threshold.py +0 -0
  134. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0060_merge_20240905_1828.py +0 -0
  135. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0061_alter_chatmodeloptions_model_type.py +0 -0
  136. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0061_alter_texttoimagemodelconfig_model_type.py +0 -0
  137. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0062_merge_20240913_0222.py +0 -0
  138. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0063_conversation_temp_id.py +0 -0
  139. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0064_remove_conversation_temp_id_alter_conversation_id.py +0 -0
  140. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0065_remove_agent_avatar_remove_agent_public_and_more.py +0 -0
  141. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0066_remove_agent_tools_agent_input_tools_and_more.py +0 -0
  142. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0067_alter_agent_style_icon.py +0 -0
  143. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0068_alter_agent_output_modes.py +0 -0
  144. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0069_webscraper_serverchatsettings_web_scraper.py +0 -0
  145. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0070_alter_agent_input_tools_alter_agent_output_modes.py +0 -0
  146. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0071_subscription_enabled_trial_at_and_more.py +0 -0
  147. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0072_entry_search_model.py +0 -0
  148. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0073_delete_usersearchmodelconfig.py +0 -0
  149. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0074_alter_conversation_title.py +0 -0
  150. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/0075_migrate_generated_assets_and_validate.py +0 -0
  151. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/migrations/__init__.py +0 -0
  152. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/database/tests.py +0 -0
  153. {khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/VhbBwTudxbu82AwZhVKwF → khoj-1.30.11.dev56/src/khoj/interface/compiled/_next/static/J7Vqh1vjCleYuVLeTaJL6}/_buildManifest.js +0 -0
  154. {khoj-1.30.11.dev46/src/khoj/interface/compiled/_next/static/VhbBwTudxbu82AwZhVKwF → khoj-1.30.11.dev56/src/khoj/interface/compiled/_next/static/J7Vqh1vjCleYuVLeTaJL6}/_ssgManifest.js +0 -0
  155. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/1210.ef7a0f9a7e43da1d.js +0 -0
  156. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/1279-4cb23143aa2c0228.js +0 -0
  157. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/1459.690bf20e7d7b7090.js +0 -0
  158. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/1970-1b63ac1497b03a10.js +0 -0
  159. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/2646-92ba433951d02d52.js +0 -0
  160. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/3072-be830e4f8412b9d2.js +0 -0
  161. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/3463-081c031e873b7966.js +0 -0
  162. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/3690-51312931ba1eae30.js +0 -0
  163. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/3717-b46079dbe9f55694.js +0 -0
  164. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/4504-62ac13e7d94c52f9.js +0 -0
  165. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/4602-460621c3241e0d13.js +0 -0
  166. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/4752-554a3db270186ce3.js +0 -0
  167. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/5512-7cc62049bbe60e11.js +0 -0
  168. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/5538-0ea2d3944ca051e1.js +0 -0
  169. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/7023-e8de2bded4df6539.js +0 -0
  170. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/7592-a09c39a38e60634b.js +0 -0
  171. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/8423-1dda16bc56236523.js +0 -0
  172. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/94ca1967.5584df65931cfe83.js +0 -0
  173. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/964ecbae.ea4eab2a3a835ffe.js +0 -0
  174. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/_not-found/page-cfba071f5a657256.js +0 -0
  175. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/agents/layout-1878cc328ea380bd.js +0 -0
  176. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/agents/page-f5c0801b27a8e95e.js +0 -0
  177. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/automations/page-8691f6c09a0acd44.js +0 -0
  178. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/chat/layout-9219a85f3477e722.js +0 -0
  179. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/chat/page-135d56dd4263e40d.js +0 -0
  180. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/layout-6310c57b674dd6f5.js +0 -0
  181. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/page-e79ace822d51557b.js +0 -0
  182. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/search/layout-cae84c87073877f0.js +0 -0
  183. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/search/page-e8b578d155550386.js +0 -0
  184. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/settings/page-b6c835050c970be7.js +0 -0
  185. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-6f4879fbbf8b90f7.js +0 -0
  186. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/app/share/chat/page-635635e4fb39fe29.js +0 -0
  187. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/d3ac728e-a9e3522eef9b6b28.js +0 -0
  188. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/fd9d1056-2e6c8140e79afc3b.js +0 -0
  189. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/framework-8e0e0f4a6b83a956.js +0 -0
  190. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/main-1ea5c2e0fdef4626.js +0 -0
  191. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/main-app-6d6ee3495efe03d4.js +0 -0
  192. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/pages/_app-f870474a17b7f2fd.js +0 -0
  193. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/pages/_error-c66a4e8afc46f17b.js +0 -0
  194. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js +0 -0
  195. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/chunks/webpack-5203c3872078c10c.js +0 -0
  196. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/css/089de1d8526b96e9.css +0 -0
  197. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/css/1f293605f2871853.css +0 -0
  198. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/css/3c34171b174cc381.css +0 -0
  199. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/css/3cf13271869a4aeb.css +0 -0
  200. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/css/4cae6c0e5c72fb2d.css +0 -0
  201. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/css/592ca99f5122e75a.css +0 -0
  202. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/css/5a400c87d295e68a.css +0 -0
  203. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/css/edd3abaf11580924.css +0 -0
  204. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/1d8a05b60287ae6c-s.p.woff2 +0 -0
  205. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/6f22fce21a7c433c-s.woff2 +0 -0
  206. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/77c207b095007c34-s.p.woff2 +0 -0
  207. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/82ef96de0e8f4d8c-s.p.woff2 +0 -0
  208. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_AMS-Regular.1608a09b.woff +0 -0
  209. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_AMS-Regular.4aafdb68.ttf +0 -0
  210. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_AMS-Regular.a79f1c31.woff2 +0 -0
  211. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Bold.b6770918.woff +0 -0
  212. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Bold.cce5b8ec.ttf +0 -0
  213. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Bold.ec17d132.woff2 +0 -0
  214. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Regular.07ef19e7.ttf +0 -0
  215. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Regular.55fac258.woff2 +0 -0
  216. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Caligraphic-Regular.dad44a7f.woff +0 -0
  217. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Bold.9f256b85.woff +0 -0
  218. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Bold.b18f59e1.ttf +0 -0
  219. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Bold.d42a5579.woff2 +0 -0
  220. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Regular.7c187121.woff +0 -0
  221. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Regular.d3c882a6.woff2 +0 -0
  222. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Fraktur-Regular.ed38e79f.ttf +0 -0
  223. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Bold.b74a1a8b.ttf +0 -0
  224. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Bold.c3fb5ac2.woff2 +0 -0
  225. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Bold.d181c465.woff +0 -0
  226. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-BoldItalic.6f2bb1df.woff2 +0 -0
  227. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-BoldItalic.70d8b0a5.ttf +0 -0
  228. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-BoldItalic.e3f82f9d.woff +0 -0
  229. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Italic.47373d1e.ttf +0 -0
  230. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Italic.8916142b.woff2 +0 -0
  231. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Italic.9024d815.woff +0 -0
  232. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Regular.0462f03b.woff2 +0 -0
  233. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Regular.7f51fe03.woff +0 -0
  234. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Main-Regular.b7f8fe9b.ttf +0 -0
  235. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-BoldItalic.572d331f.woff2 +0 -0
  236. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-BoldItalic.a879cf83.ttf +0 -0
  237. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-BoldItalic.f1035d8d.woff +0 -0
  238. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-Italic.5295ba48.woff +0 -0
  239. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-Italic.939bc644.ttf +0 -0
  240. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Math-Italic.f28c23ac.woff2 +0 -0
  241. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Bold.8c5b5494.woff2 +0 -0
  242. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Bold.94e1e8dc.ttf +0 -0
  243. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Bold.bf59d231.woff +0 -0
  244. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Italic.3b1e59b3.woff2 +0 -0
  245. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Italic.7c9bc82b.woff +0 -0
  246. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Italic.b4c20c84.ttf +0 -0
  247. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Regular.74048478.woff +0 -0
  248. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Regular.ba21ed5f.woff2 +0 -0
  249. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_SansSerif-Regular.d4d7ba48.ttf +0 -0
  250. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Script-Regular.03e9641d.woff2 +0 -0
  251. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Script-Regular.07505710.woff +0 -0
  252. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Script-Regular.fe9cbbe1.ttf +0 -0
  253. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size1-Regular.e1e279cb.woff +0 -0
  254. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size1-Regular.eae34984.woff2 +0 -0
  255. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size1-Regular.fabc004a.ttf +0 -0
  256. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size2-Regular.57727022.woff +0 -0
  257. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size2-Regular.5916a24f.woff2 +0 -0
  258. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size2-Regular.d6b476ec.ttf +0 -0
  259. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size3-Regular.9acaf01c.woff +0 -0
  260. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size3-Regular.a144ef58.ttf +0 -0
  261. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size3-Regular.b4230e7e.woff2 +0 -0
  262. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size4-Regular.10d95fd3.woff2 +0 -0
  263. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size4-Regular.7a996c9d.woff +0 -0
  264. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Size4-Regular.fbccdabe.ttf +0 -0
  265. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Typewriter-Regular.6258592b.woff +0 -0
  266. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Typewriter-Regular.a8709e36.woff2 +0 -0
  267. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/KaTeX_Typewriter-Regular.d97aaf4a.ttf +0 -0
  268. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/a6ecd16fa044d500-s.p.woff2 +0 -0
  269. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/bd82c78e5b7b3fe9-s.p.woff2 +0 -0
  270. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/c32c8052c071fc42-s.woff2 +0 -0
  271. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/c4250770ab8708b6-s.p.woff2 +0 -0
  272. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/e098aaaecc9cfbb2-s.p.woff2 +0 -0
  273. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/flags.3afdda2f.webp +0 -0
  274. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/flags@2x.5fbe9fc1.webp +0 -0
  275. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/globe.98e105ca.webp +0 -0
  276. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/_next/static/media/globe@2x.974df6f8.webp +0 -0
  277. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/agents.svg +0 -0
  278. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/icons/khoj_lantern.ico +0 -0
  279. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/icons/khoj_lantern.svg +0 -0
  280. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/icons/khoj_lantern_1200x1200.png +0 -0
  281. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/icons/khoj_lantern_128x128.png +0 -0
  282. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/icons/khoj_lantern_128x128_dark.png +0 -0
  283. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/icons/khoj_lantern_256x256.png +0 -0
  284. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/icons/khoj_lantern_512x512.png +0 -0
  285. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/icons/khoj_lantern_logomarktype_1200x630.png +0 -0
  286. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/samples/desktop-browse-draw-sample.png +0 -0
  287. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/samples/desktop-plain-chat-sample.png +0 -0
  288. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/samples/desktop-remember-plan-sample.png +0 -0
  289. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/samples/phone-browse-draw-sample.png +0 -0
  290. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/samples/phone-plain-chat-sample.png +0 -0
  291. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/assets/samples/phone-remember-plan-sample.png +0 -0
  292. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/automation.svg +0 -0
  293. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/chat.svg +0 -0
  294. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/close.svg +0 -0
  295. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/copy-button-success.svg +0 -0
  296. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/copy-button.svg +0 -0
  297. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/khoj.webmanifest +0 -0
  298. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/logo.svg +0 -0
  299. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/send.svg +0 -0
  300. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/share.svg +0 -0
  301. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/thumbs-down.svg +0 -0
  302. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/compiled/thumbs-up.svg +0 -0
  303. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/email/feedback.html +0 -0
  304. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/email/magic_link.html +0 -0
  305. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/email/task.html +0 -0
  306. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/email/welcome.html +0 -0
  307. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/.well-known/assetlinks.json +0 -0
  308. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/agents.svg +0 -0
  309. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/automation.svg +0 -0
  310. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/chat.svg +0 -0
  311. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/github.svg +0 -0
  312. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/khoj-logo-sideways-200.png +0 -0
  313. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/khoj-logo-sideways-500.png +0 -0
  314. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/khoj-logo-sideways.svg +0 -0
  315. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/khoj.svg +0 -0
  316. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/logotype.svg +0 -0
  317. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/search.svg +0 -0
  318. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/icons/sync.svg +0 -0
  319. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/khoj.css +0 -0
  320. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/assets/utils.js +0 -0
  321. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/base_config.html +0 -0
  322. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/content_source_github_input.html +0 -0
  323. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/login.html +0 -0
  324. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/interface/web/utils.html +0 -0
  325. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/main.py +0 -0
  326. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/manage.py +0 -0
  327. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/migrations/__init__.py +0 -0
  328. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/migrations/migrate_offline_chat_default_model.py +0 -0
  329. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/migrations/migrate_offline_chat_default_model_2.py +0 -0
  330. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/migrations/migrate_offline_chat_schema.py +0 -0
  331. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/migrations/migrate_offline_model.py +0 -0
  332. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/migrations/migrate_processor_config_openai.py +0 -0
  333. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/migrations/migrate_version.py +0 -0
  334. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/__init__.py +0 -0
  335. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/__init__.py +0 -0
  336. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/docx/__init__.py +0 -0
  337. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/docx/docx_to_entries.py +0 -0
  338. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/github/__init__.py +0 -0
  339. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/github/github_to_entries.py +0 -0
  340. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/images/__init__.py +0 -0
  341. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/images/image_to_entries.py +0 -0
  342. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/markdown/__init__.py +0 -0
  343. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/markdown/markdown_to_entries.py +0 -0
  344. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/notion/notion_to_entries.py +0 -0
  345. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/org_mode/__init__.py +0 -0
  346. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/org_mode/org_to_entries.py +0 -0
  347. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/org_mode/orgnode.py +0 -0
  348. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/pdf/__init__.py +0 -0
  349. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/pdf/pdf_to_entries.py +0 -0
  350. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/plaintext/__init__.py +0 -0
  351. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/plaintext/plaintext_to_entries.py +0 -0
  352. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/content/text_to_entries.py +0 -0
  353. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/__init__.py +0 -0
  354. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/anthropic/__init__.py +0 -0
  355. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/anthropic/anthropic_chat.py +0 -0
  356. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/anthropic/utils.py +0 -0
  357. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/google/__init__.py +0 -0
  358. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/google/gemini_chat.py +0 -0
  359. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/google/utils.py +0 -0
  360. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/offline/__init__.py +0 -0
  361. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/offline/chat_model.py +0 -0
  362. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/offline/utils.py +0 -0
  363. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/offline/whisper.py +0 -0
  364. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/openai/__init__.py +0 -0
  365. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/openai/gpt.py +0 -0
  366. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/openai/whisper.py +0 -0
  367. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/prompts.py +0 -0
  368. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/conversation/utils.py +0 -0
  369. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/embeddings.py +0 -0
  370. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/speech/__init__.py +0 -0
  371. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/speech/text_to_speech.py +0 -0
  372. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/tools/__init__.py +0 -0
  373. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/tools/online_search.py +0 -0
  374. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/processor/tools/run_code.py +0 -0
  375. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/__init__.py +0 -0
  376. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/api_agents.py +0 -0
  377. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/api_chat.py +0 -0
  378. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/api_content.py +0 -0
  379. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/api_model.py +0 -0
  380. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/api_phone.py +0 -0
  381. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/api_subscription.py +0 -0
  382. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/auth.py +0 -0
  383. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/email.py +0 -0
  384. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/notion.py +0 -0
  385. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/research.py +0 -0
  386. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/storage.py +0 -0
  387. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/twilio.py +0 -0
  388. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/routers/web_client.py +0 -0
  389. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/search_filter/__init__.py +0 -0
  390. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/search_filter/base_filter.py +0 -0
  391. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/search_filter/date_filter.py +0 -0
  392. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/search_filter/file_filter.py +0 -0
  393. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/search_filter/word_filter.py +0 -0
  394. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/search_type/__init__.py +0 -0
  395. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/search_type/text_search.py +0 -0
  396. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/__init__.py +0 -0
  397. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/cli.py +0 -0
  398. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/config.py +0 -0
  399. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/constants.py +0 -0
  400. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/fs_syncer.py +0 -0
  401. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/helpers.py +0 -0
  402. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/jsonl.py +0 -0
  403. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/models.py +0 -0
  404. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/rawconfig.py +0 -0
  405. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/state.py +0 -0
  406. {khoj-1.30.11.dev46 → khoj-1.30.11.dev56}/src/khoj/utils/yaml.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: khoj
3
- Version: 1.30.11.dev46
3
+ Version: 1.30.11.dev56
4
4
  Summary: Your Second Brain
5
5
  Project-URL: Homepage, https://khoj.dev
6
6
  Project-URL: Documentation, https://docs.khoj.dev
@@ -232,9 +232,9 @@ def configure_server(
232
232
  config = FullConfig()
233
233
  state.config = config
234
234
 
235
- if ConversationAdapters.has_valid_openai_conversation_config():
236
- openai_config = ConversationAdapters.get_openai_conversation_config()
237
- state.openai_client = openai.OpenAI(api_key=openai_config.api_key)
235
+ if ConversationAdapters.has_valid_ai_model_api():
236
+ ai_model_api = ConversationAdapters.get_ai_model_api()
237
+ state.openai_client = openai.OpenAI(api_key=ai_model_api.api_key)
238
238
 
239
239
  # Initialize Search Models from Config and initialize content
240
240
  try:
@@ -35,6 +35,7 @@ from torch import Tensor
35
35
 
36
36
  from khoj.database.models import (
37
37
  Agent,
38
+ AiModelApi,
38
39
  ChatModelOptions,
39
40
  ClientApplication,
40
41
  Conversation,
@@ -46,7 +47,6 @@ from khoj.database.models import (
46
47
  KhojApiUser,
47
48
  KhojUser,
48
49
  NotionConfig,
49
- OpenAIProcessorConversationConfig,
50
50
  ProcessLock,
51
51
  PublicConversation,
52
52
  ReflectiveQuestion,
@@ -981,7 +981,7 @@ class ConversationAdapters:
981
981
 
982
982
  @staticmethod
983
983
  async def aget_all_conversation_configs():
984
- return await sync_to_async(list)(ChatModelOptions.objects.prefetch_related("openai_config").all())
984
+ return await sync_to_async(list)(ChatModelOptions.objects.prefetch_related("ai_model_api").all())
985
985
 
986
986
  @staticmethod
987
987
  def get_vision_enabled_config():
@@ -1000,12 +1000,12 @@ class ConversationAdapters:
1000
1000
  return None
1001
1001
 
1002
1002
  @staticmethod
1003
- def get_openai_conversation_config():
1004
- return OpenAIProcessorConversationConfig.objects.filter().first()
1003
+ def get_ai_model_api():
1004
+ return AiModelApi.objects.filter().first()
1005
1005
 
1006
1006
  @staticmethod
1007
- def has_valid_openai_conversation_config():
1008
- return OpenAIProcessorConversationConfig.objects.filter().exists()
1007
+ def has_valid_ai_model_api():
1008
+ return AiModelApi.objects.filter().exists()
1009
1009
 
1010
1010
  @staticmethod
1011
1011
  @arequire_valid_user
@@ -1093,7 +1093,7 @@ class ConversationAdapters:
1093
1093
  server_chat_settings: ServerChatSettings = (
1094
1094
  await ServerChatSettings.objects.filter()
1095
1095
  .prefetch_related(
1096
- "chat_default", "chat_default__openai_config", "chat_advanced", "chat_advanced__openai_config"
1096
+ "chat_default", "chat_default__ai_model_api", "chat_advanced", "chat_advanced__ai_model_api"
1097
1097
  )
1098
1098
  .afirst()
1099
1099
  )
@@ -1109,7 +1109,7 @@ class ConversationAdapters:
1109
1109
 
1110
1110
  # Get the user's chat settings, if the server chat settings are not set
1111
1111
  user_chat_settings = (
1112
- (await UserConversationConfig.objects.filter(user=user).prefetch_related("setting__openai_config").afirst())
1112
+ (await UserConversationConfig.objects.filter(user=user).prefetch_related("setting__ai_model_api").afirst())
1113
1113
  if user
1114
1114
  else None
1115
1115
  )
@@ -1117,7 +1117,7 @@ class ConversationAdapters:
1117
1117
  return user_chat_settings.setting
1118
1118
 
1119
1119
  # Get the first chat model if even the user chat settings are not set
1120
- return await ChatModelOptions.objects.filter().prefetch_related("openai_config").afirst()
1120
+ return await ChatModelOptions.objects.filter().prefetch_related("ai_model_api").afirst()
1121
1121
 
1122
1122
  @staticmethod
1123
1123
  def get_advanced_conversation_config(user: KhojUser):
@@ -1130,7 +1130,7 @@ class ConversationAdapters:
1130
1130
  async def aget_advanced_conversation_config(user: KhojUser = None):
1131
1131
  server_chat_settings: ServerChatSettings = (
1132
1132
  await ServerChatSettings.objects.filter()
1133
- .prefetch_related("chat_advanced", "chat_advanced__openai_config")
1133
+ .prefetch_related("chat_advanced", "chat_advanced__ai_model_api")
1134
1134
  .afirst()
1135
1135
  )
1136
1136
  if server_chat_settings is not None and server_chat_settings.chat_advanced is not None:
@@ -1258,7 +1258,7 @@ class ConversationAdapters:
1258
1258
  @staticmethod
1259
1259
  async def aget_user_conversation_config(user: KhojUser):
1260
1260
  config = (
1261
- await UserConversationConfig.objects.filter(user=user).prefetch_related("setting__openai_config").afirst()
1261
+ await UserConversationConfig.objects.filter(user=user).prefetch_related("setting__ai_model_api").afirst()
1262
1262
  )
1263
1263
  if not config:
1264
1264
  return None
@@ -1313,7 +1313,7 @@ class ConversationAdapters:
1313
1313
  ChatModelOptions.ModelType.OPENAI,
1314
1314
  ChatModelOptions.ModelType.GOOGLE,
1315
1315
  ]
1316
- ) and conversation_config.openai_config:
1316
+ ) and conversation_config.ai_model_api:
1317
1317
  return conversation_config
1318
1318
 
1319
1319
  else:
@@ -1321,7 +1321,7 @@ class ConversationAdapters:
1321
1321
 
1322
1322
  @staticmethod
1323
1323
  async def aget_text_to_image_model_config():
1324
- return await TextToImageModelConfig.objects.filter().prefetch_related("openai_config").afirst()
1324
+ return await TextToImageModelConfig.objects.filter().prefetch_related("ai_model_api").afirst()
1325
1325
 
1326
1326
  @staticmethod
1327
1327
  def get_text_to_image_model_config():
@@ -1343,9 +1343,9 @@ class ConversationAdapters:
1343
1343
 
1344
1344
  @staticmethod
1345
1345
  async def aget_user_text_to_image_model(user: KhojUser) -> Optional[TextToImageModelConfig]:
1346
- # Create a custom queryset for prefetching settings__openai_config, handling null cases
1346
+ # Create a custom queryset for prefetching settings__ai_model_api, handling null cases
1347
1347
  settings_prefetch = Prefetch(
1348
- "setting", queryset=TextToImageModelConfig.objects.prefetch_related("openai_config")
1348
+ "setting", queryset=TextToImageModelConfig.objects.prefetch_related("ai_model_api")
1349
1349
  )
1350
1350
 
1351
1351
  config = await UserTextToImageModelConfig.objects.filter(user=user).prefetch_related(settings_prefetch).afirst()
@@ -1,6 +1,6 @@
1
1
  import csv
2
2
  import json
3
- from datetime import date, datetime, timedelta, timezone
3
+ from datetime import datetime, timedelta
4
4
 
5
5
  from apscheduler.job import Job
6
6
  from django.contrib import admin, messages
@@ -15,6 +15,7 @@ from unfold import admin as unfold_admin
15
15
 
16
16
  from khoj.database.models import (
17
17
  Agent,
18
+ AiModelApi,
18
19
  ChatModelOptions,
19
20
  ClientApplication,
20
21
  Conversation,
@@ -22,7 +23,6 @@ from khoj.database.models import (
22
23
  GithubConfig,
23
24
  KhojUser,
24
25
  NotionConfig,
25
- OpenAIProcessorConversationConfig,
26
26
  ProcessLock,
27
27
  ReflectiveQuestion,
28
28
  SearchModelConfig,
@@ -232,8 +232,8 @@ class TextToImageModelOptionsAdmin(unfold_admin.ModelAdmin):
232
232
  search_fields = ("id", "model_name", "model_type")
233
233
 
234
234
 
235
- @admin.register(OpenAIProcessorConversationConfig)
236
- class OpenAIProcessorConversationConfigAdmin(unfold_admin.ModelAdmin):
235
+ @admin.register(AiModelApi)
236
+ class AiModelApiAdmin(unfold_admin.ModelAdmin):
237
237
  list_display = (
238
238
  "id",
239
239
  "name",
@@ -0,0 +1,26 @@
1
+ # Generated by Django 5.0.9 on 2024-12-05 09:00
2
+
3
+ from django.db import migrations
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+ dependencies = [
8
+ ("database", "0075_migrate_generated_assets_and_validate"),
9
+ ]
10
+
11
+ operations = [
12
+ migrations.RenameModel(
13
+ old_name="OpenAIProcessorConversationConfig",
14
+ new_name="AiModelApi",
15
+ ),
16
+ migrations.RenameField(
17
+ model_name="chatmodeloptions",
18
+ old_name="openai_config",
19
+ new_name="ai_model_api",
20
+ ),
21
+ migrations.RenameField(
22
+ model_name="texttoimagemodelconfig",
23
+ old_name="openai_config",
24
+ new_name="ai_model_api",
25
+ ),
26
+ ]
@@ -181,7 +181,7 @@ class Subscription(DbBaseModel):
181
181
  enabled_trial_at = models.DateTimeField(null=True, default=None, blank=True)
182
182
 
183
183
 
184
- class OpenAIProcessorConversationConfig(DbBaseModel):
184
+ class AiModelApi(DbBaseModel):
185
185
  name = models.CharField(max_length=200)
186
186
  api_key = models.CharField(max_length=200)
187
187
  api_base_url = models.URLField(max_length=200, default=None, blank=True, null=True)
@@ -200,9 +200,7 @@ class ChatModelOptions(DbBaseModel):
200
200
  chat_model = models.CharField(max_length=200, default="bartowski/Meta-Llama-3.1-8B-Instruct-GGUF")
201
201
  model_type = models.CharField(max_length=200, choices=ModelType.choices, default=ModelType.OFFLINE)
202
202
  vision_enabled = models.BooleanField(default=False)
203
- openai_config = models.ForeignKey(
204
- OpenAIProcessorConversationConfig, on_delete=models.CASCADE, default=None, null=True, blank=True
205
- )
203
+ ai_model_api = models.ForeignKey(AiModelApi, on_delete=models.CASCADE, default=None, null=True, blank=True)
206
204
 
207
205
 
208
206
  class VoiceModelOption(DbBaseModel):
@@ -504,26 +502,24 @@ class TextToImageModelConfig(DbBaseModel):
504
502
  model_name = models.CharField(max_length=200, default="dall-e-3")
505
503
  model_type = models.CharField(max_length=200, choices=ModelType.choices, default=ModelType.OPENAI)
506
504
  api_key = models.CharField(max_length=200, default=None, null=True, blank=True)
507
- openai_config = models.ForeignKey(
508
- OpenAIProcessorConversationConfig, on_delete=models.CASCADE, default=None, null=True, blank=True
509
- )
505
+ ai_model_api = models.ForeignKey(AiModelApi, on_delete=models.CASCADE, default=None, null=True, blank=True)
510
506
 
511
507
  def clean(self):
512
508
  # Custom validation logic
513
509
  error = {}
514
510
  if self.model_type == self.ModelType.OPENAI:
515
- if self.api_key and self.openai_config:
511
+ if self.api_key and self.ai_model_api:
516
512
  error[
517
513
  "api_key"
518
- ] = "Both API key and OpenAI config cannot be set for OpenAI models. Please set only one of them."
514
+ ] = "Both API key and AI Model API cannot be set for OpenAI models. Please set only one of them."
519
515
  error[
520
- "openai_config"
516
+ "ai_model_api"
521
517
  ] = "Both API key and OpenAI config cannot be set for OpenAI models. Please set only one of them."
522
518
  if self.model_type != self.ModelType.OPENAI:
523
519
  if not self.api_key:
524
520
  error["api_key"] = "The API key field must be set for non OpenAI models."
525
- if self.openai_config:
526
- error["openai_config"] = "OpenAI config cannot be set for non OpenAI models."
521
+ if self.ai_model_api:
522
+ error["ai_model_api"] = "AI Model API cannot be set for non OpenAI models."
527
523
  if error:
528
524
  raise ValidationError(error)
529
525
 
@@ -0,0 +1 @@
1
+ <!DOCTYPE html><html lang="en" class="__variable_f36179 __variable_702545"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/1d8a05b60287ae6c-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/77c207b095007c34-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/82ef96de0e8f4d8c-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/a6ecd16fa044d500-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/bd82c78e5b7b3fe9-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/c4250770ab8708b6-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/e098aaaecc9cfbb2-s.p.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/089de1d8526b96e9.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/3c34171b174cc381.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-5203c3872078c10c.js"/><script src="/_next/static/chunks/fd9d1056-2e6c8140e79afc3b.js" async=""></script><script src="/_next/static/chunks/7023-e8de2bded4df6539.js" async=""></script><script src="/_next/static/chunks/main-app-6d6ee3495efe03d4.js" async=""></script><meta name="robots" content="noindex"/><meta http-equiv="Content-Security-Policy" content="default-src &#x27;self&#x27; https://assets.khoj.dev; media-src * blob:; script-src &#x27;self&#x27; https://assets.khoj.dev https://app.chatwoot.com &#x27;unsafe-inline&#x27; &#x27;unsafe-eval&#x27;; connect-src &#x27;self&#x27; blob: https://ipapi.co/json ws://localhost:42110; style-src &#x27;self&#x27; https://assets.khoj.dev &#x27;unsafe-inline&#x27; https://fonts.googleapis.com; img-src &#x27;self&#x27; data: blob: https://*.khoj.dev https://*.googleusercontent.com https://*.google.com/ https://*.gstatic.com; font-src &#x27;self&#x27; https://assets.khoj.dev https://fonts.gstatic.com; child-src &#x27;self&#x27; https://app.chatwoot.com; object-src &#x27;none&#x27;;"/><title>404: This page could not be found.</title><title>Khoj AI - Home</title><meta name="description" content="Your Second Brain."/><link rel="manifest" href="/static/khoj.webmanifest" crossorigin="use-credentials"/><meta property="og:title" content="Khoj AI"/><meta property="og:description" content="Your Second Brain."/><meta property="og:url" content="https://app.khoj.dev/"/><meta property="og:site_name" content="Khoj AI"/><meta property="og:image" content="https://assets.khoj.dev/khoj_lantern_256x256.png"/><meta property="og:image:width" content="256"/><meta property="og:image:height" content="256"/><meta property="og:image" content="https://assets.khoj.dev/khoj_lantern_logomarktype_1200x630.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Khoj AI"/><meta name="twitter:description" content="Your Second Brain."/><meta name="twitter:image" content="https://assets.khoj.dev/khoj_lantern_256x256.png"/><meta name="twitter:image:width" content="256"/><meta name="twitter:image:height" content="256"/><meta name="twitter:image" content="https://assets.khoj.dev/khoj_lantern_logomarktype_1200x630.png"/><meta name="twitter:image:width" content="1200"/><meta name="twitter:image:height" content="630"/><link rel="icon" href="/static/assets/icons/khoj_lantern.ico"/><link rel="apple-touch-icon" href="/static/assets/icons/khoj_lantern_256x256.png"/><meta name="next-size-adjust"/><script src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js" noModule=""></script></head><body><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><script src="/_next/static/chunks/webpack-5203c3872078c10c.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/media/1d8a05b60287ae6c-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n2:HL[\"/_next/static/media/77c207b095007c34-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n3:HL[\"/_next/static/media/82ef96de0e8f4d8c-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n4:HL[\"/_next/static/media/a6ecd16fa044d500-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n5:HL[\"/_next/static/media/bd82c78e5b7b3fe9-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n6:HL[\"/_next/static/media/c4250770ab8708b6-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n7:HL[\"/_next/static/media/e098aaaecc9cfbb2-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n8:HL[\"/_next/static/css/089de1d8526b96e9.css\",\"style\"]\n9:HL[\"/_next/static/css/3c34171b174cc381.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"a:I[95751,[],\"\"]\nc:I[39275,[],\"\"]\nd:I[61343,[],\"\"]\n13:I[76130,[],\"\"]\ne:{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"}\nf:{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"}\n10:{\"display\":\"inline-block\"}\n11:{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0}\n14:[]\n"])</script><script>self.__next_f.push([1,"0:[\"$\",\"$La\",null,{\"buildId\":\"J7Vqh1vjCleYuVLeTaJL6\",\"assetPrefix\":\"\",\"urlParts\":[\"\",\"_not-found\",\"\"],\"initialTree\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{},[[\"$Lb\",[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null],null],null]},[null,[\"$\",\"$Lc\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"/_not-found\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$Ld\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/089de1d8526b96e9.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/3c34171b174cc381.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"__variable_f36179 __variable_702545\",\"children\":[[\"$\",\"meta\",null,{\"httpEquiv\":\"Content-Security-Policy\",\"content\":\"default-src 'self' https://assets.khoj.dev; media-src * blob:; script-src 'self' https://assets.khoj.dev https://app.chatwoot.com 'unsafe-inline' 'unsafe-eval'; connect-src 'self' blob: https://ipapi.co/json ws://localhost:42110; style-src 'self' https://assets.khoj.dev 'unsafe-inline' https://fonts.googleapis.com; img-src 'self' data: blob: https://*.khoj.dev https://*.googleusercontent.com https://*.google.com/ https://*.gstatic.com; font-src 'self' https://assets.khoj.dev https://fonts.gstatic.com; child-src 'self' https://app.chatwoot.com; object-src 'none';\"}],[\"$\",\"body\",null,{\"children\":[\"$\",\"$Lc\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$Ld\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$e\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$f\",\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":\"$10\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$11\",\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[]}]}]]}]],null],null],\"couldBeIntercepted\":false,\"initialHead\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],\"$L12\"],\"globalErrorComponent\":\"$13\",\"missingSlots\":\"$W14\"}]\n"])</script><script>self.__next_f.push([1,"12:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"2\",{\"children\":\"Khoj AI - Home\"}],[\"$\",\"meta\",\"3\",{\"name\":\"description\",\"content\":\"Your Second Brain.\"}],[\"$\",\"link\",\"4\",{\"rel\":\"manifest\",\"href\":\"/static/khoj.webmanifest\",\"crossOrigin\":\"use-credentials\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"Khoj AI\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Your Second Brain.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://app.khoj.dev/\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:site_name\",\"content\":\"Khoj AI\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image\",\"content\":\"https://assets.khoj.dev/khoj_lantern_256x256.png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"256\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"256\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image\",\"content\":\"https://assets.khoj.dev/khoj_lantern_logomarktype_1200x630.png\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"15\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:title\",\"content\":\"Khoj AI\"}],[\"$\",\"meta\",\"18\",{\"name\":\"twitter:description\",\"content\":\"Your Second Brain.\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:image\",\"content\":\"https://assets.khoj.dev/khoj_lantern_256x256.png\"}],[\"$\",\"meta\",\"20\",{\"name\":\"twitter:image:width\",\"content\":\"256\"}],[\"$\",\"meta\",\"21\",{\"name\":\"twitter:image:height\",\"content\":\"256\"}],[\"$\",\"meta\",\"22\",{\"name\":\"twitter:image\",\"content\":\"https://assets.khoj.dev/khoj_lantern_logomarktype_1200x630.png\"}],[\"$\",\"meta\",\"23\",{\"name\":\"twitter:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"24\",{\"name\":\"twitter:image:height\",\"content\":\"630\"}],[\"$\",\"link\",\"25\",{\"rel\":\"icon\",\"href\":\"/static/assets/icons/khoj_lantern.ico\"}],[\"$\",\"link\",\"26\",{\"rel\":\"apple-touch-icon\",\"href\":\"/static/assets/icons/khoj_lantern_256x256.png\"}],[\"$\",\"meta\",\"27\",{\"name\":\"next-size-adjust\"}]]\n"])</script><script>self.__next_f.push([1,"b:null\n"])</script></body></html>