Class: LLM::OpenAI::Moderations
- Inherits:
-
Object
- Object
- LLM::OpenAI::Moderations
- Defined in:
- lib/llm/providers/openai/moderations.rb
Overview
The LLM::OpenAI::Moderations class provides a moderations object for interacting with OpenAI’s moderations API. The moderations API can categorize content into different categories, such as hate speech, self-harm, and sexual content. It can also provide a confidence score for each category.
Instance Method Summary collapse
-
#initialize(provider) ⇒ LLM::OpenAI::Moderations
constructor
Returns a new Moderations object.
-
#create(input:, model: "omni-moderation-latest", **params) ⇒ LLM::Response
Create a moderation.
Constructor Details
#initialize(provider) ⇒ LLM::OpenAI::Moderations
Returns a new Moderations object
40 41 42 |
# File 'lib/llm/providers/openai/moderations.rb', line 40 def initialize(provider) @provider = provider end |
Instance Method Details
#create(input:, model: "omni-moderation-latest", **params) ⇒ LLM::Response
Create a moderation
51 52 53 54 55 56 57 |
# File 'lib/llm/providers/openai/moderations.rb', line 51 def create(input:, model: "omni-moderation-latest", **params) req = Net::HTTP::Post.new("/v1/moderations", headers) input = Format::ModerationFormat.new(input).format req.body = JSON.dump({input:, model:}.merge!(params)) res = execute(request: req) LLM::Response.new(res).extend(LLM::OpenAI::Response::Moderations) end |