- environments/__init__.py: try/except on atroposlib imports so submodules like tool_call_parsers remain importable standalone - test_agent_loop.py, test_tool_call_parsers.py, test_managed_server_tool_support.py: skip at module level when atroposlib is missing
37 lines
1.3 KiB
Python
37 lines
1.3 KiB
Python
"""
|
|
Hermes-Agent Atropos Environments
|
|
|
|
Provides a layered integration between hermes-agent's tool-calling capabilities
|
|
and the Atropos RL training framework.
|
|
|
|
Core layers:
|
|
- agent_loop: Reusable multi-turn agent loop with standard OpenAI-spec tool calling
|
|
- tool_context: Per-rollout tool access handle for reward/verification functions
|
|
- hermes_base_env: Abstract base environment (BaseEnv subclass) for Atropos
|
|
- tool_call_parsers: Client-side tool call parser registry for Phase 2 (VLLM /generate)
|
|
|
|
Concrete environments:
|
|
- terminal_test_env/: Simple file-creation tasks for testing the stack
|
|
- hermes_swe_env/: SWE-bench style tasks with Modal sandboxes
|
|
|
|
Benchmarks (eval-only):
|
|
- benchmarks/terminalbench_2/: Terminal-Bench 2.0 evaluation
|
|
"""
|
|
|
|
try:
|
|
from environments.agent_loop import AgentResult, HermesAgentLoop
|
|
from environments.tool_context import ToolContext
|
|
from environments.hermes_base_env import HermesAgentBaseEnv, HermesAgentEnvConfig
|
|
except ImportError:
|
|
# atroposlib not installed — environments are unavailable but
|
|
# submodules like tool_call_parsers can still be imported directly.
|
|
pass
|
|
|
|
__all__ = [
|
|
"AgentResult",
|
|
"HermesAgentLoop",
|
|
"ToolContext",
|
|
"HermesAgentBaseEnv",
|
|
"HermesAgentEnvConfig",
|
|
]
|