Always validate configuration parameters for type, range, and reasonable values before use. Provide safe defaults for optional settings and prefer explicit parameter passing over runtime environment variable modification.
Always validate configuration parameters for type, range, and reasonable values before use. Provide safe defaults for optional settings and prefer explicit parameter passing over runtime environment variable modification.
Key practices:
Example:
# Good: Validate and use safe defaults
recursion_limit = int(os.getenv("AGENT_RECURSION_LIMIT", "25"))
if recursion_limit <= 0:
raise ValueError("Recursion limit must be greater than zero")
logger.info(f"Recursion limit is set: {recursion_limit}")
# Good: Pass as parameters instead of environment modification
return AzureChatOpenAI(
api_version=llm_config.get("api_version"),
api_key=llm_config.get("api_key"),
azure_endpoint=llm_config.get("base_url")
)
# Avoid: Runtime environment modification
os.environ.update({"AZURE_OPENAI_API_KEY": api_key}) # Not recommended
Enter the URL of a public GitHub repository