discourse-ai/lib/summarization/models/custom_llm.rb

42 lines
931 B
Ruby

# frozen_string_literal: true
module DiscourseAi
module Summarization
module Models
class CustomLlm < Base
def display_name
custom_llm.display_name
end
def correctly_configured?
if Rails.env.development?
SiteSetting.ai_ollama_endpoint.present?
else
SiteSetting.ai_hugging_face_api_url.present? ||
SiteSetting.ai_vllm_endpoint_srv.present? || SiteSetting.ai_vllm_endpoint.present?
end
end
def configuration_hint
I18n.t(
"discourse_ai.summarization.configuration_hint",
count: 1,
setting: "ai_hugging_face_api_url",
)
end
def model
model_name
end
private
def custom_llm
id = model.split(":").last
@llm ||= LlmModel.find_by(id: id)
end
end
end
end
end