Skip to content

fix(llm): LiteLLM embed() crashes on model override + finish #1593 review items #1625

@itomek

Description

@itomek

Follow-up to #1593 (merged), which added the LiteLLM provider. The claude-bot review on that PR flagged items that merged unaddressed.

Bug (must fix)

LiteLLMProvider.embed() raises TypeError: embedding() got multiple values for keyword argument 'model' whenever a caller overrides the model — model lands in both the explicit model= argument and the spread **call_kwargs. No test currently exercises embed().

Cleanup (bot review)

  • Document the litellm provider in docs/sdk/sdks/llm.mdx (Cloud Providers section) — required by the docs policy.
  • create_client docstring in src/gaia/llm/factory.py still lists only ("lemonade", "openai", or "claude").
  • Redundant drop_params (set globally in __init__ and per-call) — collapse to a single per-call default that callers can override without a duplicate-keyword error.

Scope

src/gaia/llm/providers/litellm.py, src/gaia/llm/factory.py, tests/unit/test_litellm_provider.py, docs/sdk/sdks/llm.mdx. No behavior change to the chat/stream paths.

Metadata

Metadata

Assignees

No one assigned

    Labels

    llmLLM backend changes

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions