Spaces:
No application file
No application file
File size: 2,586 Bytes
78e0552 16a46a4 78e0552 3669f09 2853705 3669f09 16a46a4 3669f09 16a46a4 2853705 3669f09 16a46a4 4de915b 78e0552 4de915b 78e0552 4de915b 3669f09 2853705 3669f09 78e0552 4de915b 78e0552 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# LLM client initialization moved from _agents.py
import os
from browser_use import ChatGoogle, ChatOpenAI as ChatOpenAIBrowserUse
from agents import OpenAIChatCompletionsModel, AsyncOpenAI
from dotenv import load_dotenv, find_dotenv
import os
_: bool = load_dotenv(find_dotenv())
# deepseek_api_key = os.getenv("DEEPSEEK_API_KEY")
google_api_key = os.getenv("GOOGLE_API_KEY")
# grok_api_key = os.getenv("GROK_API_KEY")
openrouter_api_key = os.getenv("OPENROUTER_API_KEY")
openai_api_key = os.getenv("OPENAI_API_KEY")
DEEPSEEK_BASE_URL = "https://api.deepseek.com/v1"
GROK_BASE_URL = "https://api.x.ai/v1"
GEMINI_BASE_URL = "https://generativelanguage.googleapis.com/v1beta/openai/"
OPENROUTER_BASE_URL = "https://openrouter.ai/api/v1"
# QWEN_BASE_URL = 'https://dashscope-intl.aliyuncs.com/compatible-mode/v1'
openrouter_client = AsyncOpenAI(base_url=OPENROUTER_BASE_URL, api_key=openrouter_api_key)
# deepseek_client = AsyncOpenAI(base_url=DEEPSEEK_BASE_URL, api_key=deepseek_api_key)
# grok_client = AsyncOpenAI(base_url=GROK_BASE_URL, api_key=grok_api_key)
# gemini_client = AsyncOpenAI(base_url=GEMINI_BASE_URL, api_key=google_api_key)
openai_client = AsyncOpenAI(api_key=openai_api_key)
# llm = ChatOpenAI(model='qwen-vl-max', api_key=api_key, base_url=base_url)
def get_model(model_name: str) -> ChatGoogle | ChatOpenAIBrowserUse | OpenAIChatCompletionsModel | str:
if model_name.startswith("openrouter:"):
# Use the text after ':' as the model name
actual_model = model_name.split(":", 1)[1]
return OpenAIChatCompletionsModel(model=actual_model, openai_client=openrouter_client)
if model_name == "llm_browser_google":
return ChatGoogle(model="gemini-flash-latest", api_key=os.getenv("google_api_key"))
elif model_name.startswith("browser_agent_openrouter:"):
actual_model = model_name.split(":", 1)[1]
return ChatOpenAIBrowserUse(
model=actual_model,
base_url=OPENROUTER_BASE_URL,
api_key=openrouter_api_key,
)
if "/" in model_name:
return OpenAIChatCompletionsModel(model=model_name, openai_client=openrouter_client)
# elif "deepseek" in model_name:
# return OpenAIChatCompletionsModel(model=model_name, openai_client=deepseek_client)
# elif "grok" in model_name:
# return OpenAIChatCompletionsModel(model=model_name, openai_client=grok_client)
elif "gpt" in model_name:
return OpenAIChatCompletionsModel(model=model_name, openai_client=openai_client)
else:
return model_name
|