Skip to content
Updates & support on Telegram

crewai.LLM(base_url=…)

Native OpenAI-compatible support

CrewAI with a custom OpenAI-compatible backend

CrewAI takes an LLM object per agent. Configure it once with the gateway base URL and your roles, tasks and delegation stay as they are.

Base URL

https://uncensoredai.dev/v1

  1. 01

    Create the LLM

    CrewAI's LLM wrapper accepts base_url and model, and speaks the chat-completions protocol.

    python
    from crewai import Agent, Crew, Task, LLM
    
    llm = LLM(
        model="openai/gpt-6-sol",
        base_url="https://uncensoredai.dev/v1",
        api_key="sk-ua-XXXX-XXXX-XXXX-XXXX",
    )
    
    researcher = Agent(
        role="Researcher",
        goal="Find primary sources",
        backstory="Meticulous and fast.",
        llm=llm,
    )
  2. 02

    Assign tasks

    Tasks inherit the agent's model. Mix tiers by giving a second agent a cheaper LLM.

    crew
    task = Task(
        description="Summarise the findings in five bullets.",
        expected_output="Five bullet points.",
        agent=researcher,
    )
    Crew(agents=[researcher], tasks=[task]).kickoff()

Commands and configuration below are shown exactly as the tool expects them, so they stay in English.

FAQ

Does delegation work across models?+

Yes. Each agent carries its own LLM object, so a crew can mix a reasoning tier and a fast tier.

Are CrewAI memory and embeddings supported?+

The gateway serves chat completions only. Keep memory embeddings on a separate provider.

More integrations

CrewAI Custom LLM — Crew Setup With One Key · UncensoredAI