diff options
author | icebaker <icebaker@proton.me> | 2024-01-06 22:09:23 -0300 |
---|---|---|
committer | icebaker <icebaker@proton.me> | 2024-01-06 22:09:23 -0300 |
commit | c4807b26f0d530ef99ff87b6c5c45a4953ba958a (patch) | |
tree | 8d2709d35089ec8afb60bd20c6855de4623e3d1b /spec/tasks/run-model.rb | |
parent | bfe0e76e3683a71bb8ce5bfdaae99b0252e7be05 (diff) |
adding new providers
Diffstat (limited to 'spec/tasks/run-model.rb')
-rw-r--r-- | spec/tasks/run-model.rb | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/spec/tasks/run-model.rb b/spec/tasks/run-model.rb new file mode 100644 index 0000000..4b235aa --- /dev/null +++ b/spec/tasks/run-model.rb @@ -0,0 +1,39 @@ +# frozen_string_literal: true + +require 'dotenv/load' + +require 'yaml' + +require_relative '../../ports/dsl/nano-bots' +require_relative '../../logic/helpers/hash' + +def run_model!(cartridge, stream = true) + if stream == false + cartridge[:provider][:options] = {} unless cartridge[:provider].key?(:options) + cartridge[:provider][:options][:stream] = false + + cartridge[:provider][:settings] = {} unless cartridge[:provider].key?(:settings) + cartridge[:provider][:settings][:stream] = false + end + + puts "\n#{cartridge[:meta][:symbol]} #{cartridge[:meta][:name]}\n\n" + + bot = NanoBot.new(cartridge:) + + output = bot.eval('Hi!') do |_content, fragment, _finished, _meta| + print fragment unless fragment.nil? + end + puts '' + puts '-' * 20 + puts '' + puts output + puts '' + puts '*' * 20 +end + +run_model!( + NanoBot::Logic::Helpers::Hash.symbolize_keys( + YAML.safe_load_file(ARGV[0].to_s.strip, permitted_classes: [Symbol]) + ), + ARGV[1].to_s.strip == 'stream' +) |