Class: TranslationAPI::Provider::Gemini
- Inherits:
-
Object
- Object
- TranslationAPI::Provider::Gemini
show all
- Defined in:
- lib/translation_api/provider/gemini.rb,
lib/translation_api/provider/gemini/chat.rb,
lib/translation_api/provider/gemini/cost.rb,
lib/translation_api/provider/gemini/model.rb,
lib/translation_api/provider/gemini/response.rb
Defined Under Namespace
Classes: Chat, Cost, Model, Response
Instance Method Summary
collapse
Constructor Details
#initialize(output_logs:, except_words:, language:, custom_prompt: nil) ⇒ Gemini
12
13
14
15
16
17
|
# File 'lib/translation_api/provider/gemini.rb', line 12
def initialize(output_logs:, except_words:, language:, custom_prompt: nil)
@model = Model.new(ENV["GEMINI_MODEL"] || Model.two_five_flash)
@prompt = Llm::Prompt.new(except_words:, language:, custom_prompt:)
@chat = Chat.new(model: @model, prompt: @prompt)
@output_logs = output_logs
end
|
Instance Method Details
#name ⇒ Object
28
29
30
|
# File 'lib/translation_api/provider/gemini.rb', line 28
def name
"gemini"
end
|
#translate(text) ⇒ Object
19
20
21
22
23
24
25
26
|
# File 'lib/translation_api/provider/gemini.rb', line 19
def translate(text)
return text if text.strip.empty?
@response = @chat.call(text)
log.write if @output_logs
@response.translated_text
end
|