gen-ai 0.2.1 → 0.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +9 -2
- data/gen-ai.gemspec +3 -2
- data/lib/gen/ai.rb +3 -0
- data/lib/gen_ai/image/open_ai.rb +3 -1
- data/lib/gen_ai/version.rb +1 -1
- data/lib/gen_ai.rb +1 -1
- metadata +11 -8
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e6fbef446e1383e14734c390b0e342433991858e95a083e0aaf9a31f844f4503
|
4
|
+
data.tar.gz: e8bda40ea6377b4ada7175bcabae430681ac6d707c75cce745e4a079ce17dba9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ade0a401f9c6cb8fdb1c1de1fd5e31b52a79ffc69af2267644f4ffe6f2bf8892d3f92bcf1a2e2aebfd1ea0790dab1dd3a8c5b42fa59e870bc0cbab13766ce1b9
|
7
|
+
data.tar.gz: 39826a4c7f854b2a0ffd24010306e612b2cad1465e60719ba518f5b2ee43a17338c268684e615b376388f280dd20740f750fc6c8e5b49dfbc822c1f2873ba9f6
|
data/README.md
CHANGED
@@ -20,13 +20,20 @@ If bundler is not being used to manage dependencies, install the gem by executin
|
|
20
20
|
|
21
21
|
## Usage
|
22
22
|
|
23
|
+
Require it in you code:
|
24
|
+
```ruby
|
25
|
+
require 'gen_ai'
|
26
|
+
```
|
27
|
+
|
28
|
+
|
29
|
+
|
23
30
|
### Feature support
|
24
31
|
✅ - Supported | ❌ - Not supported | 🛠️ - Work in progress
|
25
32
|
|
26
33
|
Language models capabilities
|
27
34
|
|
28
35
|
| Provider | Embedding | Completion | Conversation | Sentiment | Summarization |
|
29
|
-
| ---------------- |
|
36
|
+
| ---------------- | :-------: | :--------: | :----------: | :-------: | :-----------: |
|
30
37
|
| **OpenAI** | ✅ | ✅ | ✅ | 🛠️ | 🛠️ |
|
31
38
|
| **Google Palm2** | ✅ | ✅ | ✅ | 🛠️ | 🛠️ |
|
32
39
|
|
@@ -34,7 +41,7 @@ Language models capabilities
|
|
34
41
|
Image generation model capabilities
|
35
42
|
|
36
43
|
| Provider | Generate | Variations | Edit | Upscale |
|
37
|
-
| ---------------- |
|
44
|
+
| ---------------- | :-------: | :--------: | :----------: | :-------: |
|
38
45
|
| **OpenAI** | ✅ | ✅ | ✅ | ❌ |
|
39
46
|
| **StabilityAI** | ✅ | ❌ | ✅ | ✅ |
|
40
47
|
|
data/gen-ai.gemspec
CHANGED
@@ -9,8 +9,9 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.email = ['alchaplinsky@gmail.com']
|
10
10
|
|
11
11
|
spec.summary = 'Generative AI toolset for Ruby.'
|
12
|
-
spec.description = 'Generative AI
|
12
|
+
spec.description = 'GenAI allows you to easily integrate Generative AI model providers like OpenAI, Google Vertex AI, Stability AI, etc'
|
13
13
|
spec.homepage = 'https://github.com/alchaplinsky/gen-ai'
|
14
|
+
spec.licenses = ['MIT']
|
14
15
|
spec.required_ruby_version = '>= 2.7.0'
|
15
16
|
|
16
17
|
# spec.metadata["allowed_push_host"] = "TODO: Set to your gem server 'https://example.com'"
|
@@ -33,7 +34,7 @@ Gem::Specification.new do |spec|
|
|
33
34
|
|
34
35
|
# Uncomment to register a new dependency of your gem
|
35
36
|
spec.add_dependency 'faraday', '~> 2.7'
|
36
|
-
spec.add_dependency 'faraday-multipart'
|
37
|
+
spec.add_dependency 'faraday-multipart', '~> 1.0'
|
37
38
|
spec.add_dependency 'zeitwerk', '~> 2.6'
|
38
39
|
|
39
40
|
spec.add_development_dependency 'google_palm_api', '~> 0.1'
|
data/lib/gen/ai.rb
ADDED
data/lib/gen_ai/image/open_ai.rb
CHANGED
@@ -4,6 +4,7 @@ module GenAI
|
|
4
4
|
class Image
|
5
5
|
class OpenAI < Base
|
6
6
|
DEFAULT_SIZE = '256x256'
|
7
|
+
DEFAULT_MODEL = 'dall-e-3'
|
7
8
|
RESPONSE_FORMAT = 'b64_json'
|
8
9
|
|
9
10
|
def initialize(token:, options: {})
|
@@ -19,7 +20,7 @@ module GenAI
|
|
19
20
|
|
20
21
|
build_result(
|
21
22
|
raw: response,
|
22
|
-
model:
|
23
|
+
model: parameters[:model],
|
23
24
|
parsed: response['data'].map { |datum| datum[RESPONSE_FORMAT] }
|
24
25
|
)
|
25
26
|
end
|
@@ -54,6 +55,7 @@ module GenAI
|
|
54
55
|
{
|
55
56
|
prompt: prompt,
|
56
57
|
size: options.delete(:size) || DEFAULT_SIZE,
|
58
|
+
model: options.delete(:model) || DEFAULT_MODEL,
|
57
59
|
response_format: options.delete(:response_format) || RESPONSE_FORMAT
|
58
60
|
}.merge(options)
|
59
61
|
end
|
data/lib/gen_ai/version.rb
CHANGED
data/lib/gen_ai.rb
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require 'zeitwerk'
|
4
|
-
require 'pry'
|
5
4
|
|
6
5
|
loader = Zeitwerk::Loader.for_gem
|
7
6
|
loader.inflector.inflect(
|
@@ -9,6 +8,7 @@ loader.inflector.inflect(
|
|
9
8
|
'open_ai' => 'OpenAI',
|
10
9
|
'stability_ai' => 'StabilityAI'
|
11
10
|
)
|
11
|
+
loader.ignore("#{__dir__}/gen")
|
12
12
|
loader.setup
|
13
13
|
|
14
14
|
module GenAI
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gen-ai
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Chaplinsky
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-11-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -28,16 +28,16 @@ dependencies:
|
|
28
28
|
name: faraday-multipart
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
33
|
+
version: '1.0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '0'
|
40
|
+
version: '1.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: zeitwerk
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,7 +80,8 @@ dependencies:
|
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '5.1'
|
83
|
-
description: Generative AI
|
83
|
+
description: GenAI allows you to easily integrate Generative AI model providers like
|
84
|
+
OpenAI, Google Vertex AI, Stability AI, etc
|
84
85
|
email:
|
85
86
|
- alchaplinsky@gmail.com
|
86
87
|
executables: []
|
@@ -95,6 +96,7 @@ files:
|
|
95
96
|
- README.md
|
96
97
|
- Rakefile
|
97
98
|
- gen-ai.gemspec
|
99
|
+
- lib/gen/ai.rb
|
98
100
|
- lib/gen_ai.rb
|
99
101
|
- lib/gen_ai/api/client.rb
|
100
102
|
- lib/gen_ai/base.rb
|
@@ -111,7 +113,8 @@ files:
|
|
111
113
|
- lib/gen_ai/version.rb
|
112
114
|
- sig/gen_ai.rbs
|
113
115
|
homepage: https://github.com/alchaplinsky/gen-ai
|
114
|
-
licenses:
|
116
|
+
licenses:
|
117
|
+
- MIT
|
115
118
|
metadata:
|
116
119
|
homepage_uri: https://github.com/alchaplinsky/gen-ai
|
117
120
|
source_code_uri: https://github.com/alchaplinsky/gen-ai
|