Skip to main content
Create custom model providers by extending the Model base class.

Basic custom model

from agno.models.base import Model
from agno.models.response import ModelResponse

class CustomModel(Model):
    name: str = "custom-model"
    
    def response(self, messages: list) -> ModelResponse:
        # Your custom inference logic
        response_text = self.call_your_api(messages)
        
        return ModelResponse(
            content=response_text,
            metrics={"tokens": len(response_text.split())}
        )

Using custom model

agent = Agent(
    model=CustomModel()
)
See API reference for complete documentation.

Build docs developers (and LLMs) love