fix: build_llm + fallback на JOURNAL_TOKEN (без fake api key)
This commit is contained in:
@@ -19,6 +19,9 @@ from web_tools import get_page_content, web_search
|
|||||||
|
|
||||||
load_dotenv()
|
load_dotenv()
|
||||||
|
|
||||||
|
BROJS_INFERENCE_URL = "https://platform.brojs.ru/jrnl-bh/api/inference/v1"
|
||||||
|
DEFAULT_MODEL = "openai/gpt-oss-20b:free"
|
||||||
|
|
||||||
SYSTEM_PROMPT = """\
|
SYSTEM_PROMPT = """\
|
||||||
Ты исследовательский deep-агент (стиль deep agents from scratch).
|
Ты исследовательский 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():
|
def build_agent():
|
||||||
WORKSPACE_DIR.mkdir(parents=True, exist_ok=True)
|
WORKSPACE_DIR.mkdir(parents=True, exist_ok=True)
|
||||||
backend = LocalShellBackend(
|
backend = LocalShellBackend(
|
||||||
@@ -44,12 +77,7 @@ def build_agent():
|
|||||||
virtual_mode=True,
|
virtual_mode=True,
|
||||||
inherit_env=True,
|
inherit_env=True,
|
||||||
)
|
)
|
||||||
llm = ChatOpenAI(
|
llm = build_llm()
|
||||||
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,
|
|
||||||
)
|
|
||||||
return create_deep_agent(
|
return create_deep_agent(
|
||||||
model=llm,
|
model=llm,
|
||||||
tools=[web_search, get_page_content, export_virtual_files],
|
tools=[web_search, get_page_content, export_virtual_files],
|
||||||
|
|||||||
Reference in New Issue
Block a user