walkthrough_awanllm 0.1.15 → 0.1.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +8 -12
- data/lib/walkthrough_awanllm/cli.rb +15 -0
- data/lib/walkthrough_awanllm/version.rb +1 -1
- data/lib/walkthrough_awanllm.rb +67 -63
- data/walkthrough_awanllm-0.1.13.gem +0 -0
- data/walkthrough_awanllm-0.1.14.gem +0 -0
- data/walkthrough_awanllm-0.1.15.gem +0 -0
- data/walkthrough_awanllm-0.1.16.gem +0 -0
- data/walkthrough_awanllm.gemspec +2 -1
- metadata +21 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d0615e28a2972336a7566368efc2c7732127052335a742318d42acfbf5bccac4
|
4
|
+
data.tar.gz: c465b434f73ca37989297b1204e77203d2611ca99009812b2eb2d2d35bc2443a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2a66e0af04d9ce9f28f63a195349990a13d1deb57821651f0eaf3fef70931d012a808916a96a66eac631c8561ae8c0fe7d1ddcbd7a6b5f9433ba59b75f934174
|
7
|
+
data.tar.gz: da21f83d222c036a7d699ec78efdd4a37e1bdef91fc0e40a28b17f218c40a578c5f7b8552943ede8e06a6a8dace8ee8db9cfc8a1510866a6c4c087cb8e839121
|
data/README.md
CHANGED
@@ -30,29 +30,25 @@ $ gem install walkthrough_awanllm
|
|
30
30
|
After installing the gem, you need to configure it by running the setup script. This will prompt you for your AwanLLM API key and the model name you wish to use.
|
31
31
|
|
32
32
|
```sh
|
33
|
-
$ ruby ./vendor/bundle/ruby/YOUR_VERSION/gems/walkthrough_awanllm-0.1.
|
33
|
+
$ ruby ./vendor/bundle/ruby/YOUR_VERSION/gems/walkthrough_awanllm-0.1.17/bin/setup_awanllm.rb
|
34
34
|
```
|
35
35
|
|
36
36
|
## Usage
|
37
37
|
|
38
|
-
### Generating Content
|
39
38
|
|
40
|
-
|
39
|
+
### Generating a Walkthrough
|
40
|
+
|
41
|
+
To generate a detailed walkthrough of your project's activities:
|
41
42
|
|
42
43
|
```ruby
|
43
44
|
require 'walkthrough_awanllm'
|
44
45
|
|
45
|
-
|
46
|
-
|
47
|
-
puts response
|
48
|
-
```
|
49
|
-
|
50
|
-
### Generating a Walkthrough
|
46
|
+
# Create an instance of AwanLLM
|
47
|
+
awanllm = AwanLLM.new
|
51
48
|
|
52
|
-
|
49
|
+
# Generate a walkthrough
|
50
|
+
awanllm.generate_walkthrough
|
53
51
|
|
54
|
-
```ruby
|
55
|
-
llm.generate_walkthrough
|
56
52
|
```
|
57
53
|
|
58
54
|
This will read the activity log and generate a `walkthrough.md` file in the project's root directory.
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# lib/walkthrough_awanllm/cli.rb
|
2
|
+
|
3
|
+
require 'thor'
|
4
|
+
|
5
|
+
module WalkthroughAwanllm
|
6
|
+
class CLI < Thor
|
7
|
+
desc "generate_walkthrough", "Generate the walkthrough.md file"
|
8
|
+
def generate_walkthrough
|
9
|
+
awanllm = AwanLLM.new
|
10
|
+
awanllm.generate_walkthrough
|
11
|
+
puts "Walkthrough generated successfully!"
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
data/lib/walkthrough_awanllm.rb
CHANGED
@@ -1,85 +1,89 @@
|
|
1
1
|
require 'httparty'
|
2
2
|
require 'json'
|
3
|
-
|
3
|
+
require_relative "walkthrough_awanllm/cli"
|
4
|
+
require_relative "walkthrough_awanllm/version"
|
5
|
+
require_relative "walkthrough_awanllm/railtie" if defined?(Rails)
|
4
6
|
|
5
|
-
|
6
|
-
|
7
|
-
|
7
|
+
module WalkthroughAwanllm
|
8
|
+
class AwanLLM
|
9
|
+
include HTTParty
|
10
|
+
base_uri 'https://api.awanllm.com/v1'
|
8
11
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
12
|
+
def initialize(api_key = nil, model_name = nil)
|
13
|
+
if api_key.nil? || model_name.nil?
|
14
|
+
config = JSON.parse(File.read("config/awanllm_config.json"))
|
15
|
+
@api_key = config["api_key"]
|
16
|
+
@model_name = config["model_name"]
|
17
|
+
else
|
18
|
+
@api_key = api_key
|
19
|
+
@model_name = model_name
|
20
|
+
end
|
18
21
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
22
|
+
@headers = {
|
23
|
+
'Content-Type' => 'application/json',
|
24
|
+
'Authorization' => "Bearer #{@api_key}"
|
25
|
+
}
|
26
|
+
end
|
24
27
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
28
|
+
def generate_content(messages = nil, prompt = nil, options = {})
|
29
|
+
payload = { model: @model_name }
|
30
|
+
payload[:messages] = messages if messages
|
31
|
+
payload[:prompt] = prompt if prompt
|
32
|
+
payload.merge!(options)
|
30
33
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
+
response = self.class.post('/completions', headers: @headers, body: payload.to_json)
|
35
|
+
handle_response(response)
|
36
|
+
end
|
34
37
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
38
|
+
def retrieve_content(content_id)
|
39
|
+
response = self.class.get("/completions/#{content_id}", headers: @headers)
|
40
|
+
handle_response(response)
|
41
|
+
end
|
39
42
|
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
+
def generate_walkthrough
|
44
|
+
activities = File.read("log/awanllm_activity.log")
|
45
|
+
prompt = "Here is a log of activities:\n#{activities}\nGenerate a detailed walkthrough based on these activities. It should include the steps taken and the expected outcomes."
|
43
46
|
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
47
|
+
options = {
|
48
|
+
temperature: 0.7,
|
49
|
+
top_p: 0.9,
|
50
|
+
max_tokens: 1024
|
51
|
+
}
|
49
52
|
|
50
|
-
|
51
|
-
|
53
|
+
response = generate_content(nil, prompt, options)
|
54
|
+
walkthrough = response['choices'][0]['text']
|
52
55
|
|
53
|
-
|
54
|
-
|
56
|
+
File.open("walkthrough.md", "w") do |file|
|
57
|
+
file.write(walkthrough)
|
58
|
+
end
|
55
59
|
end
|
56
|
-
end
|
57
60
|
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
+
def self.activate!
|
62
|
+
require 'fileutils'
|
63
|
+
require 'json'
|
61
64
|
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
65
|
+
# Run the installation script
|
66
|
+
if File.exist?('config/awanllm_config.json')
|
67
|
+
puts 'Walkthrough_AwanLLM gem is already configured.'
|
68
|
+
else
|
69
|
+
ruby_version = RUBY_VERSION.split('.').first(3).join('.')
|
70
|
+
path_to_script = "./vendor/bundle/ruby/#{ruby_version}/gems/walkthrough_awanllm-0.1.17/bin/setup_awanllm.rb"
|
71
|
+
system("ruby #{path_to_script}")
|
72
|
+
end
|
69
73
|
end
|
70
|
-
end
|
71
74
|
|
72
|
-
|
73
|
-
|
75
|
+
# Activate the gem automatically after installation
|
76
|
+
activate!
|
74
77
|
|
75
|
-
|
78
|
+
private
|
76
79
|
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
80
|
+
def handle_response(response)
|
81
|
+
if response.success?
|
82
|
+
JSON.parse(response.body)
|
83
|
+
else
|
84
|
+
error_message = JSON.parse(response.body)['error']['message'] rescue response.message
|
85
|
+
raise "Error: #{response.code} - #{error_message}"
|
86
|
+
end
|
83
87
|
end
|
84
88
|
end
|
85
89
|
end
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/walkthrough_awanllm.gemspec
CHANGED
@@ -33,12 +33,13 @@ Gem::Specification.new do |spec|
|
|
33
33
|
spec.executables = ["setup_awanllm.rb"]
|
34
34
|
spec.require_paths = ["lib"]
|
35
35
|
spec.add_dependency "httparty"
|
36
|
+
spec.add_dependency "thor"
|
36
37
|
spec.add_development_dependency "bundler", "~> 2.0"
|
37
38
|
spec.add_development_dependency "rake", "~> 13.0"
|
38
39
|
spec.add_development_dependency "minitest", "~> 5.0"
|
39
40
|
spec.post_install_message = <<-MESSAGE
|
40
41
|
Thank you for installing the Walkthrough_AwanLLM gem!
|
41
42
|
To complete the setup, please run the following command:
|
42
|
-
ruby ./vendor/bundle/ruby/#{RUBY_VERSION.split('.').first(3).join('.')}/gems/walkthrough_awanllm-0.1.
|
43
|
+
ruby ./vendor/bundle/ruby/#{RUBY_VERSION.split('.').first(3).join('.')}/gems/walkthrough_awanllm-0.1.17/bin/setup_awanllm.rb
|
43
44
|
MESSAGE
|
44
45
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: walkthrough_awanllm
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mrudul John
|
@@ -24,6 +24,20 @@ dependencies:
|
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: thor
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
27
41
|
- !ruby/object:Gem::Dependency
|
28
42
|
name: bundler
|
29
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -82,10 +96,15 @@ files:
|
|
82
96
|
- Rakefile
|
83
97
|
- bin/setup_awanllm.rb
|
84
98
|
- lib/walkthrough_awanllm.rb
|
99
|
+
- lib/walkthrough_awanllm/cli.rb
|
85
100
|
- lib/walkthrough_awanllm/railtie.rb
|
86
101
|
- lib/walkthrough_awanllm/version.rb
|
87
102
|
- sig/walkthrough_awanllm.rbs
|
88
103
|
- walkthrough_awanllm-0.1.11.gem
|
104
|
+
- walkthrough_awanllm-0.1.13.gem
|
105
|
+
- walkthrough_awanllm-0.1.14.gem
|
106
|
+
- walkthrough_awanllm-0.1.15.gem
|
107
|
+
- walkthrough_awanllm-0.1.16.gem
|
89
108
|
- walkthrough_awanllm.gemspec
|
90
109
|
homepage: https://github.com/mruduljohn/Walkthrough_awanllm_gem
|
91
110
|
licenses:
|
@@ -95,7 +114,7 @@ metadata:
|
|
95
114
|
post_install_message: |2
|
96
115
|
Thank you for installing the Walkthrough_AwanLLM gem!
|
97
116
|
To complete the setup, please run the following command:
|
98
|
-
ruby ./vendor/bundle/ruby/3.3.0/gems/walkthrough_awanllm-0.1.
|
117
|
+
ruby ./vendor/bundle/ruby/3.3.0/gems/walkthrough_awanllm-0.1.17/bin/setup_awanllm.rb
|
99
118
|
rdoc_options: []
|
100
119
|
require_paths:
|
101
120
|
- lib
|