khoj 1.22.4.dev1__py3-none-any.whl → 1.22.4.dev2__py3-none-any.whl
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.
- khoj/database/adapters/__init__.py +7 -2
- khoj/database/migrations/0061_alter_chatmodeloptions_model_type.py +26 -0
- khoj/database/models/__init__.py +1 -0
- khoj/interface/compiled/404/index.html +1 -1
- khoj/interface/compiled/_next/static/chunks/app/agents/{page-989a824c640bc532.js → page-462502107217be82.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/app/automations/{page-3f4b6ff0261e19b7.js → page-e30a75db8719f439.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/app/chat/{page-cc71b18feddf80d6.js → page-7f2dba47ad3634a8.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/app/factchecker/{page-828cf3c5b8e3af79.js → page-961b87fcd132b565.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/app/{page-2f423a763e2ee0c7.js → page-cfb9e53f10ccb676.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/app/search/{page-dcd385f03255ef36.js → page-0798bb43c2e368bf.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/app/settings/{page-ddcd51147d18c694.js → page-f518555f8e2fd794.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/app/share/chat/{page-a84001b4724b5463.js → page-2f29904467e1decc.js} +1 -1
- khoj/interface/compiled/_next/static/chunks/{webpack-9953d80989df2d20.js → webpack-ceee04420445f2b6.js} +1 -1
- khoj/interface/compiled/_next/static/css/592ca99f5122e75a.css +1 -0
- khoj/interface/compiled/_next/static/css/96f483a73d00113b.css +1 -0
- khoj/interface/compiled/agents/index.html +1 -1
- khoj/interface/compiled/agents/index.txt +2 -2
- khoj/interface/compiled/automations/index.html +1 -1
- khoj/interface/compiled/automations/index.txt +2 -2
- khoj/interface/compiled/chat/index.html +1 -1
- khoj/interface/compiled/chat/index.txt +2 -2
- khoj/interface/compiled/factchecker/index.html +1 -1
- khoj/interface/compiled/factchecker/index.txt +2 -2
- khoj/interface/compiled/index.html +1 -1
- khoj/interface/compiled/index.txt +2 -2
- khoj/interface/compiled/search/index.html +1 -1
- khoj/interface/compiled/search/index.txt +2 -2
- khoj/interface/compiled/settings/index.html +1 -1
- khoj/interface/compiled/settings/index.txt +2 -2
- khoj/interface/compiled/share/chat/index.html +1 -1
- khoj/interface/compiled/share/chat/index.txt +2 -2
- khoj/processor/conversation/google/__init__.py +0 -0
- khoj/processor/conversation/google/gemini_chat.py +221 -0
- khoj/processor/conversation/google/utils.py +93 -0
- khoj/processor/conversation/prompts.py +2 -2
- khoj/processor/tools/online_search.py +2 -1
- khoj/routers/api.py +13 -0
- khoj/routers/helpers.py +71 -10
- {khoj-1.22.4.dev1.dist-info → khoj-1.22.4.dev2.dist-info}/METADATA +2 -1
- {khoj-1.22.4.dev1.dist-info → khoj-1.22.4.dev2.dist-info}/RECORD +48 -44
- khoj/interface/compiled/_next/static/css/948a054a5563ee31.css +0 -1
- khoj/interface/compiled/_next/static/css/a3530ec58b0b660f.css +0 -1
- /khoj/interface/compiled/_next/static/{UipQ9aWDc6_TtoJFFbM7L → O-DuYyKomRxylfZPq2wbP}/_buildManifest.js +0 -0
- /khoj/interface/compiled/_next/static/{UipQ9aWDc6_TtoJFFbM7L → O-DuYyKomRxylfZPq2wbP}/_ssgManifest.js +0 -0
- /khoj/interface/compiled/_next/static/chunks/{8423-14fc72aec9104ce9.js → 8423-ce22327cf2d2edae.js} +0 -0
- /khoj/interface/compiled/_next/static/chunks/{9178-c153fc402c970365.js → 9178-3a0baad1c172d515.js} +0 -0
- /khoj/interface/compiled/_next/static/chunks/{9417-5d14ac74aaab2c66.js → 9417-2e54c6fd056982d8.js} +0 -0
- {khoj-1.22.4.dev1.dist-info → khoj-1.22.4.dev2.dist-info}/WHEEL +0 -0
- {khoj-1.22.4.dev1.dist-info → khoj-1.22.4.dev2.dist-info}/entry_points.txt +0 -0
- {khoj-1.22.4.dev1.dist-info → khoj-1.22.4.dev2.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
from threading import Thread
|
|
3
|
+
|
|
4
|
+
import google.generativeai as genai
|
|
5
|
+
from tenacity import (
|
|
6
|
+
before_sleep_log,
|
|
7
|
+
retry,
|
|
8
|
+
stop_after_attempt,
|
|
9
|
+
wait_exponential,
|
|
10
|
+
wait_random_exponential,
|
|
11
|
+
)
|
|
12
|
+
|
|
13
|
+
from khoj.processor.conversation.utils import ThreadedGenerator
|
|
14
|
+
|
|
15
|
+
logger = logging.getLogger(__name__)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
DEFAULT_MAX_TOKENS_GEMINI = 8192
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
@retry(
|
|
22
|
+
wait=wait_random_exponential(min=1, max=10),
|
|
23
|
+
stop=stop_after_attempt(2),
|
|
24
|
+
before_sleep=before_sleep_log(logger, logging.DEBUG),
|
|
25
|
+
reraise=True,
|
|
26
|
+
)
|
|
27
|
+
def gemini_completion_with_backoff(
|
|
28
|
+
messages, system_prompt, model_name, temperature=0, api_key=None, model_kwargs=None, max_tokens=None
|
|
29
|
+
) -> str:
|
|
30
|
+
genai.configure(api_key=api_key)
|
|
31
|
+
max_tokens = max_tokens or DEFAULT_MAX_TOKENS_GEMINI
|
|
32
|
+
model_kwargs = model_kwargs or dict()
|
|
33
|
+
model_kwargs["temperature"] = temperature
|
|
34
|
+
model_kwargs["max_output_tokens"] = max_tokens
|
|
35
|
+
model = genai.GenerativeModel(model_name, generation_config=model_kwargs, system_instruction=system_prompt)
|
|
36
|
+
|
|
37
|
+
formatted_messages = [{"role": message.role, "parts": [message.content]} for message in messages]
|
|
38
|
+
# all messages up to the last are considered to be part of the chat history
|
|
39
|
+
chat_session = model.start_chat(history=formatted_messages[0:-1])
|
|
40
|
+
# the last message is considered to be the current prompt
|
|
41
|
+
aggregated_response = chat_session.send_message(formatted_messages[-1]["parts"][0])
|
|
42
|
+
return aggregated_response.text
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
@retry(
|
|
46
|
+
wait=wait_exponential(multiplier=1, min=4, max=10),
|
|
47
|
+
stop=stop_after_attempt(2),
|
|
48
|
+
before_sleep=before_sleep_log(logger, logging.DEBUG),
|
|
49
|
+
reraise=True,
|
|
50
|
+
)
|
|
51
|
+
def gemini_chat_completion_with_backoff(
|
|
52
|
+
messages,
|
|
53
|
+
compiled_references,
|
|
54
|
+
online_results,
|
|
55
|
+
model_name,
|
|
56
|
+
temperature,
|
|
57
|
+
api_key,
|
|
58
|
+
system_prompt,
|
|
59
|
+
max_prompt_size=None,
|
|
60
|
+
completion_func=None,
|
|
61
|
+
model_kwargs=None,
|
|
62
|
+
):
|
|
63
|
+
g = ThreadedGenerator(compiled_references, online_results, completion_func=completion_func)
|
|
64
|
+
t = Thread(
|
|
65
|
+
target=gemini_llm_thread,
|
|
66
|
+
args=(g, messages, system_prompt, model_name, temperature, api_key, max_prompt_size, model_kwargs),
|
|
67
|
+
)
|
|
68
|
+
t.start()
|
|
69
|
+
return g
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
def gemini_llm_thread(
|
|
73
|
+
g, messages, system_prompt, model_name, temperature, api_key, max_prompt_size=None, model_kwargs=None
|
|
74
|
+
):
|
|
75
|
+
try:
|
|
76
|
+
genai.configure(api_key=api_key)
|
|
77
|
+
max_tokens = max_prompt_size or DEFAULT_MAX_TOKENS_GEMINI
|
|
78
|
+
model_kwargs = model_kwargs or dict()
|
|
79
|
+
model_kwargs["temperature"] = temperature
|
|
80
|
+
model_kwargs["max_output_tokens"] = max_tokens
|
|
81
|
+
model_kwargs["stop_sequences"] = ["Notes:\n["]
|
|
82
|
+
model = genai.GenerativeModel(model_name, generation_config=model_kwargs, system_instruction=system_prompt)
|
|
83
|
+
|
|
84
|
+
formatted_messages = [{"role": message.role, "parts": [message.content]} for message in messages]
|
|
85
|
+
# all messages up to the last are considered to be part of the chat history
|
|
86
|
+
chat_session = model.start_chat(history=formatted_messages[0:-1])
|
|
87
|
+
# the last message is considered to be the current prompt
|
|
88
|
+
for chunk in chat_session.send_message(formatted_messages[-1]["parts"][0], stream=True):
|
|
89
|
+
g.send(chunk.text)
|
|
90
|
+
except Exception as e:
|
|
91
|
+
logger.error(f"Error in gemini_llm_thread: {e}", exc_info=True)
|
|
92
|
+
finally:
|
|
93
|
+
g.close()
|
|
@@ -13,8 +13,8 @@ You were created by Khoj Inc. with the following capabilities:
|
|
|
13
13
|
- You *CAN* generate images, look-up real-time information from the internet, set reminders and answer questions based on the user's notes.
|
|
14
14
|
- Say "I don't know" or "I don't understand" if you don't know what to say or if you don't know the answer to a question.
|
|
15
15
|
- Make sure to use the specific LaTeX math mode delimiters for your response. LaTex math mode specific delimiters as following
|
|
16
|
-
- inline math mode :
|
|
17
|
-
- display math mode: insert linebreak after opening
|
|
16
|
+
- inline math mode : \\( and \\)
|
|
17
|
+
- display math mode: insert linebreak after opening $$, \\[ and before closing $$, \\]
|
|
18
18
|
- Ask crisp follow-up questions to get additional context, when the answer cannot be inferred from the provided notes or past conversations.
|
|
19
19
|
- Sometimes the user will share personal information that needs to be remembered, like an account ID or a residential address. These can be acknowledged with a simple "Got it" or "Okay".
|
|
20
20
|
- Provide inline references to quotes from the user's notes or any web pages you refer to in your responses in markdown format. For example, "The farmer had ten sheep. [1](https://example.com)". *ALWAYS CITE YOUR SOURCES AND PROVIDE REFERENCES*. Add them inline to directly support your claim.
|
|
@@ -7,6 +7,7 @@ from collections import defaultdict
|
|
|
7
7
|
from typing import Callable, Dict, List, Optional, Tuple, Union
|
|
8
8
|
|
|
9
9
|
import aiohttp
|
|
10
|
+
import requests
|
|
10
11
|
from bs4 import BeautifulSoup
|
|
11
12
|
from markdownify import markdownify
|
|
12
13
|
|
|
@@ -94,7 +95,7 @@ async def search_online(
|
|
|
94
95
|
|
|
95
96
|
# Read, extract relevant info from the retrieved web pages
|
|
96
97
|
if webpages:
|
|
97
|
-
webpage_links = [link for link, _, _ in webpages]
|
|
98
|
+
webpage_links = set([link for link, _, _ in webpages])
|
|
98
99
|
logger.info(f"Reading web pages at: {list(webpage_links)}")
|
|
99
100
|
if send_status_func:
|
|
100
101
|
webpage_links_str = "\n- " + "\n- ".join(list(webpage_links))
|
khoj/routers/api.py
CHANGED
|
@@ -31,6 +31,7 @@ from khoj.database.models import ChatModelOptions, KhojUser, SpeechToTextModelOp
|
|
|
31
31
|
from khoj.processor.conversation.anthropic.anthropic_chat import (
|
|
32
32
|
extract_questions_anthropic,
|
|
33
33
|
)
|
|
34
|
+
from khoj.processor.conversation.google.gemini_chat import extract_questions_gemini
|
|
34
35
|
from khoj.processor.conversation.offline.chat_model import extract_questions_offline
|
|
35
36
|
from khoj.processor.conversation.offline.whisper import transcribe_audio_offline
|
|
36
37
|
from khoj.processor.conversation.openai.gpt import extract_questions
|
|
@@ -419,6 +420,18 @@ async def extract_references_and_questions(
|
|
|
419
420
|
location_data=location_data,
|
|
420
421
|
user=user,
|
|
421
422
|
)
|
|
423
|
+
elif conversation_config.model_type == ChatModelOptions.ModelType.GOOGLE:
|
|
424
|
+
api_key = conversation_config.openai_config.api_key
|
|
425
|
+
chat_model = conversation_config.chat_model
|
|
426
|
+
inferred_queries = extract_questions_gemini(
|
|
427
|
+
defiltered_query,
|
|
428
|
+
model=chat_model,
|
|
429
|
+
api_key=api_key,
|
|
430
|
+
conversation_log=meta_log,
|
|
431
|
+
location_data=location_data,
|
|
432
|
+
max_tokens=conversation_config.max_prompt_size,
|
|
433
|
+
user=user,
|
|
434
|
+
)
|
|
422
435
|
|
|
423
436
|
# Collate search results as context for GPT
|
|
424
437
|
with timer("Searching knowledge base took", logger):
|
khoj/routers/helpers.py
CHANGED
|
@@ -76,6 +76,10 @@ from khoj.processor.conversation.anthropic.anthropic_chat import (
|
|
|
76
76
|
anthropic_send_message_to_model,
|
|
77
77
|
converse_anthropic,
|
|
78
78
|
)
|
|
79
|
+
from khoj.processor.conversation.google.gemini_chat import (
|
|
80
|
+
converse_gemini,
|
|
81
|
+
gemini_send_message_to_model,
|
|
82
|
+
)
|
|
79
83
|
from khoj.processor.conversation.offline.chat_model import (
|
|
80
84
|
converse_offline,
|
|
81
85
|
send_message_to_model_offline,
|
|
@@ -136,7 +140,7 @@ async def is_ready_to_chat(user: KhojUser):
|
|
|
136
140
|
await ConversationAdapters.aget_default_conversation_config()
|
|
137
141
|
)
|
|
138
142
|
|
|
139
|
-
if user_conversation_config and user_conversation_config.model_type ==
|
|
143
|
+
if user_conversation_config and user_conversation_config.model_type == ChatModelOptions.ModelType.OFFLINE:
|
|
140
144
|
chat_model = user_conversation_config.chat_model
|
|
141
145
|
max_tokens = user_conversation_config.max_prompt_size
|
|
142
146
|
if state.offline_chat_processor_config is None:
|
|
@@ -146,7 +150,14 @@ async def is_ready_to_chat(user: KhojUser):
|
|
|
146
150
|
|
|
147
151
|
if (
|
|
148
152
|
user_conversation_config
|
|
149
|
-
and (
|
|
153
|
+
and (
|
|
154
|
+
user_conversation_config.model_type
|
|
155
|
+
in [
|
|
156
|
+
ChatModelOptions.ModelType.OPENAI,
|
|
157
|
+
ChatModelOptions.ModelType.ANTHROPIC,
|
|
158
|
+
ChatModelOptions.ModelType.GOOGLE,
|
|
159
|
+
]
|
|
160
|
+
)
|
|
150
161
|
and user_conversation_config.openai_config
|
|
151
162
|
):
|
|
152
163
|
return True
|
|
@@ -607,9 +618,10 @@ async def send_message_to_model_wrapper(
|
|
|
607
618
|
else conversation_config.max_prompt_size
|
|
608
619
|
)
|
|
609
620
|
tokenizer = conversation_config.tokenizer
|
|
621
|
+
model_type = conversation_config.model_type
|
|
610
622
|
vision_available = conversation_config.vision_enabled
|
|
611
623
|
|
|
612
|
-
if
|
|
624
|
+
if model_type == ChatModelOptions.ModelType.OFFLINE:
|
|
613
625
|
if state.offline_chat_processor_config is None or state.offline_chat_processor_config.loaded_model is None:
|
|
614
626
|
state.offline_chat_processor_config = OfflineChatProcessorModel(chat_model, max_tokens)
|
|
615
627
|
|
|
@@ -633,7 +645,7 @@ async def send_message_to_model_wrapper(
|
|
|
633
645
|
response_type=response_type,
|
|
634
646
|
)
|
|
635
647
|
|
|
636
|
-
elif
|
|
648
|
+
elif model_type == ChatModelOptions.ModelType.OPENAI:
|
|
637
649
|
openai_chat_config = conversation_config.openai_config
|
|
638
650
|
api_key = openai_chat_config.api_key
|
|
639
651
|
api_base_url = openai_chat_config.api_base_url
|
|
@@ -657,7 +669,7 @@ async def send_message_to_model_wrapper(
|
|
|
657
669
|
)
|
|
658
670
|
|
|
659
671
|
return openai_response
|
|
660
|
-
elif
|
|
672
|
+
elif model_type == ChatModelOptions.ModelType.ANTHROPIC:
|
|
661
673
|
api_key = conversation_config.openai_config.api_key
|
|
662
674
|
truncated_messages = generate_chatml_messages_with_context(
|
|
663
675
|
user_message=message,
|
|
@@ -666,6 +678,7 @@ async def send_message_to_model_wrapper(
|
|
|
666
678
|
max_prompt_size=max_tokens,
|
|
667
679
|
tokenizer_name=tokenizer,
|
|
668
680
|
vision_enabled=vision_available,
|
|
681
|
+
uploaded_image_url=uploaded_image_url,
|
|
669
682
|
model_type=conversation_config.model_type,
|
|
670
683
|
)
|
|
671
684
|
|
|
@@ -674,6 +687,21 @@ async def send_message_to_model_wrapper(
|
|
|
674
687
|
api_key=api_key,
|
|
675
688
|
model=chat_model,
|
|
676
689
|
)
|
|
690
|
+
elif model_type == ChatModelOptions.ModelType.GOOGLE:
|
|
691
|
+
api_key = conversation_config.openai_config.api_key
|
|
692
|
+
truncated_messages = generate_chatml_messages_with_context(
|
|
693
|
+
user_message=message,
|
|
694
|
+
system_message=system_message,
|
|
695
|
+
model_name=chat_model,
|
|
696
|
+
max_prompt_size=max_tokens,
|
|
697
|
+
tokenizer_name=tokenizer,
|
|
698
|
+
vision_enabled=vision_available,
|
|
699
|
+
uploaded_image_url=uploaded_image_url,
|
|
700
|
+
)
|
|
701
|
+
|
|
702
|
+
return gemini_send_message_to_model(
|
|
703
|
+
messages=truncated_messages, api_key=api_key, model=chat_model, response_type=response_type
|
|
704
|
+
)
|
|
677
705
|
else:
|
|
678
706
|
raise HTTPException(status_code=500, detail="Invalid conversation config")
|
|
679
707
|
|
|
@@ -692,7 +720,7 @@ def send_message_to_model_wrapper_sync(
|
|
|
692
720
|
max_tokens = conversation_config.max_prompt_size
|
|
693
721
|
vision_available = conversation_config.vision_enabled
|
|
694
722
|
|
|
695
|
-
if conversation_config.model_type ==
|
|
723
|
+
if conversation_config.model_type == ChatModelOptions.ModelType.OFFLINE:
|
|
696
724
|
if state.offline_chat_processor_config is None or state.offline_chat_processor_config.loaded_model is None:
|
|
697
725
|
state.offline_chat_processor_config = OfflineChatProcessorModel(chat_model, max_tokens)
|
|
698
726
|
|
|
@@ -714,7 +742,7 @@ def send_message_to_model_wrapper_sync(
|
|
|
714
742
|
response_type=response_type,
|
|
715
743
|
)
|
|
716
744
|
|
|
717
|
-
elif conversation_config.model_type ==
|
|
745
|
+
elif conversation_config.model_type == ChatModelOptions.ModelType.OPENAI:
|
|
718
746
|
api_key = conversation_config.openai_config.api_key
|
|
719
747
|
truncated_messages = generate_chatml_messages_with_context(
|
|
720
748
|
user_message=message,
|
|
@@ -730,7 +758,7 @@ def send_message_to_model_wrapper_sync(
|
|
|
730
758
|
|
|
731
759
|
return openai_response
|
|
732
760
|
|
|
733
|
-
elif conversation_config.model_type ==
|
|
761
|
+
elif conversation_config.model_type == ChatModelOptions.ModelType.ANTHROPIC:
|
|
734
762
|
api_key = conversation_config.openai_config.api_key
|
|
735
763
|
truncated_messages = generate_chatml_messages_with_context(
|
|
736
764
|
user_message=message,
|
|
@@ -746,6 +774,22 @@ def send_message_to_model_wrapper_sync(
|
|
|
746
774
|
api_key=api_key,
|
|
747
775
|
model=chat_model,
|
|
748
776
|
)
|
|
777
|
+
|
|
778
|
+
elif conversation_config.model_type == ChatModelOptions.ModelType.GOOGLE:
|
|
779
|
+
api_key = conversation_config.openai_config.api_key
|
|
780
|
+
truncated_messages = generate_chatml_messages_with_context(
|
|
781
|
+
user_message=message,
|
|
782
|
+
system_message=system_message,
|
|
783
|
+
model_name=chat_model,
|
|
784
|
+
max_prompt_size=max_tokens,
|
|
785
|
+
vision_enabled=vision_available,
|
|
786
|
+
)
|
|
787
|
+
|
|
788
|
+
return gemini_send_message_to_model(
|
|
789
|
+
messages=truncated_messages,
|
|
790
|
+
api_key=api_key,
|
|
791
|
+
model=chat_model,
|
|
792
|
+
)
|
|
749
793
|
else:
|
|
750
794
|
raise HTTPException(status_code=500, detail="Invalid conversation config")
|
|
751
795
|
|
|
@@ -811,7 +855,7 @@ def generate_chat_response(
|
|
|
811
855
|
agent=agent,
|
|
812
856
|
)
|
|
813
857
|
|
|
814
|
-
elif conversation_config.model_type ==
|
|
858
|
+
elif conversation_config.model_type == ChatModelOptions.ModelType.OPENAI:
|
|
815
859
|
openai_chat_config = conversation_config.openai_config
|
|
816
860
|
api_key = openai_chat_config.api_key
|
|
817
861
|
chat_model = conversation_config.chat_model
|
|
@@ -834,7 +878,7 @@ def generate_chat_response(
|
|
|
834
878
|
vision_available=vision_available,
|
|
835
879
|
)
|
|
836
880
|
|
|
837
|
-
elif conversation_config.model_type ==
|
|
881
|
+
elif conversation_config.model_type == ChatModelOptions.ModelType.ANTHROPIC:
|
|
838
882
|
api_key = conversation_config.openai_config.api_key
|
|
839
883
|
chat_response = converse_anthropic(
|
|
840
884
|
compiled_references,
|
|
@@ -851,6 +895,23 @@ def generate_chat_response(
|
|
|
851
895
|
user_name=user_name,
|
|
852
896
|
agent=agent,
|
|
853
897
|
)
|
|
898
|
+
elif conversation_config.model_type == ChatModelOptions.ModelType.GOOGLE:
|
|
899
|
+
api_key = conversation_config.openai_config.api_key
|
|
900
|
+
chat_response = converse_gemini(
|
|
901
|
+
compiled_references,
|
|
902
|
+
q,
|
|
903
|
+
online_results,
|
|
904
|
+
meta_log,
|
|
905
|
+
model=conversation_config.chat_model,
|
|
906
|
+
api_key=api_key,
|
|
907
|
+
completion_func=partial_completion,
|
|
908
|
+
conversation_commands=conversation_commands,
|
|
909
|
+
max_prompt_size=conversation_config.max_prompt_size,
|
|
910
|
+
tokenizer_name=conversation_config.tokenizer,
|
|
911
|
+
location_data=location_data,
|
|
912
|
+
user_name=user_name,
|
|
913
|
+
agent=agent,
|
|
914
|
+
)
|
|
854
915
|
|
|
855
916
|
metadata.update({"chat_model": conversation_config.chat_model})
|
|
856
917
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: khoj
|
|
3
|
-
Version: 1.22.4.
|
|
3
|
+
Version: 1.22.4.dev2
|
|
4
4
|
Summary: Your Second Brain
|
|
5
5
|
Project-URL: Homepage, https://khoj.dev
|
|
6
6
|
Project-URL: Documentation, https://docs.khoj.dev
|
|
@@ -36,6 +36,7 @@ Requires-Dist: django==5.0.8
|
|
|
36
36
|
Requires-Dist: docx2txt==0.8
|
|
37
37
|
Requires-Dist: einops==0.8.0
|
|
38
38
|
Requires-Dist: fastapi>=0.110.0
|
|
39
|
+
Requires-Dist: google-generativeai==0.7.2
|
|
39
40
|
Requires-Dist: httpx==0.25.0
|
|
40
41
|
Requires-Dist: huggingface-hub>=0.22.2
|
|
41
42
|
Requires-Dist: itsdangerous==2.1.2
|
|
@@ -11,7 +11,7 @@ khoj/database/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
|
11
11
|
khoj/database/admin.py,sha256=bYF13peHgHpugd9bkEwYzO1r-r5l9JIDjCQbdmK3tT8,9166
|
|
12
12
|
khoj/database/apps.py,sha256=pM4tkX5Odw4YW_hLLKK8Nd5kqGddf1en0oMCea44RZw,153
|
|
13
13
|
khoj/database/tests.py,sha256=mrbGGRNg5jwbTJtWWa7zSKdDyeB4vmgZCRc2nk6VY-g,60
|
|
14
|
-
khoj/database/adapters/__init__.py,sha256=
|
|
14
|
+
khoj/database/adapters/__init__.py,sha256=hKVcyRYW6uaQhr9CtQmCH_hfX3EzF58lf7E_LhNT6H0,53890
|
|
15
15
|
khoj/database/management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
16
|
khoj/database/management/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
17
17
|
khoj/database/management/commands/change_generated_images_url.py,sha256=w52FwRlyOL4YRpp9O6jJUjSIuGLxVhaS2w1D7gtQgOE,2644
|
|
@@ -87,25 +87,26 @@ khoj/database/migrations/0057_remove_serverchatsettings_default_model_and_more.p
|
|
|
87
87
|
khoj/database/migrations/0058_alter_chatmodeloptions_chat_model.py,sha256=03Tk3A1b0z5zhJgwSo9YX0fYhsNSDek9ro5Hpv1WulA,484
|
|
88
88
|
khoj/database/migrations/0059_searchmodelconfig_bi_encoder_confidence_threshold.py,sha256=6Y5xt0XPiHKy9L9ve6C7xHVTITmnTmYf_IWmd4VXJ-0,435
|
|
89
89
|
khoj/database/migrations/0060_merge_20240905_1828.py,sha256=N6_R-kB3vzV8by1CreOBGTIzsXPrSWRCGPElsivv368,337
|
|
90
|
+
khoj/database/migrations/0061_alter_chatmodeloptions_model_type.py,sha256=WEln3Co2NLTrjeOXXFQdjI7aOjq04Rg6ekc9BQBKtlA,689
|
|
90
91
|
khoj/database/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
91
|
-
khoj/database/models/__init__.py,sha256=
|
|
92
|
+
khoj/database/models/__init__.py,sha256=W_P7iH3DfY5ohMpGUDhKeg6Mg2TgCDCs1gRvVdW_HeU,19331
|
|
92
93
|
khoj/interface/compiled/agents.svg,sha256=yFCRwIM-Qawa0C5ggAo3ekb-Q1ElmotBOKIGhtfIQqM,1722
|
|
93
94
|
khoj/interface/compiled/automation.svg,sha256=o7L2XYwJWRSMvl8h6TBv6Pt28RTRVMHqF04EPY0AFj0,1467
|
|
94
95
|
khoj/interface/compiled/chat.svg,sha256=l2JoYRRgk201adTTdvJ-buKUrc0WGfsudix5xEvtM3A,2424
|
|
95
96
|
khoj/interface/compiled/close.svg,sha256=hQ2iFLkNzHk0_iyTrSbwnWAeXYlgA-c2Eof2Iqh76n4,417
|
|
96
97
|
khoj/interface/compiled/copy-button-success.svg,sha256=byqWAYD3Pn9IOXRjOKudJ-TJbP2UESbQGvtLWazNGjY,829
|
|
97
98
|
khoj/interface/compiled/copy-button.svg,sha256=05bKM2eRxksfBlAPT7yMaoNJEk85bZCxQg67EVrPeHo,669
|
|
98
|
-
khoj/interface/compiled/index.html,sha256=
|
|
99
|
-
khoj/interface/compiled/index.txt,sha256=
|
|
99
|
+
khoj/interface/compiled/index.html,sha256=ABrJPyOloqUYBAOEme-UxKOuDD5eXTeori2hFfmYVbM,12063
|
|
100
|
+
khoj/interface/compiled/index.txt,sha256=LEghYnSYDi6IQ63Whn9QwO4jMSggj38cKu18xOK0Q5M,5573
|
|
100
101
|
khoj/interface/compiled/khoj.webmanifest,sha256=lsknYkvEdMbRTOUYKXPM_8krN2gamJmM4u3qj8u9lrU,1682
|
|
101
102
|
khoj/interface/compiled/logo.svg,sha256=_QCKVYM4WT2Qhcf7aVFImjq_s5CwjynGXYAOgI7yf8w,8059
|
|
102
103
|
khoj/interface/compiled/send.svg,sha256=VdavOWkVddcwcGcld6pdfmwfz7S91M-9O28cfeiKJkM,635
|
|
103
104
|
khoj/interface/compiled/share.svg,sha256=91lwo75PvMDrgocuZQab6EQ62CxRbubh9Bhw7CWMKbg,1221
|
|
104
105
|
khoj/interface/compiled/thumbs-down.svg,sha256=JGNl-DwoRmH2XFMPWwFFklmoYtKxaQbkLE3nuYKe8ZY,1019
|
|
105
106
|
khoj/interface/compiled/thumbs-up.svg,sha256=yS1wxTRtiztkN-6nZciLoYQUB_KTYNPV8xFRwH2TQFw,1036
|
|
106
|
-
khoj/interface/compiled/404/index.html,sha256=
|
|
107
|
-
khoj/interface/compiled/_next/static/
|
|
108
|
-
khoj/interface/compiled/_next/static/
|
|
107
|
+
khoj/interface/compiled/404/index.html,sha256=ozQ1UUtdud0ZQOQl9aOZw_oXn835Far8jKgMGDT7gks,11971
|
|
108
|
+
khoj/interface/compiled/_next/static/O-DuYyKomRxylfZPq2wbP/_buildManifest.js,sha256=6I9QUstNpJnhe3leR2Daw0pSXwzcbBscv6h2jmmPpms,224
|
|
109
|
+
khoj/interface/compiled/_next/static/O-DuYyKomRxylfZPq2wbP/_ssgManifest.js,sha256=Z49s4suAsf5y_GfnQSvm4qtq2ggxEbZPfEDTXjy6XgA,80
|
|
109
110
|
khoj/interface/compiled/_next/static/chunks/121-7024f479c297aef0.js,sha256=CcRT2AArGYTo7Orl5w69nrnMqdI_EmyEP_YqIj3FU1c,20952
|
|
110
111
|
khoj/interface/compiled/_next/static/chunks/1603-fb2d80ae73990df3.js,sha256=CCbOXifiixbhMf7lgTG96225tP1Pou72Wb0Zh6KC1Rs,71007
|
|
111
112
|
khoj/interface/compiled/_next/static/chunks/1906-1747a36c336df02c.js,sha256=PAEKTp-H8pKEZTPQiKpr2DiCXzjBG6zJfBgZosV2Vd8,1083851
|
|
@@ -117,11 +118,11 @@ khoj/interface/compiled/_next/static/chunks/6648-ff677e51f1b2bcf1.js,sha256=9bJl
|
|
|
117
118
|
khoj/interface/compiled/_next/static/chunks/7023-52c1be60135eb057.js,sha256=CI8R2DdZNEt3nACmiXUG1NnKhnal1ImzXglW-xDuxcI,123657
|
|
118
119
|
khoj/interface/compiled/_next/static/chunks/7071-b4711cecca6619a8.js,sha256=z-KSur3LbIFPg_90wN0EMhV0et9cJVfG_MR9POVmdCQ,7801
|
|
119
120
|
khoj/interface/compiled/_next/static/chunks/743-1a64254447cda71f.js,sha256=YH4bEkjmttcOGzAzXKaDCJ-C68jk2qy1cQJP2ljjoAA,100834
|
|
120
|
-
khoj/interface/compiled/_next/static/chunks/8423-
|
|
121
|
+
khoj/interface/compiled/_next/static/chunks/8423-ce22327cf2d2edae.js,sha256=q03PbOtkL3uoNxrhwlreR4DXAU35lRzmzm1TCJ_YvmY,11359
|
|
121
122
|
khoj/interface/compiled/_next/static/chunks/9001-3b27af6d5f21df44.js,sha256=Flth4g5eWRwc5YXKFgtTxW0dr13NMy7Bf3iw7bj38J0,34911
|
|
122
123
|
khoj/interface/compiled/_next/static/chunks/9162-0be016519a18568b.js,sha256=3MT-VTsB7Q-ATTO5X6Eu2-QNZfrZNaAr-R41iRsn3RY,149610
|
|
123
|
-
khoj/interface/compiled/_next/static/chunks/9178-
|
|
124
|
-
khoj/interface/compiled/_next/static/chunks/9417-
|
|
124
|
+
khoj/interface/compiled/_next/static/chunks/9178-3a0baad1c172d515.js,sha256=kDBTe9uINH3f7CDYoKN1rO-YRVon_pczC0Bgz3M0JJ8,17678
|
|
125
|
+
khoj/interface/compiled/_next/static/chunks/9417-2e54c6fd056982d8.js,sha256=FZ8xOLMdzrlVmwtcyuQSy8bBwd8_UZ1hH3FlL4DwXpA,17252
|
|
125
126
|
khoj/interface/compiled/_next/static/chunks/9984-e410179c6fac7cf1.js,sha256=FECyLY1WnBRP9TpLhPHxxmf4nSWwEKX4SLnb3W9UqT8,31305
|
|
126
127
|
khoj/interface/compiled/_next/static/chunks/d3ac728e-a9e3522eef9b6b28.js,sha256=wK1TsLdl56xtbQG6HMRDpylzTOYXQaAnnn2xobFnX40,267216
|
|
127
128
|
khoj/interface/compiled/_next/static/chunks/fd9d1056-2b978342deb60015.js,sha256=2lquiZSfbI-gX4j4TW4JSMLL_D5ShqwydgWpFyXrTy8,172834
|
|
@@ -129,24 +130,24 @@ khoj/interface/compiled/_next/static/chunks/framework-8e0e0f4a6b83a956.js,sha256
|
|
|
129
130
|
khoj/interface/compiled/_next/static/chunks/main-175c164f5e0f026c.js,sha256=hlUnjERudON4V4kUKprrFz1e9JRtSp4A9i7vnM-1bzA,110324
|
|
130
131
|
khoj/interface/compiled/_next/static/chunks/main-app-6d6ee3495efe03d4.js,sha256=i52E7sWOcSq1G8eYZL3mtTxbUbwRNxcAbSWQ6uWpMsY,475
|
|
131
132
|
khoj/interface/compiled/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js,sha256=6QPOwdWeAVe8x-SsiDrm-Ga6u2DkqgG5SFqglrlyIgA,91381
|
|
132
|
-
khoj/interface/compiled/_next/static/chunks/webpack-
|
|
133
|
+
khoj/interface/compiled/_next/static/chunks/webpack-ceee04420445f2b6.js,sha256=2tFmYdin2yy3VtWSRSMYxLouOzsWtt3II4LeRYHOUgc,3725
|
|
133
134
|
khoj/interface/compiled/_next/static/chunks/app/layout-f3e40d346da53112.js,sha256=nekGSUVbvB81OfqGgJa2UoDmbxPhNwFwtc4o11O_1jI,442
|
|
134
|
-
khoj/interface/compiled/_next/static/chunks/app/page-
|
|
135
|
+
khoj/interface/compiled/_next/static/chunks/app/page-cfb9e53f10ccb676.js,sha256=WYffzpmKaPfANeZuBrdE65Il5tsCdkw0OLpMYSE0APk,28686
|
|
135
136
|
khoj/interface/compiled/_next/static/chunks/app/_not-found/page-07ff4ab42b07845e.js,sha256=3mCUnxfMxyK44eqk21TVBrC6u--WSbvx31fTmQuOvMQ,1755
|
|
136
137
|
khoj/interface/compiled/_next/static/chunks/app/agents/layout-e71c8e913cccf792.js,sha256=VyIMrkvntFObMzXF-elNtngJ8mBdjg8XrOGfboJ2f_4,372
|
|
137
|
-
khoj/interface/compiled/_next/static/chunks/app/agents/page-
|
|
138
|
+
khoj/interface/compiled/_next/static/chunks/app/agents/page-462502107217be82.js,sha256=wAcrXsSkX9mMP0SPspHWLOBr0QW1XAl0w2PHXdRaaKc,18092
|
|
138
139
|
khoj/interface/compiled/_next/static/chunks/app/automations/layout-27c28e923c9b1ff0.js,sha256=d2vJ_lVB0pfeFXNUPzHAe1ca5NzdNowHPh___SPqugM,5143
|
|
139
|
-
khoj/interface/compiled/_next/static/chunks/app/automations/page-
|
|
140
|
+
khoj/interface/compiled/_next/static/chunks/app/automations/page-e30a75db8719f439.js,sha256=p1xSxJg0B5wepzyiDzz3bvNDR_h8fVwgQjsaAEIe0fI,34472
|
|
140
141
|
khoj/interface/compiled/_next/static/chunks/app/chat/layout-8102549127db3067.js,sha256=YIoA3fqOBt8nKWw5iQAwA_avg2t1Q5Afn65IA5PBOz4,374
|
|
141
|
-
khoj/interface/compiled/_next/static/chunks/app/chat/page-
|
|
142
|
+
khoj/interface/compiled/_next/static/chunks/app/chat/page-7f2dba47ad3634a8.js,sha256=IGxBKSr-zsvwTsvLE0zhUGhOfc9Frwx3Ggl8D9R27ZY,10741
|
|
142
143
|
khoj/interface/compiled/_next/static/chunks/app/factchecker/layout-7b30c541c05fb904.js,sha256=yub2AuBKHKSCqrHRFnkZv9JXLmLJLOB99iiaD3DtZQM,170
|
|
143
|
-
khoj/interface/compiled/_next/static/chunks/app/factchecker/page-
|
|
144
|
+
khoj/interface/compiled/_next/static/chunks/app/factchecker/page-961b87fcd132b565.js,sha256=TYI0DgcrnZmBpPYhK-uW95XOw6Ye_GFxDDHS6-CdCU4,14028
|
|
144
145
|
khoj/interface/compiled/_next/static/chunks/app/search/layout-3720f1362310bebb.js,sha256=Smpa4MQaw5ItashtspsDKsOvRa6sOXH_lv4jIfWIbNI,170
|
|
145
|
-
khoj/interface/compiled/_next/static/chunks/app/search/page-
|
|
146
|
+
khoj/interface/compiled/_next/static/chunks/app/search/page-0798bb43c2e368bf.js,sha256=YJHZcB9S-WKkQ0ewW7xTpsQJC7Vv4C1En3_9saNBvXQ,6954
|
|
146
147
|
khoj/interface/compiled/_next/static/chunks/app/settings/layout-6f9314b0d7a26046.js,sha256=ikl3vCXnp81sa24uPSuRbgvgDtpHGWfhxEs4OAOYXIM,5347
|
|
147
|
-
khoj/interface/compiled/_next/static/chunks/app/settings/page-
|
|
148
|
+
khoj/interface/compiled/_next/static/chunks/app/settings/page-f518555f8e2fd794.js,sha256=G9_C9EuxpJo7-blPJlml6nUpjdEiiAq5K_gkFzkljeE,31895
|
|
148
149
|
khoj/interface/compiled/_next/static/chunks/app/share/chat/layout-39f03f9e32399f0f.js,sha256=ClS8wrj6HOsRL4VX8DMiqX_MlQDsi_3CA-AQt4m7vuA,373
|
|
149
|
-
khoj/interface/compiled/_next/static/chunks/app/share/chat/page-
|
|
150
|
+
khoj/interface/compiled/_next/static/chunks/app/share/chat/page-2f29904467e1decc.js,sha256=6LVcv6ECT7Cf1uPKu7yFXukZZR97fP7ZnRF4SUGDffI,10340
|
|
150
151
|
khoj/interface/compiled/_next/static/chunks/pages/_app-f870474a17b7f2fd.js,sha256=eqdFPAN_XFyMUzZ9qwFk-_rhMWZrU7lgNVt1foVUANo,286
|
|
151
152
|
khoj/interface/compiled/_next/static/chunks/pages/_error-c66a4e8afc46f17b.js,sha256=vjERjtMAbVk-19LyPf1Jc-H6TMcrSznSz6brzNqbqf8,253
|
|
152
153
|
khoj/interface/compiled/_next/static/css/1538cedb321e3a97.css,sha256=-qLZhPN-wA3kcrVODVTaG1sN0pmuzRCqNH12gs5_qYc,2569
|
|
@@ -154,9 +155,9 @@ khoj/interface/compiled/_next/static/css/2272c73fc7a3b571.css,sha256=1fHKFd8zLOH
|
|
|
154
155
|
khoj/interface/compiled/_next/static/css/3e49e5ee49c6bda1.css,sha256=wtTUdySBdCNhZCgvRFkiKTm5_1LADYmHNHYoQhxir-w,1881442
|
|
155
156
|
khoj/interface/compiled/_next/static/css/4cae6c0e5c72fb2d.css,sha256=3CjTMmtMrm_MYt1ywtUh2MHEjSLSl356SQLl4hdBuYw,534
|
|
156
157
|
khoj/interface/compiled/_next/static/css/553f9cdcc7a2bcd6.css,sha256=JpjOOwmqP9Hba-w_8Lx9jWW0ZD0kD3wR0HvdPGDyUPo,2134
|
|
158
|
+
khoj/interface/compiled/_next/static/css/592ca99f5122e75a.css,sha256=BSqRkeb9vBh0phx5GkAlZirTFZintbyggGaUkuOBfaU,914
|
|
157
159
|
khoj/interface/compiled/_next/static/css/5a400c87d295e68a.css,sha256=ojDUPJ9fJpEo9DzTAsEa-k1cg7Bef-nSTfpszMiqknQ,17711
|
|
158
|
-
khoj/interface/compiled/_next/static/css/
|
|
159
|
-
khoj/interface/compiled/_next/static/css/a3530ec58b0b660f.css,sha256=2fpX695nzJ6sNaNZbX_3Z0o-IA5kRlyN0ByIIXRgmtg,1570
|
|
160
|
+
khoj/interface/compiled/_next/static/css/96f483a73d00113b.css,sha256=oVjVP-4xTwC0Tl7wxY64lc1tOH6FBE6Pi3WODdz9n_E,8678
|
|
160
161
|
khoj/interface/compiled/_next/static/css/c808691c459e3887.css,sha256=Xj1SLFCKntSIqZSDCMg2MnzZowIiKFtqPT3KxrT4i94,1857
|
|
161
162
|
khoj/interface/compiled/_next/static/media/0e790e04fd40ad16-s.p.woff2,sha256=41ewITd0G1ZAoB62BTHMW58a1q8Hl6vSbTQkkHP7EbI,39372
|
|
162
163
|
khoj/interface/compiled/_next/static/media/4221e1667cd19c7d-s.woff2,sha256=_Y3g0keA8P6nZnFfm_VO5o2Sne1iST3v9xz4fBo3fwM,75532
|
|
@@ -230,8 +231,8 @@ khoj/interface/compiled/_next/static/media/flags.3afdda2f.webp,sha256=M2AW_HLpBn
|
|
|
230
231
|
khoj/interface/compiled/_next/static/media/flags@2x.5fbe9fc1.webp,sha256=BBeRPBZkxY3-aKkMnYv5TSkxmbeMbyUH4VRIPfrWg1E,137406
|
|
231
232
|
khoj/interface/compiled/_next/static/media/globe.98e105ca.webp,sha256=g3ofb8-W9GM75zIhlvQhaS8I2py9TtrovOKR3_7Jf04,514
|
|
232
233
|
khoj/interface/compiled/_next/static/media/globe@2x.974df6f8.webp,sha256=I_N7Yke3IOoS-0CC6XD8o0IUWG8PdPbrHmf6lpgWlZY,1380
|
|
233
|
-
khoj/interface/compiled/agents/index.html,sha256=
|
|
234
|
-
khoj/interface/compiled/agents/index.txt,sha256=
|
|
234
|
+
khoj/interface/compiled/agents/index.html,sha256=ihJR7Jl3XFOao7hM3KA3xVD-2j21a2vAa4aqldJnC2I,12723
|
|
235
|
+
khoj/interface/compiled/agents/index.txt,sha256=Xz1h2cM4rNWdiC-LpjDqok0rFjeXrxuP2ttmJMKOAfw,6087
|
|
235
236
|
khoj/interface/compiled/assets/icons/khoj_lantern.ico,sha256=eggu-B_v3z1R53EjOFhIqqPnICBGdoaw1xnc0NrzHck,174144
|
|
236
237
|
khoj/interface/compiled/assets/icons/khoj_lantern_128x128.png,sha256=aTxivDb3CYyThkVZWz8A19xl_dNut5DbkXhODWF3A9Q,5640
|
|
237
238
|
khoj/interface/compiled/assets/icons/khoj_lantern_256x256.png,sha256=xPCMLHiaL7lYOdQLZrKwWE-Qjn5ZaysSZB0ScYv4UZU,12312
|
|
@@ -242,18 +243,18 @@ khoj/interface/compiled/assets/samples/desktop-remember-plan-sample.png,sha256=i
|
|
|
242
243
|
khoj/interface/compiled/assets/samples/phone-browse-draw-sample.png,sha256=Dd4fPwtFl6BWqnHjeb1mCK_ND0hhHsWtx8sNE7EiMuE,406179
|
|
243
244
|
khoj/interface/compiled/assets/samples/phone-plain-chat-sample.png,sha256=DEDaNRCkfEWUeh3kYZWIQDTVK1a6KKnYdwj5ZWisN_Q,82985
|
|
244
245
|
khoj/interface/compiled/assets/samples/phone-remember-plan-sample.png,sha256=Ma3blirRmq3X4oYSsDbbT7MDn29rymDrjwmUfA9BMuM,236285
|
|
245
|
-
khoj/interface/compiled/automations/index.html,sha256=
|
|
246
|
-
khoj/interface/compiled/automations/index.txt,sha256=
|
|
247
|
-
khoj/interface/compiled/chat/index.html,sha256=
|
|
248
|
-
khoj/interface/compiled/chat/index.txt,sha256=
|
|
249
|
-
khoj/interface/compiled/factchecker/index.html,sha256=
|
|
250
|
-
khoj/interface/compiled/factchecker/index.txt,sha256=
|
|
251
|
-
khoj/interface/compiled/search/index.html,sha256=
|
|
252
|
-
khoj/interface/compiled/search/index.txt,sha256=
|
|
253
|
-
khoj/interface/compiled/settings/index.html,sha256=
|
|
254
|
-
khoj/interface/compiled/settings/index.txt,sha256=
|
|
255
|
-
khoj/interface/compiled/share/chat/index.html,sha256=
|
|
256
|
-
khoj/interface/compiled/share/chat/index.txt,sha256=
|
|
246
|
+
khoj/interface/compiled/automations/index.html,sha256=69o8ltYIV8HT4RMSZ0qaIcX0_EVs_f5qhI_axhafTG0,30832
|
|
247
|
+
khoj/interface/compiled/automations/index.txt,sha256=CHGwtN67O_hdap-jUHiuJPgKKdA8OmobDSH8yyahRvU,5592
|
|
248
|
+
khoj/interface/compiled/chat/index.html,sha256=clguUKPUAJEQQbjOk_v1D6iX_JMsDeRrrucZuT5hakQ,13433
|
|
249
|
+
khoj/interface/compiled/chat/index.txt,sha256=US617oZtkiKomXyCamDn1UDbGR1EnVE9_ZFxJ2-dTbM,6358
|
|
250
|
+
khoj/interface/compiled/factchecker/index.html,sha256=Sp74zf4ph8A41iYkrSOb1YYySIIB2-DoBGsutg6Ac78,29990
|
|
251
|
+
khoj/interface/compiled/factchecker/index.txt,sha256=N-hUcu7GYt0EiQWAvt8qYB8-SsGxR8xDVvIeLkAT49w,5793
|
|
252
|
+
khoj/interface/compiled/search/index.html,sha256=TREEOVNpOdFKB4aPw3uRYPovKWWDFANZABO528ICYmQ,30178
|
|
253
|
+
khoj/interface/compiled/search/index.txt,sha256=Ky33EkIGV98Kx5ILxFaQdA9x_PGzxP0rUYaoKMF6LxQ,5261
|
|
254
|
+
khoj/interface/compiled/settings/index.html,sha256=799v-OQLd6uROc7_p1vfTX-cB3v5lJDYAPfh_ofm8lY,12851
|
|
255
|
+
khoj/interface/compiled/settings/index.txt,sha256=lNA9xxzK5yr28wuBW_mrdyj4GzSqkT5t-qNZ-krUVx0,6085
|
|
256
|
+
khoj/interface/compiled/share/chat/index.html,sha256=yc15Fi-WgxcyFvzVCdHgl_Yz5pSZnKfO5HO8YLyoK18,15071
|
|
257
|
+
khoj/interface/compiled/share/chat/index.txt,sha256=Ekd09SjOVLb8QiUrNhuQVgKSxniJH9wc9pL-uGjkMwk,7309
|
|
257
258
|
khoj/interface/email/feedback.html,sha256=xksuPFamx4hGWyTTxZKRgX_eiYQQEuv-eK9Xmkt-nwU,1216
|
|
258
259
|
khoj/interface/email/magic_link.html,sha256=jXY_2hD3o15Ns5UDzbjLT8FHBnZiS7jo38YkYXIS-4w,947
|
|
259
260
|
khoj/interface/email/task.html,sha256=yXywzC-5P4nXbhqvgCmwcCpTRbD5eWuDXMpgYSotztM,3311
|
|
@@ -304,11 +305,14 @@ khoj/processor/content/pdf/pdf_to_entries.py,sha256=OE90osFchohih3RYvDmZepbtzWoG
|
|
|
304
305
|
khoj/processor/content/plaintext/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
305
306
|
khoj/processor/content/plaintext/plaintext_to_entries.py,sha256=97i7Cm0DTY7jW4iqKOT_oVc2ooa_XhQ8iImsljp1Kek,4994
|
|
306
307
|
khoj/processor/conversation/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
307
|
-
khoj/processor/conversation/prompts.py,sha256=
|
|
308
|
+
khoj/processor/conversation/prompts.py,sha256=IuFJCpTWraCrHT9dlzkJBOXphZ5wJbk_dgIE61Y5J1U,33671
|
|
308
309
|
khoj/processor/conversation/utils.py,sha256=EqIiUxXA0TlN5sHe9V-Ld6aIfsiiHKrjM6rJhxV82RY,11438
|
|
309
310
|
khoj/processor/conversation/anthropic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
310
311
|
khoj/processor/conversation/anthropic/anthropic_chat.py,sha256=3EVZQmeucWSoBqRjwuCRJK-q2UYmvLvVsSZs_HCmg_Y,8183
|
|
311
312
|
khoj/processor/conversation/anthropic/utils.py,sha256=GHCz-xll_DBipqSc5e5qdVhLQiKX5Kso3KQRf1BXbVA,3456
|
|
313
|
+
khoj/processor/conversation/google/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
314
|
+
khoj/processor/conversation/google/gemini_chat.py,sha256=lCsHaFvpWNRwAGhhzuPRHldf_gln8miH--x_znTON-8,8219
|
|
315
|
+
khoj/processor/conversation/google/utils.py,sha256=lFb4290OinIZdMINNKC5y7TA1_87Ts2Hh7OnvGV2qy0,3323
|
|
312
316
|
khoj/processor/conversation/offline/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
313
317
|
khoj/processor/conversation/offline/chat_model.py,sha256=RjTwpndueYjsWYDWs39bSs-2mQbFvNLl5dcsvK9hqVU,9770
|
|
314
318
|
khoj/processor/conversation/offline/utils.py,sha256=51McImxl6u1qgRYvMt7uzsgLGSLq5SMFy74ymlNjIcc,3033
|
|
@@ -320,9 +324,9 @@ khoj/processor/conversation/openai/whisper.py,sha256=zoEeK1LNCg_tzP4xzYi5vRPzNPG
|
|
|
320
324
|
khoj/processor/speech/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
321
325
|
khoj/processor/speech/text_to_speech.py,sha256=Q7sapi5Hv6woXOumtrGqR0t6izZrFBkWXFOGrHM6dJ4,1929
|
|
322
326
|
khoj/processor/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
323
|
-
khoj/processor/tools/online_search.py,sha256=
|
|
327
|
+
khoj/processor/tools/online_search.py,sha256=V39CemVrSqmgmnQJq2weoSAsMp7tJ7lL1S5EtQXsLPk,10061
|
|
324
328
|
khoj/routers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
325
|
-
khoj/routers/api.py,sha256=
|
|
329
|
+
khoj/routers/api.py,sha256=Wxbb7ihtUXDbnDw7hUqem0mZ0DPQhez4mzPDRN-cNOA,26459
|
|
326
330
|
khoj/routers/api_agents.py,sha256=ks8QzjmZiio6j1QGi6xFtDmVxd9lvC6LPB-WcDPnF8o,1525
|
|
327
331
|
khoj/routers/api_chat.py,sha256=4YWsHqMR6ITwtR5YbWHhl8sPcXIJYM1S-zJCT3nxeig,58349
|
|
328
332
|
khoj/routers/api_content.py,sha256=E-Y6G2V14EdxN5rnisQKVINuBuItSZfLiiXpC9E9yTA,17387
|
|
@@ -330,7 +334,7 @@ khoj/routers/api_model.py,sha256=5m7JWwgd9jILiLivRu7NEyY2E-tUkqoEkGg6j6uM1g0,464
|
|
|
330
334
|
khoj/routers/api_phone.py,sha256=p9yfc4WeMHDC0hg3aQk60a2VBy8rZPdEnz9wdJ7DzkU,2208
|
|
331
335
|
khoj/routers/auth.py,sha256=pCOLSRihJWcn097DRPxLjPdlejsjHJFRs9jHIzLujZU,6247
|
|
332
336
|
khoj/routers/email.py,sha256=jA4jDTrYHUpY7mFHL4himeRlTBLRQmQKHqC91Dw1Zu0,3730
|
|
333
|
-
khoj/routers/helpers.py,sha256=
|
|
337
|
+
khoj/routers/helpers.py,sha256=xIDE6mf6pgzXABGpg7jPdPDVpQc8IZJ6phFt4pv1cI0,69777
|
|
334
338
|
khoj/routers/notion.py,sha256=Lp67xP9rVgpAF9BQoGTjZFcVdF1HYtvPP0kjq6uurKU,2802
|
|
335
339
|
khoj/routers/storage.py,sha256=tJrwhFRVWv0MHv7V7huMc1Diwm-putZSwnZXJ3tqT_c,2338
|
|
336
340
|
khoj/routers/subscription.py,sha256=qEyV7m7mrY6MGtaij8W3v61tpzX2a7ydm2B-E8h_R-M,4285
|
|
@@ -355,8 +359,8 @@ khoj/utils/models.py,sha256=Q5tcC9-z25sCiub048fLnvZ6_IIO1bcPNxt5payekk0,2009
|
|
|
355
359
|
khoj/utils/rawconfig.py,sha256=BKicp6kEBax7h76YRYgyFAUpfWHAI5m9ZJ2HVqyh45Y,3983
|
|
356
360
|
khoj/utils/state.py,sha256=x4GTewP1YhOA6c_32N4wOjnV-3AA3xG_qbY1-wC2Uxc,1559
|
|
357
361
|
khoj/utils/yaml.py,sha256=H0mfw0ZvBFUvFmCQn8pWkfxdmIebsrSykza7D8Wv6wQ,1430
|
|
358
|
-
khoj-1.22.4.
|
|
359
|
-
khoj-1.22.4.
|
|
360
|
-
khoj-1.22.4.
|
|
361
|
-
khoj-1.22.4.
|
|
362
|
-
khoj-1.22.4.
|
|
362
|
+
khoj-1.22.4.dev2.dist-info/METADATA,sha256=2oGA46Mx6aOFI-1N4eG8e24X-dN8zL8U2K9JY-F-ZU4,6768
|
|
363
|
+
khoj-1.22.4.dev2.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
|
|
364
|
+
khoj-1.22.4.dev2.dist-info/entry_points.txt,sha256=KBIcez5N_jCgq_ER4Uxf-e1lxTBMTE_BBjMwwfeZyAg,39
|
|
365
|
+
khoj-1.22.4.dev2.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
|
|
366
|
+
khoj-1.22.4.dev2.dist-info/RECORD,,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
div.agents_titleBar__FzYbY{padding:16px 0;text-align:left}.agents_agentPersonality__o0Ysz p{white-space:inherit;overflow:hidden;height:77px;line-height:1.5}div.agents_agentPersonality__o0Ysz{text-align:left;grid-column:span 3;overflow:hidden}div.agents_pageLayout__gR3S3{max-width:60vw;margin:auto auto 2rem}div.agents_sidePanel__wGVGc{position:fixed;height:100%;z-index:1}button.agents_infoButton__NqI7E{border:none;background-color:transparent!important;text-align:left;font-family:inherit;font-size:medium}div.agents_agentList__XVx4A{display:grid;gap:20px;padding-top:30px;margin-right:auto;grid-auto-flow:row;grid-template-columns:1fr 1fr;margin-left:auto}@media only screen and (max-width:768px){div.agents_agentList__XVx4A{width:100%;padding:0;margin-right:auto;margin-left:auto;grid-template-columns:1fr}div.agents_pageLayout__gR3S3{max-width:90vw}div.agents_sidePanel__wGVGc{position:relative;height:100%}}div.sidePanel_session__R9wgH{padding:.5rem;margin-bottom:.25rem;border-radius:.5rem;cursor:pointer;max-width:14rem;font-size:medium;display:grid;grid-template-columns:minmax(auto,400px) 1fr;gap:0}div.sidePanel_compressed__YBPtM{grid-template-columns:minmax(12rem,100%) 1fr 1fr}div.sidePanel_sessionHover__iwfo8,div.sidePanel_session__R9wgH:hover{background-color:hsla(var(--popover))}div.sidePanel_session__R9wgH:hover{color:hsla(var(--popover-foreground))}div.sidePanel_session__R9wgH a{text-decoration:none}button.sidePanel_button__ihOfG{border:none;outline:none;background-color:transparent;cursor:pointer;color:var(--main-text-color);width:24px}button.sidePanel_showMoreButton__dt9Zw{border-radius:.5rem;padding:8px}div.sidePanel_panel__VZ8ye{display:flex;flex-direction:column;padding:1rem;overflow-y:auto;max-width:auto;transition:background-color .5s}div.sidePanel_expanded__ZjTHo{gap:1rem;background-color:hsla(var(--muted));height:100%}div.sidePanel_collapsed__OjVmG{display:grid;grid-template-columns:1fr;height:-moz-fit-content;height:fit-content;padding:1rem 0 0 1rem}p.sidePanel_session__R9wgH{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:left;font-size:small}div.sidePanel_header__d5cGA{display:grid;grid-template-columns:1fr auto}div.sidePanel_profile__x0w58{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;margin-top:auto}div.sidePanel_panelWrapper__k_lal{display:grid;grid-template-rows:1fr auto auto;height:100%}div.sidePanel_modalSessionsList__nKe2n{position:fixed;top:0;left:0;width:100%;height:100%;background-color:hsla(var(--frosted-background-color));z-index:1;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}div.sidePanel_modalSessionsList__nKe2n div.sidePanel_content__Wq20_{max-width:80%;max-height:80%;background-color:hsla(var(--frosted-background-color));overflow:auto;padding:20px;border-radius:10px}div.sidePanel_modalSessionsList__nKe2n div.sidePanel_session__R9wgH{max-width:100%;text-overflow:ellipsis}@media screen and (max-width:768px){div.sidePanel_panel__VZ8ye{padding:.25rem;width:100%}div.sidePanel_expanded__ZjTHo{z-index:1}div.sidePanel_singleReference__r9z1n{padding:4px}div.sidePanel_panelWrapper__k_lal{width:100%;padding:0 1rem}div.sidePanel_session__R9wgH.sidePanel_compressed__YBPtM{max-width:100%;display:grid;grid-template-columns:70vw auto;justify-content:space-between}div.sidePanel_session__R9wgH{max-width:100%;grid-template-columns:minmax(auto,70vw) 1fr}}menu.navMenu_menu__fqlFF a{text-decoration:none;font-size:medium;font-weight:400;padding:0 4px;border-radius:4px;display:flex;justify-self:center;margin:0;align-items:center;gap:4px}a.navMenu_selected__A__aP{background-color:hsl(var(--accent))}div.navMenu_titleBar__HJoio{display:flex;justify-content:space-between;align-content:space-evenly;align-items:start}div.navMenu_titleBar__HJoio menu{padding:0;margin:0;border-radius:.5rem;display:grid;grid-auto-flow:column;gap:32px}div.navMenu_settingsMenuProfile__3npiK img{border-radius:50%;width:32px;height:32px;margin:0}div.navMenu_settingsMenu__X2i2U{padding:0 4px;border-radius:4px;display:flex;justify-self:center;margin:0;align-items:center}div.navMenu_settingsMenuOptions__KWnLv{display:block;grid-auto-flow:row;position:absolute;background-color:var(--background-color);box-shadow:0 8px 16px 0 rgba(0,0,0,.2);top:64px;text-align:left;padding:8px;border-radius:8px}@media screen and (max-width:600px){menu.navMenu_menu__fqlFF span{display:none}div.navMenu_settingsMenuOptions__KWnLv{right:4px}div.navMenu_titleBar__HJoio{padding:8px}}div.search_searchLayout__fP3m0{display:grid;grid-template-columns:1fr;gap:1rem;height:100vh}div.search_sidePanel__myfc9{position:fixed;height:100%;z-index:1}@media screen and (max-width:768px){div.search_searchLayout__fP3m0{gap:0}div.search_sidePanel__myfc9{position:relative;height:100%}}div.chatHistory_chatHistory__CoaVT{display:flex;flex-direction:column;height:100%}div.chatHistory_chatLayout__ABli_{height:80vh;overflow-y:auto;margin:0 auto}div.chatHistory_agentIndicator__wOU1f a{display:flex;text-align:center;align-content:center;align-items:center}div.chatHistory_trainOfThought__mMWSR{border:1px solid var(--border-color);border-radius:16px;padding:8px 16px;margin:12px}div.chatMessage_chatMessageContainer__sAivf{display:flex;flex-direction:column;margin:12px;border-radius:16px;padding:8px 16px 0}div.chatMessage_chatMessageWrapper__u5m8A{padding-left:1rem;padding-bottom:1rem;max-width:80vw}div.chatMessage_chatMessageWrapper__u5m8A ol,div.chatMessage_chatMessageWrapper__u5m8A p:not(:last-child),div.chatMessage_chatMessageWrapper__u5m8A ul{margin-bottom:16px}div.chatMessage_khojfullHistory__NPu2l{border-width:1px;padding-left:4px}div.chatMessage_youfullHistory__ioyfH{max-width:100%}div.chatMessage_chatMessageContainer__sAivf.chatMessage_youfullHistory__ioyfH{padding-left:0}div.chatMessage_you__6GUC4{background-color:hsla(var(--secondary));align-self:flex-end;border-radius:16px}div.chatMessage_khoj__cjWON{background-color:transparent;color:hsl(var(--accent-foreground));align-self:flex-start}div.chatMessage_khojChatMessage__BabQz{padding-top:8px;padding-left:16px}div.chatMessage_chatMessageContainer__sAivf img{width:50%}div.chatMessage_chatMessageContainer__sAivf h3 img{width:24px}div.chatMessage_you__6GUC4 img{height:16rem;width:auto}div.chatMessage_you__6GUC4{color:hsla(var(--secondary-foreground))}div.chatMessage_author__muRtC{font-size:.75rem;color:grey;text-align:right}div.chatMessage_chatFooter__0vR8s{display:flex;justify-content:space-between;min-height:28px}div.chatMessage_chatButtons__Lbk8T{display:flex;justify-content:flex-end;width:-moz-min-content;width:min-content;border:1px solid var(--border-color);border-radius:16px;position:relative;bottom:-12px;background-color:hsla(var(--secondary))}div.chatMessage_chatFooter__0vR8s button{cursor:pointer;color:hsl(var(--muted-foreground));border:none;border-radius:16px;padding:4px;margin-left:4px;margin-right:4px}div.chatMessage_chatFooter__0vR8s button:hover{background-color:hsla(var(--frosted-background-color))}button.chatMessage_codeCopyButton__Y_Ujv{cursor:pointer;float:right;border-radius:8px}button.chatMessage_codeCopyButton__Y_Ujv:hover{color:hsla(var(--frosted-background-color))}button.chatMessage_codeCopyButton__Y_Ujv img,button.chatMessage_copyButton__jd7q7 img,div.chatMessage_feedbackButtons___Brdy img{width:24px}div.chatMessage_trainOfThought__mR2Gg strong{font-weight:500}div.chatMessage_trainOfThought__mR2Gg.chatMessage_primary__WYPEb strong{font-weight:500;color:hsla(var(--secondary-foreground))}div.chatMessage_trainOfThought__mR2Gg.chatMessage_primary__WYPEb p{color:inherit}div.chatMessage_trainOfThoughtElement__le_bC{display:grid;grid-template-columns:auto 1fr;align-items:start}div.chatMessage_trainOfThoughtElement__le_bC ol,div.chatMessage_trainOfThoughtElement__le_bC ul{margin:auto}@media screen and (max-width:768px){div.chatMessage_youfullHistory__ioyfH{max-width:90%}}div.chatInputArea_actualInputArea__Ha6cN{display:grid;grid-template-columns:auto 1fr auto auto}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
div.chat_main__8xQu5{height:100dvh;color:hsla(var(--foreground))}.chat_suggestions__m8n2t{display:flex;overflow-x:none;height:50%;padding:10px;white-space:nowrap;gap:1rem}div.chat_inputBox__LOFws{border:1px solid var(--border-color);margin-bottom:20px;gap:12px;align-content:center}input.chat_inputBox__LOFws{border:none}input.chat_inputBox__LOFws:focus{outline:none;background-color:transparent}div.chat_inputBox__LOFws:focus{box-shadow:0 8px 16px 0 rgba(0,0,0,.2)}div.chat_chatBodyFull__FfKEK{display:grid;grid-template-columns:1fr;height:100%}button.chat_inputBox__LOFws{border:none;outline:none;background-color:transparent;cursor:pointer;border-radius:.5rem;padding:.5rem;background:linear-gradient(var(--calm-green),var(--calm-blue))}div.chat_chatBody__sS1LX{display:grid;grid-template-columns:1fr 1fr;height:100%}.chat_inputBox__LOFws{color:hsla(var(--foreground))}div.chat_chatLayout__pR203{display:grid;grid-template-columns:auto 1fr;gap:1rem}div.chat_chatBox__FBct_{display:grid;height:100%}div.chat_titleBar__R5QlK{display:grid;grid-template-columns:1fr auto}div.chat_chatBoxBody__qT_SC{display:grid;height:100%;width:70%;margin:auto}div.chat_agentIndicator__8V55w a{display:flex;text-align:center;align-content:center;align-items:center}div.chat_agentIndicator__8V55w{padding:10px}@media screen and (max-width:768px){div.chat_inputBox__LOFws{margin-bottom:0}div.chat_chatBoxBody__qT_SC{width:100%}div.chat_chatBody__sS1LX{grid-template-columns:0fr 1fr}div.chat_chatBox__FBct_{padding:0;height:100%}div.chat_chatLayout__pR203{gap:0;grid-template-columns:1fr}}
|
|
File without changes
|
|
File without changes
|
/khoj/interface/compiled/_next/static/chunks/{8423-14fc72aec9104ce9.js → 8423-ce22327cf2d2edae.js}
RENAMED
|
File without changes
|
/khoj/interface/compiled/_next/static/chunks/{9178-c153fc402c970365.js → 9178-3a0baad1c172d515.js}
RENAMED
|
File without changes
|
/khoj/interface/compiled/_next/static/chunks/{9417-5d14ac74aaab2c66.js → 9417-2e54c6fd056982d8.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|