mirror of
https://github.com/khoaliber/khoj.git
synced 2026-03-07 05:40:17 +00:00
Automate updating embeddings, search index on a hourly schedule
- Use the schedule pypi package - Use QTimer to poll schedule.run_pending() regularly for jobs to run
This commit is contained in:
@@ -3,6 +3,9 @@ import sys
|
||||
import logging
|
||||
import json
|
||||
|
||||
# External Packages
|
||||
import schedule
|
||||
|
||||
# Internal Packages
|
||||
from src.processor.ledger.beancount_to_jsonl import BeancountToJsonl
|
||||
from src.processor.markdown.markdown_to_jsonl import MarkdownToJsonl
|
||||
@@ -37,6 +40,12 @@ def configure_server(args, required=False):
|
||||
state.processor_config = configure_processor(args.config.processor)
|
||||
|
||||
|
||||
@schedule.repeat(schedule.every(1).hour)
|
||||
def update_search_index():
|
||||
state.model = configure_search(state.model, state.config, regenerate=False)
|
||||
logger.info("Search Index updated via Scheduler")
|
||||
|
||||
|
||||
def configure_search(model: SearchModels, config: FullConfig, regenerate: bool, t: SearchType = None):
|
||||
# Initialize Org Notes Search
|
||||
if (t == SearchType.Org or t == None) and config.content_type.org:
|
||||
|
||||
Reference in New Issue
Block a user