Sha256: 4e56f4527662c207a128e1da2a37ddde566e92feeb76eb5d377c638bc551c917

Contents?: true

Size: 581 Bytes

Versions: 1

Compression:

Stored size: 581 Bytes

Contents

# frozen_string_literal: true

require "roseflow/action"
require "roseflow/ai/model"

module Roseflow
  module Actions
    module AI
      class ResolveModel
        extend Roseflow::Action

        expects :model
        promises :llm

        executed do |context|
          model = context.provider.models.find(context[:model])

          unless model
            context.fail_and_return!("Model #{context[:model]} not found")
          end

          context[:llm] = Roseflow::AI::Model.new(name: model.name, provider: context.provider)
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
roseflow-0.1.0 lib/roseflow/actions/ai/resolve_model.rb