diff options
author | icebaker <113217272+icebaker@users.noreply.github.com> | 2023-12-29 16:59:59 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-29 16:59:59 -0300 |
commit | 678f21d70cc5d6f41aa8f1ab80f70d28ec8f7647 (patch) | |
tree | 2b82791436be0b031d3a06609bda8afce4784f4a /spec | |
parent | 91c635366bab160b81b2c1690234f97040d0d60b (diff) | |
parent | 56dcecfdbaf10c90527b65f03b19a94f2f4d8a05 (diff) |
Merge pull request #13 from icebaker/ib-cohere
Adding support to Cohere
Diffstat (limited to 'spec')
-rw-r--r-- | spec/data/cartridges/models/cohere/command-light.yml | 12 | ||||
-rw-r--r-- | spec/data/cartridges/models/cohere/command.yml | 12 | ||||
-rw-r--r-- | spec/data/cartridges/models/google/gemini-pro.yml | 13 | ||||
-rw-r--r-- | spec/data/cartridges/models/mistral/medium.yml | 12 | ||||
-rw-r--r-- | spec/data/cartridges/models/mistral/small.yml | 12 | ||||
-rw-r--r-- | spec/data/cartridges/models/mistral/tiny.yml | 12 | ||||
-rw-r--r-- | spec/data/cartridges/models/openai/gpt-3-5-turbo.yml | 12 | ||||
-rw-r--r-- | spec/data/cartridges/models/openai/gpt-4-turbo.yml | 12 | ||||
-rw-r--r-- | spec/tasks/run-all-models.rb | 53 |
9 files changed, 150 insertions, 0 deletions
diff --git a/spec/data/cartridges/models/cohere/command-light.yml b/spec/data/cartridges/models/cohere/command-light.yml new file mode 100644 index 0000000..5c68126 --- /dev/null +++ b/spec/data/cartridges/models/cohere/command-light.yml @@ -0,0 +1,12 @@ +--- +meta: + symbol: 🟣 + name: Cohere Command Light + license: CC0-1.0 + +provider: + id: cohere + credentials: + api-key: ENV/COHERE_API_KEY + settings: + model: command-light diff --git a/spec/data/cartridges/models/cohere/command.yml b/spec/data/cartridges/models/cohere/command.yml new file mode 100644 index 0000000..a0bd1bb --- /dev/null +++ b/spec/data/cartridges/models/cohere/command.yml @@ -0,0 +1,12 @@ +--- +meta: + symbol: 🟣 + name: Cohere Command + license: CC0-1.0 + +provider: + id: cohere + credentials: + api-key: ENV/COHERE_API_KEY + settings: + model: command diff --git a/spec/data/cartridges/models/google/gemini-pro.yml b/spec/data/cartridges/models/google/gemini-pro.yml new file mode 100644 index 0000000..24d294c --- /dev/null +++ b/spec/data/cartridges/models/google/gemini-pro.yml @@ -0,0 +1,13 @@ +--- +meta: + symbol: 🔵 + name: Google Gemini Pro + license: CC0-1.0 + +provider: + id: google + credentials: + service: vertex-ai-api + region: us-east4 + options: + model: gemini-pro diff --git a/spec/data/cartridges/models/mistral/medium.yml b/spec/data/cartridges/models/mistral/medium.yml new file mode 100644 index 0000000..8d5cd9e --- /dev/null +++ b/spec/data/cartridges/models/mistral/medium.yml @@ -0,0 +1,12 @@ +--- +meta: + symbol: 🟠+ name: Mistral Medium + license: CC0-1.0 + +provider: + id: mistral + credentials: + api-key: ENV/MISTRAL_API_KEY + settings: + model: mistral-medium diff --git a/spec/data/cartridges/models/mistral/small.yml b/spec/data/cartridges/models/mistral/small.yml new file mode 100644 index 0000000..9f3d5c6 --- /dev/null +++ b/spec/data/cartridges/models/mistral/small.yml @@ -0,0 +1,12 @@ +--- +meta: + symbol: 🟠+ name: Mistral Small + license: CC0-1.0 + +provider: + id: mistral + credentials: + api-key: ENV/MISTRAL_API_KEY + settings: + model: mistral-small diff --git a/spec/data/cartridges/models/mistral/tiny.yml b/spec/data/cartridges/models/mistral/tiny.yml new file mode 100644 index 0000000..f280d87 --- /dev/null +++ b/spec/data/cartridges/models/mistral/tiny.yml @@ -0,0 +1,12 @@ +--- +meta: + symbol: 🟠+ name: Mistral Tiny + license: CC0-1.0 + +provider: + id: mistral + credentials: + api-key: ENV/MISTRAL_API_KEY + settings: + model: mistral-tiny diff --git a/spec/data/cartridges/models/openai/gpt-3-5-turbo.yml b/spec/data/cartridges/models/openai/gpt-3-5-turbo.yml new file mode 100644 index 0000000..457b17a --- /dev/null +++ b/spec/data/cartridges/models/openai/gpt-3-5-turbo.yml @@ -0,0 +1,12 @@ +--- +meta: + symbol: 🟢 + name: OpenAI GPT 3.5 Turbo + license: CC0-1.0 + +provider: + id: openai + credentials: + access-token: ENV/OPENAI_API_KEY + settings: + model: gpt-3.5-turbo-1106 diff --git a/spec/data/cartridges/models/openai/gpt-4-turbo.yml b/spec/data/cartridges/models/openai/gpt-4-turbo.yml new file mode 100644 index 0000000..90e71e8 --- /dev/null +++ b/spec/data/cartridges/models/openai/gpt-4-turbo.yml @@ -0,0 +1,12 @@ +--- +meta: + symbol: 🟢 + name: OpenAI GPT 4 Turbo + license: CC0-1.0 + +provider: + id: openai + credentials: + access-token: ENV/OPENAI_API_KEY + settings: + model: gpt-4-1106-preview diff --git a/spec/tasks/run-all-models.rb b/spec/tasks/run-all-models.rb new file mode 100644 index 0000000..a7f4570 --- /dev/null +++ b/spec/tasks/run-all-models.rb @@ -0,0 +1,53 @@ +# 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 + +puts '[NO STREAM]' + +Dir['spec/data/cartridges/models/*/*.yml'].each do |path| + run_model!( + NanoBot::Logic::Helpers::Hash.symbolize_keys( + YAML.safe_load_file(path, permitted_classes: [Symbol]) + ), + false + ) +end + +puts "\n[STREAM]" + +Dir['spec/data/cartridges/models/*/*.yml'].each do |path| + run_model!( + NanoBot::Logic::Helpers::Hash.symbolize_keys( + YAML.safe_load_file(path, permitted_classes: [Symbol]) + ) + ) +end |