fix(litellm): initialize langsmith flag
This commit is contained in:
@@ -62,6 +62,7 @@ class LiteLLMProvider(LLMProvider):
|
|||||||
litellm.suppress_debug_info = True
|
litellm.suppress_debug_info = True
|
||||||
# Drop unsupported parameters for providers (e.g., gpt-5 rejects some params)
|
# Drop unsupported parameters for providers (e.g., gpt-5 rejects some params)
|
||||||
litellm.drop_params = True
|
litellm.drop_params = True
|
||||||
|
self._langsmith_enabled = bool(os.getenv("LANGSMITH_API_KEY"))
|
||||||
|
|
||||||
def _setup_env(self, api_key: str, api_base: str | None, model: str) -> None:
|
def _setup_env(self, api_key: str, api_base: str | None, model: str) -> None:
|
||||||
"""Set environment variables based on detected provider."""
|
"""Set environment variables based on detected provider."""
|
||||||
|
|||||||
26
tests/test_litellm_provider.py
Normal file
26
tests/test_litellm_provider.py
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
from nanobot.providers.litellm_provider import LiteLLMProvider
|
||||||
|
|
||||||
|
|
||||||
|
def test_litellm_provider_initializes_langsmith_flag(monkeypatch) -> None:
|
||||||
|
monkeypatch.setenv("LANGSMITH_API_KEY", "ls-test")
|
||||||
|
|
||||||
|
provider = LiteLLMProvider(default_model="openai/gpt-4o-mini")
|
||||||
|
|
||||||
|
assert provider._langsmith_enabled is True
|
||||||
|
|
||||||
|
|
||||||
|
def test_litellm_provider_build_chat_kwargs_adds_langsmith_callback(monkeypatch) -> None:
|
||||||
|
monkeypatch.setenv("LANGSMITH_API_KEY", "ls-test")
|
||||||
|
|
||||||
|
provider = LiteLLMProvider(default_model="openai/gpt-4o-mini")
|
||||||
|
kwargs, _ = provider._build_chat_kwargs(
|
||||||
|
messages=[{"role": "user", "content": "hello"}],
|
||||||
|
tools=None,
|
||||||
|
model=None,
|
||||||
|
max_tokens=128,
|
||||||
|
temperature=0.1,
|
||||||
|
reasoning_effort=None,
|
||||||
|
tool_choice=None,
|
||||||
|
)
|
||||||
|
|
||||||
|
assert kwargs["callbacks"] == ["langsmith"]
|
||||||
Reference in New Issue
Block a user