fix: build_llm + fallback на JOURNAL_TOKEN (без fake api key)

This commit is contained in:
2026-05-27 08:35:45 +00:00
parent d4f569eed7
commit b8298e6688
+34 -6
View File
@@ -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],