Module: RunApi::Producer

Defined in:
lib/runapi/producer.rb,
lib/runapi/producer/types.rb,
lib/runapi/producer/client.rb,
lib/runapi/producer/contract_gen.rb,
lib/runapi/producer/resources/text_to_music.rb

Defined Under Namespace

Modules: Resources, Types Classes: Client

Constant Summary collapse

AuthenticationError =
RunApi::Core::AuthenticationError
RateLimitError =
RunApi::Core::RateLimitError
InsufficientCreditsError =
RunApi::Core::InsufficientCreditsError
NotFoundError =
RunApi::Core::NotFoundError
ValidationError =
RunApi::Core::ValidationError
TaskFailedError =
RunApi::Core::TaskFailedError
TaskTimeoutError =
RunApi::Core::TaskTimeoutError
CONTRACT =
{
  "text-to-music" => {
    "models" => ["fuzz-2.0"],
    "fields_by_model" => {
      "fuzz-2.0" => {
        "model" => {
          "required" => true
        },
        "prompt" => {
          "required" => true,
          "min" => 1,
          "max" => 200,
          "length" => true
        },
        "vocal_mode" => {
          "enum" => ["exact_lyrics", "instrumental"],
          "required" => true
        }
      }
    },
    "rules" => [{
      "when" => {
        "vocal_mode" => "exact_lyrics"
      },
      "required" => ["lyrics"]
    }, {
      "when" => {
        "vocal_mode" => "instrumental"
      },
      "forbidden" => ["lyrics"]
    }]
  }
}.freeze