From b8298e66880504f7170664c58166631211e4ef3b Mon Sep 17 00:00:00 2001 From: RomanKurlygin Date: Wed, 27 May 2026 08:35:45 +0000 Subject: [PATCH] =?UTF-8?q?fix:=20build=5Fllm=20+=20fallback=20=D0=BD?= =?UTF-8?q?=D0=B0=20JOURNAL=5FTOKEN=20(=D0=B1=D0=B5=D0=B7=20fake=20api=20k?= =?UTF-8?q?ey)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.py | 40 ++++++++++++++++++++++++++++++++++------ 1 file changed, 34 insertions(+), 6 deletions(-) diff --git a/main.py b/main.py index bdab7c2..1f9a43b 100644 --- a/main.py +++ b/main.py @@ -19,6 +19,9 @@ from web_tools import get_page_content, web_search load_dotenv() +BROJS_INFERENCE_URL = "https://platform.brojs.ru/jrnl-bh/api/inference/v1" +DEFAULT_MODEL = "openai/gpt-oss-20b:free" + SYSTEM_PROMPT = """\ Ты исследовательский deep-агент (стиль deep agents from scratch). @@ -37,6 +40,36 @@ SYSTEM_PROMPT = """\ """ +def _api_key() -> str: + return ( + os.getenv("OPENAI_API_KEY") + or os.getenv("JOURNAL_MCP_PAT") + or os.getenv("JOURNAL_TOKEN") + or "" + ) + + +def _base_url() -> str: + if os.getenv("OPENAI_BASE_URL"): + return os.environ["OPENAI_BASE_URL"] + if os.getenv("OPENAI_API_KEY"): + return os.getenv("OPENROUTER_BASE_URL", "https://openrouter.ai/api/v1") + return BROJS_INFERENCE_URL + + +def _model() -> str: + return os.getenv("OPENAI_MODEL") or os.getenv("OPENROUTER_MODEL") or DEFAULT_MODEL + + +def build_llm() -> ChatOpenAI: + return ChatOpenAI( + model=_model(), + base_url=_base_url(), + api_key=_api_key(), + temperature=0.2, + ) + + def build_agent(): WORKSPACE_DIR.mkdir(parents=True, exist_ok=True) backend = LocalShellBackend( @@ -44,12 +77,7 @@ def build_agent(): virtual_mode=True, inherit_env=True, ) - llm = ChatOpenAI( - model=os.getenv("OPENAI_MODEL", "openai/gpt-oss-20b:free"), - base_url=os.getenv("OPENAI_BASE_URL", "https://openrouter.ai/api/v1"), - api_key=os.getenv("OPENAI_API_KEY", "fake"), - temperature=0.2, - ) + llm = build_llm() return create_deep_agent( model=llm, tools=[web_search, get_page_content, export_virtual_files],