From c9e6b8e88dfaf55cc88c048132e5f98869edb846 Mon Sep 17 00:00:00 2001 From: Debanjum Date: Mon, 26 May 2025 00:37:26 -0700 Subject: [PATCH] Align expected types to actual returned types by AI APIs, operator --- src/khoj/processor/conversation/anthropic/anthropic_chat.py | 2 +- src/khoj/processor/conversation/openai/gpt.py | 2 +- src/khoj/processor/operator/grounding_agent_uitars.py | 4 ++-- src/khoj/routers/api_model.py | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/khoj/processor/conversation/anthropic/anthropic_chat.py b/src/khoj/processor/conversation/anthropic/anthropic_chat.py index 0d5e6595..e2de2c59 100644 --- a/src/khoj/processor/conversation/anthropic/anthropic_chat.py +++ b/src/khoj/processor/conversation/anthropic/anthropic_chat.py @@ -164,7 +164,7 @@ async def converse_anthropic( generated_asset_results: Dict[str, Dict] = {}, deepthought: Optional[bool] = False, tracer: dict = {}, -) -> AsyncGenerator[ResponseWithThought, None]: +) -> AsyncGenerator[str | ResponseWithThought, None]: """ Converse with user using Anthropic's Claude """ diff --git a/src/khoj/processor/conversation/openai/gpt.py b/src/khoj/processor/conversation/openai/gpt.py index 6290d19e..28739843 100644 --- a/src/khoj/processor/conversation/openai/gpt.py +++ b/src/khoj/processor/conversation/openai/gpt.py @@ -190,7 +190,7 @@ async def converse_openai( program_execution_context: List[str] = None, deepthought: Optional[bool] = False, tracer: dict = {}, -) -> AsyncGenerator[ResponseWithThought, None]: +) -> AsyncGenerator[str | ResponseWithThought, None]: """ Converse with user using OpenAI's ChatGPT """ diff --git a/src/khoj/processor/operator/grounding_agent_uitars.py b/src/khoj/processor/operator/grounding_agent_uitars.py index daba4629..90c27bdb 100644 --- a/src/khoj/processor/operator/grounding_agent_uitars.py +++ b/src/khoj/processor/operator/grounding_agent_uitars.py @@ -13,7 +13,7 @@ from io import BytesIO from typing import Any, List import numpy as np -from openai import AzureOpenAI, OpenAI +from openai import AsyncAzureOpenAI, AsyncOpenAI from openai.types.chat import ChatCompletion from PIL import Image @@ -72,7 +72,7 @@ class GroundingAgentUitars: def __init__( self, model_name: str, - client: OpenAI | AzureOpenAI, + client: AsyncOpenAI | AsyncAzureOpenAI, max_iterations=50, environment_type: Literal["computer", "web"] = "computer", runtime_conf: dict = { diff --git a/src/khoj/routers/api_model.py b/src/khoj/routers/api_model.py index ac37eb0f..a071d090 100644 --- a/src/khoj/routers/api_model.py +++ b/src/khoj/routers/api_model.py @@ -72,7 +72,7 @@ async def update_chat_model( if chat_model is None: return Response(status_code=404, content=json.dumps({"status": "error", "message": "Chat model not found"})) if not subscribed and chat_model.price_tier != PriceTier.FREE: - raise Response( + return Response( status_code=403, content=json.dumps({"status": "error", "message": "Subscribe to switch to this chat model"}), ) @@ -108,7 +108,7 @@ async def update_voice_model( if voice_model is None: return Response(status_code=404, content=json.dumps({"status": "error", "message": "Voice model not found"})) if not subscribed and voice_model.price_tier != PriceTier.FREE: - raise Response( + return Response( status_code=403, content=json.dumps({"status": "error", "message": "Subscribe to switch to this voice model"}), ) @@ -143,7 +143,7 @@ async def update_paint_model( if image_model is None: return Response(status_code=404, content=json.dumps({"status": "error", "message": "Image model not found"})) if not subscribed and image_model.price_tier != PriceTier.FREE: - raise Response( + return Response( status_code=403, content=json.dumps({"status": "error", "message": "Subscribe to switch to this image model"}), )