From 56b63f95ea050d15d1cc09918edec807fd5e55cf Mon Sep 17 00:00:00 2001 From: Debanjum Date: Fri, 28 Mar 2025 19:13:51 +0530 Subject: [PATCH] Suggest Google image gen model, new Anthropic chat models on first run - Update default anthropic chat models to latest good models. - Now that Google supports a good text to image model. Suggest adding that if Google AI API is setup on first run. --- src/khoj/utils/constants.py | 2 +- src/khoj/utils/initialization.py | 18 +++++++++++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/src/khoj/utils/constants.py b/src/khoj/utils/constants.py index d9a2785c..874d801e 100644 --- a/src/khoj/utils/constants.py +++ b/src/khoj/utils/constants.py @@ -19,7 +19,7 @@ default_offline_chat_models = [ ] default_openai_chat_models = ["gpt-4o-mini", "gpt-4o"] default_gemini_chat_models = ["gemini-2.0-flash", "gemini-1.5-pro"] -default_anthropic_chat_models = ["claude-3-5-sonnet-20241022", "claude-3-5-haiku-20241022"] +default_anthropic_chat_models = ["claude-3-7-sonnet-latest", "claude-3-5-haiku-latest"] empty_config = { "search-type": { diff --git a/src/khoj/utils/initialization.py b/src/khoj/utils/initialization.py index b5c661c4..0168778c 100644 --- a/src/khoj/utils/initialization.py +++ b/src/khoj/utils/initialization.py @@ -104,7 +104,7 @@ def initialization(interactive: bool = True): ) # Set up Google's Gemini online chat models - _setup_chat_model_provider( + google_ai_configured, google_ai_provider = _setup_chat_model_provider( ChatModel.ModelType.GOOGLE, default_gemini_chat_models, default_api_key=os.getenv("GEMINI_API_KEY"), @@ -114,6 +114,22 @@ def initialization(interactive: bool = True): provider_name="Google Gemini", ) + # Setup Google text to image model + if google_ai_configured: + default_text_to_image_model = "imagen-3.0-generate-002" + if interactive: + gemini_text_to_image_model = input( + f"Enter the Google text to image model you want to use (default: {default_text_to_image_model}): " + ) + gemini_text_to_image_model = gemini_text_to_image_model or default_text_to_image_model + else: + gemini_text_to_image_model = default_text_to_image_model + TextToImageModelConfig.objects.create( + model_name=gemini_text_to_image_model, + model_type=TextToImageModelConfig.ModelType.GOOGLE, + ai_model_api=google_ai_provider, + ) + # Set up Anthropic's online chat models _setup_chat_model_provider( ChatModel.ModelType.ANTHROPIC,