class RubyLLM::Providers::OpenAI
OpenAI API integration.
Public Class Methods
Source
# File lib/ruby_llm/providers/openai.rb, line 34 def capabilities OpenAI::Capabilities end
Source
# File lib/ruby_llm/providers/openai.rb, line 38 def configuration_options %i[ openai_api_key openai_api_base openai_organization_id openai_project_id openai_use_system_role ] end
# File lib/ruby_llm/providers/openai.rb, line 48 def configuration_requirements %i[openai_api_key] end
Public Instance Methods
Source
# File lib/ruby_llm/providers/openai.rb, line 17 def api_base @config.openai_api_base || 'https://api.openai.com/v1' end
Source
# File lib/ruby_llm/providers/openai.rb, line 21 def headers { 'Authorization' => "Bearer #{@config.openai_api_key}", 'OpenAI-Organization' => @config.openai_organization_id, 'OpenAI-Project' => @config.openai_project_id }.compact end
# File lib/ruby_llm/providers/openai.rb, line 29 def maybe_normalize_temperature(temperature, model) OpenAI::Temperature.normalize(temperature, model.id) end