35 lines
1.1 KiB
Python
35 lines
1.1 KiB
Python
from odoo import models, fields, api, _
|
|
from .ollama_provider_mixin import OllamaProviderMixin
|
|
|
|
class OllamaAIProvider(models.Model, OllamaProviderMixin):
|
|
_name = 'ai.provider.ollama'
|
|
_description = 'Ollama AI Provider'
|
|
_inherit = ['ai.provider.interface']
|
|
|
|
provider_type = fields.Selection(
|
|
selection=[('ollama', 'Ollama')],
|
|
default='ollama',
|
|
required=True,
|
|
help='Type of AI provider')
|
|
|
|
# Ollama-specific Parameters
|
|
host = fields.Char(
|
|
string='Host',
|
|
default='http://localhost:11434',
|
|
required=True,
|
|
help='Ollama server host URL')
|
|
|
|
def _get_available_models(self):
|
|
"""Get list of available models from Ollama server."""
|
|
# TODO: Implement model discovery
|
|
return []
|
|
|
|
def _generate_text(self, prompt, **kwargs):
|
|
"""Generate text using Ollama model."""
|
|
# TODO: Implement text generation
|
|
return ""
|
|
|
|
def _embed_text(self, text, **kwargs):
|
|
"""Generate embeddings for text using Ollama model."""
|
|
# TODO: Implement text embedding
|
|
return []
|