diff --git a/src/crewai/__init__.py b/src/crewai/__init__.py index 1d5279288..6ab07917f 100644 --- a/src/crewai/__init__.py +++ b/src/crewai/__init__.py @@ -1,6 +1,7 @@ import warnings from crewai.agent import Agent +from crewai import cli from crewai.crew import Crew from crewai.crews.crew_output import CrewOutput from crewai.flow.flow import Flow @@ -11,6 +12,7 @@ from crewai.process import Process from crewai.task import Task from crewai.tasks.llm_guardrail import LLMGuardrail from crewai.tasks.task_output import TaskOutput +from crewai import utilities warnings.filterwarnings( "ignore", @@ -21,6 +23,7 @@ warnings.filterwarnings( __version__ = "0.126.0" __all__ = [ "Agent", + "cli", "Crew", "CrewOutput", "Process", @@ -31,4 +34,5 @@ __all__ = [ "Knowledge", "TaskOutput", "LLMGuardrail", + "utilities", ] diff --git a/src/crewai/llm.py b/src/crewai/llm.py index 4dd1b3cbe..7a7ee4950 100644 --- a/src/crewai/llm.py +++ b/src/crewai/llm.py @@ -219,18 +219,21 @@ def suppress_litellm_output(): ".*text splitting strategy.*" ] - with warnings.catch_warnings(): - for pattern in warning_patterns: - warnings.filterwarnings("ignore", message=pattern) - - try: + try: + with warnings.catch_warnings(): + for pattern in warning_patterns: + warnings.filterwarnings("ignore", message=pattern) + _litellm_logger.setLevel(logging.WARNING) yield - except Exception as e: - logging.debug(f"Error in litellm output suppression: {e}") - yield - finally: + except Exception as e: + logging.debug(f"Error in litellm output suppression: {e}") + raise + finally: + try: _litellm_logger.setLevel(original_level) + except Exception as e: + logging.debug(f"Error restoring logger level: {e}") class Delta(TypedDict):