everyai 0.0.5 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/everyai/agent.rb +48 -0
- data/lib/everyai.rb +8 -5
- metadata +4 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eb5be648b3d839fdb8eb4412456aaf0a6c8877cc8e0509278f00c196212396be
|
4
|
+
data.tar.gz: 86758e35d6e225ae3bb354ac3616a68d16b9fc0557a609f5454457ab1361015d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b47113be928cb3ce172ad3b6d8550a11bfa23a6cd741666247a927d7b86ce4940633f89b60acfb8c3805182bc60759bf5ccbe51ceb805ae67252212e3c1b5078
|
7
|
+
data.tar.gz: 374742102725b2334a150dbddd62474bdeff72ceb067c4831e95cf9d61e3ac4c9d74543d3530ece53fc39d25968d72aa88376a080df727ed92f17395665fb08e
|
@@ -0,0 +1,48 @@
|
|
1
|
+
class Everyai
|
2
|
+
class Agent
|
3
|
+
AGENT_PATH = "#{Everyai::DOMAIN}/api/v1/agents"
|
4
|
+
AGENT_GENERATION_PATH = "#{AGENT_PATH}/generations"
|
5
|
+
|
6
|
+
class << self
|
7
|
+
def find(agent_id)
|
8
|
+
url = URI.parse(AGENT_PATH)
|
9
|
+
response = Net::HTTP.post_form(url, { "token": Everyai.api_key, "agent_id": agent_id })
|
10
|
+
body = JSON.parse(response.body)
|
11
|
+
if response.kind_of? Net::HTTPSuccess
|
12
|
+
body["results"]
|
13
|
+
new(agent_id)
|
14
|
+
else
|
15
|
+
body["errors"]
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
def generate(prompt, model: "llama3.2", **model_options)
|
20
|
+
agent_id = model_options[:agent_id]
|
21
|
+
options = model_options.except(:agent_id)
|
22
|
+
if !agent_id
|
23
|
+
{ errors: "You need to include an agent id first" }
|
24
|
+
end
|
25
|
+
|
26
|
+
agent = new(agent_id)
|
27
|
+
agent.generate(prompt, model: model, **model_options)
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
attr_reader :agent_id
|
32
|
+
|
33
|
+
def initialize(agent_id)
|
34
|
+
@agent_id = agent_id
|
35
|
+
end
|
36
|
+
|
37
|
+
def generate(prompt, model: "llama3.2", **model_options)
|
38
|
+
url = URI.parse(AGENT_GENERATION_PATH)
|
39
|
+
response = Net::HTTP.post_form(url, { "prompt": prompt, "model": model, "token": Everyai.api_key, "agent_id": agent_id, "options": model_options.to_json })
|
40
|
+
body = JSON.parse(response.body)
|
41
|
+
if response.kind_of? Net::HTTPSuccess
|
42
|
+
body["results"]
|
43
|
+
else
|
44
|
+
body["errors"]
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
data/lib/everyai.rb
CHANGED
@@ -3,7 +3,8 @@ require 'uri'
|
|
3
3
|
require 'json'
|
4
4
|
|
5
5
|
class Everyai
|
6
|
-
DOMAIN = "https://every-llm.com"
|
6
|
+
DOMAIN = "https://every-llm.com"
|
7
|
+
#DOMAIN = "http://localhost:3000"
|
7
8
|
API_GENERATIONS_PATH = "#{DOMAIN}/api/v1/generations"
|
8
9
|
|
9
10
|
class << self
|
@@ -17,9 +18,9 @@ class Everyai
|
|
17
18
|
@api_key
|
18
19
|
end
|
19
20
|
|
20
|
-
def generate(prompt, model: "llama3.
|
21
|
+
def generate(prompt, model: "llama3.2", **model_options)
|
21
22
|
url = URI.parse(API_GENERATIONS_PATH)
|
22
|
-
response = Net::HTTP.post_form(url, { "prompt": prompt, "model": model, "token": api_key })
|
23
|
+
response = Net::HTTP.post_form(url, { "prompt": prompt, "model": model, "token": api_key, "options": model_options.to_json })
|
23
24
|
body = JSON.parse(response.body)
|
24
25
|
if response.kind_of? Net::HTTPSuccess
|
25
26
|
body["results"]
|
@@ -32,8 +33,8 @@ class Everyai
|
|
32
33
|
generate(prompt, model: model )
|
33
34
|
end
|
34
35
|
|
35
|
-
def llama(prompt, model: "llama3.
|
36
|
-
generate(prompt, model: model)
|
36
|
+
def llama(prompt, model: "llama3.2", context: nil)
|
37
|
+
generate(prompt, model: model, context: context)
|
37
38
|
end
|
38
39
|
|
39
40
|
def anthropic(prompt, model: "anthropic")
|
@@ -41,3 +42,5 @@ class Everyai
|
|
41
42
|
end
|
42
43
|
end
|
43
44
|
end
|
45
|
+
|
46
|
+
require_relative 'everyai/agent'
|
metadata
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: everyai
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Enoch Tamulonis
|
8
8
|
- Kurt Tamulonis
|
9
|
-
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2025-01-15 00:00:00.000000000 Z
|
13
12
|
dependencies: []
|
14
13
|
description: This ruby gem allows you to connect to any AI model with one simple interface.
|
15
14
|
Never worry about configuration and installing libraries. We make connecting to
|
@@ -20,12 +19,12 @@ extensions: []
|
|
20
19
|
extra_rdoc_files: []
|
21
20
|
files:
|
22
21
|
- lib/everyai.rb
|
22
|
+
- lib/everyai/agent.rb
|
23
23
|
homepage: https://rubygems.org/gems/everyai
|
24
24
|
licenses:
|
25
25
|
- MIT
|
26
26
|
metadata:
|
27
27
|
source_code_uri: https://github.com/Every-LLM/every-ai-gem
|
28
|
-
post_install_message:
|
29
28
|
rdoc_options: []
|
30
29
|
require_paths:
|
31
30
|
- lib
|
@@ -40,8 +39,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
40
39
|
- !ruby/object:Gem::Version
|
41
40
|
version: '0'
|
42
41
|
requirements: []
|
43
|
-
rubygems_version: 3.
|
44
|
-
signing_key:
|
42
|
+
rubygems_version: 3.6.2
|
45
43
|
specification_version: 4
|
46
44
|
summary: Every AI ruby gem. Connect to any AI model easily
|
47
45
|
test_files: []
|