bemade-addons/ai_integration/models/ai_provider_interface.py
xtremxpert 9a130bae6b new ai
2025-02-19 14:18:10 -05:00

55 lines
1.5 KiB
Python

# -*- coding: utf-8 -*-
import logging
from odoo import models, api, _
from odoo.exceptions import UserError
_logger = logging.getLogger(__name__)
class AIProviderInterface(models.AbstractModel):
_name = 'ai.provider.interface'
_description = 'AI Provider Interface'
@api.model
def send_message(self, message, **kwargs):
"""Send a message to the AI provider and get a response.
Args:
message (dict): The message to send
**kwargs: Additional provider-specific parameters
Returns:
dict: The response from the AI provider
"""
raise NotImplementedError()
def _get_provider_type(self):
"""Get the provider type code.
Returns:
str: The provider type code
"""
raise NotImplementedError()
def _get_model_info(self, instance, model_name):
"""Get detailed information about a specific model.
Args:
instance (ai.provider.instance): The provider instance
model_name (str): Name of the model
Returns:
dict: Model information
"""
raise NotImplementedError()
def _list_models(self, instance):
"""List available models for this provider instance.
Args:
instance (ai.provider.instance): The provider instance
Returns:
list: List of available models
"""
raise NotImplementedError()