Spaces:
Build error
Build error
Refactor agent.py and graph.py to enhance agent functionality and logging. Introduce Configuration class for managing parameters, improve state handling in AgentRunner, and update agent graph to support step logging and user interaction. Add new tests for agent capabilities and update requirements for code formatting tools.
401799d
unverified
"""Define the configurable parameters for the agent.""" | |
from __future__ import annotations | |
import os | |
from dataclasses import dataclass, fields | |
from typing import Optional | |
from langchain_core.runnables import RunnableConfig | |
class Configuration: | |
"""The configuration for the agent.""" | |
# API configuration | |
api_base: Optional[str] = "http://localhost:11434" | |
api_key: Optional[str] = os.getenv("MODEL_API_KEY") | |
model_id: Optional[str] = ( | |
f"ollama/{os.getenv('OLLAMA_MODEL', 'qwen2.5-coder:0.5b')}" | |
) | |
# Agent configuration | |
my_configurable_param: str = "changeme" | |
def from_runnable_config( | |
cls, config: Optional[RunnableConfig] = None | |
) -> Configuration: | |
"""Create a Configuration instance from a RunnableConfig object.""" | |
configurable = (config.get("configurable") or {}) if config else {} | |
_fields = {f.name for f in fields(cls) if f.init} | |
return cls(**{k: v for k, v in configurable.items() if k in _fields}) | |