mirror of
https://github.com/khoj-ai/khoj.git
synced 2024-11-23 23:48:56 +01:00
Consistently use "entry", "score" in json response for all search types
- Had already made some progress on this earlier by updating the image search responses. But needed to update the text search responses to use lowercase entry and score - Update khoj.el to consume the updated json response keys for text search
This commit is contained in:
parent
d68a9dc445
commit
c1369233db
6 changed files with 11 additions and 11 deletions
|
@ -55,7 +55,7 @@
|
||||||
(format "* %s\n%s"
|
(format "* %s\n%s"
|
||||||
query
|
query
|
||||||
(mapcar
|
(mapcar
|
||||||
(lambda (args) (format "%s" (cdr (assoc 'Entry args))))
|
(lambda (args) (format "%s" (cdr (assoc 'entry args))))
|
||||||
json-response))))
|
json-response))))
|
||||||
|
|
||||||
(defun khoj--extract-entries-as-images (json-response query)
|
(defun khoj--extract-entries-as-images (json-response query)
|
||||||
|
@ -94,7 +94,7 @@
|
||||||
query
|
query
|
||||||
(mapcar
|
(mapcar
|
||||||
(lambda (args)
|
(lambda (args)
|
||||||
(format "%s\n\n" (cdr (assoc 'Entry args))))
|
(format "%s\n\n" (cdr (assoc 'entry args))))
|
||||||
json-response)))))
|
json-response)))))
|
||||||
|
|
||||||
(defun khoj--buffer-name-to-search-type (buffer-name)
|
(defun khoj--buffer-name-to-search-type (buffer-name)
|
||||||
|
|
|
@ -145,7 +145,7 @@ def chat(q: str):
|
||||||
if get_from_dict(metadata, "intent", "memory-type") == "notes":
|
if get_from_dict(metadata, "intent", "memory-type") == "notes":
|
||||||
query = get_from_dict(metadata, "intent", "query")
|
query = get_from_dict(metadata, "intent", "query")
|
||||||
result_list = search(query, n=1, t=SearchType.Notes)
|
result_list = search(query, n=1, t=SearchType.Notes)
|
||||||
collated_result = "\n".join([item["Entry"] for item in result_list])
|
collated_result = "\n".join([item["entry"] for item in result_list])
|
||||||
if verbose > 1:
|
if verbose > 1:
|
||||||
print(f'Semantically Similar Notes:\n{collated_result}')
|
print(f'Semantically Similar Notes:\n{collated_result}')
|
||||||
gpt_response = summarize(collated_result, summary_type="notes", user_query=q, api_key=processor_config.conversation.openai_api_key)
|
gpt_response = summarize(collated_result, summary_type="notes", user_query=q, api_key=processor_config.conversation.openai_api_key)
|
||||||
|
|
|
@ -151,8 +151,8 @@ def render_results(hits, entries, count=5, display_biencoder_results=False):
|
||||||
def collate_results(hits, entries, count=5):
|
def collate_results(hits, entries, count=5):
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
"Entry": entries[hit['corpus_id']]['raw'],
|
"entry": entries[hit['corpus_id']]['raw'],
|
||||||
"Score": f"{hit['cross-score']:.3f}"
|
"score": f"{hit['cross-score']:.3f}"
|
||||||
}
|
}
|
||||||
for hit
|
for hit
|
||||||
in hits[0:count]]
|
in hits[0:count]]
|
||||||
|
|
|
@ -115,8 +115,8 @@ def render_results(hits, entries, count=5, display_biencoder_results=False):
|
||||||
def collate_results(hits, entries, count=5):
|
def collate_results(hits, entries, count=5):
|
||||||
return [
|
return [
|
||||||
{
|
{
|
||||||
"Entry": entries[hit['corpus_id']]['raw'],
|
"entry": entries[hit['corpus_id']]['raw'],
|
||||||
"Score": f"{hit['cross-score']:.3f}"
|
"score": f"{hit['cross-score']:.3f}"
|
||||||
}
|
}
|
||||||
for hit
|
for hit
|
||||||
in hits[0:count]]
|
in hits[0:count]]
|
||||||
|
|
|
@ -37,7 +37,7 @@ def test_asymmetric_search(content_config: ContentConfig, search_config: SearchC
|
||||||
|
|
||||||
# Assert
|
# Assert
|
||||||
# Actual_data should contain "Khoj via Emacs" entry
|
# Actual_data should contain "Khoj via Emacs" entry
|
||||||
search_result = results[0]["Entry"]
|
search_result = results[0]["entry"]
|
||||||
assert "git clone" in search_result
|
assert "git clone" in search_result
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -124,7 +124,7 @@ def test_notes_search(content_config: ContentConfig, search_config: SearchConfig
|
||||||
# Assert
|
# Assert
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
# assert actual_data contains "Khoj via Emacs" entry
|
# assert actual_data contains "Khoj via Emacs" entry
|
||||||
search_result = response.json()[0]["Entry"]
|
search_result = response.json()[0]["entry"]
|
||||||
assert "git clone" in search_result
|
assert "git clone" in search_result
|
||||||
|
|
||||||
|
|
||||||
|
@ -140,7 +140,7 @@ def test_notes_search_with_include_filter(content_config: ContentConfig, search_
|
||||||
# Assert
|
# Assert
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
# assert actual_data contains explicitly included word "Emacs"
|
# assert actual_data contains explicitly included word "Emacs"
|
||||||
search_result = response.json()[0]["Entry"]
|
search_result = response.json()[0]["entry"]
|
||||||
assert "Emacs" in search_result
|
assert "Emacs" in search_result
|
||||||
|
|
||||||
|
|
||||||
|
@ -156,5 +156,5 @@ def test_notes_search_with_exclude_filter(content_config: ContentConfig, search_
|
||||||
# Assert
|
# Assert
|
||||||
assert response.status_code == 200
|
assert response.status_code == 200
|
||||||
# assert actual_data does not contains explicitly excluded word "Emacs"
|
# assert actual_data does not contains explicitly excluded word "Emacs"
|
||||||
search_result = response.json()[0]["Entry"]
|
search_result = response.json()[0]["entry"]
|
||||||
assert "clone" not in search_result
|
assert "clone" not in search_result
|
||||||
|
|
Loading…
Reference in a new issue