chat_gpt_error_handler 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8eb4d741fe11dd031e02e4405a131ba4a440a0306575a97246b6486de5f7ae3e
4
- data.tar.gz: 589d87cf005f91a365b9399e99a9d45711dce60d9847500790395c3173f9b097
3
+ metadata.gz: 66653c69558faf46858d9892cae31406a59ef8ded01b35fc2a34a499918f0144
4
+ data.tar.gz: b412a2641d9c98ae2c690576d41e85107e65015d1427e1b82311f727608ae485
5
5
  SHA512:
6
- metadata.gz: ef2028789e012e4856f1397fcf98c8e2ee3c593a4d22dec620d05a1b20c539b3103e6892e8463e59e1f19f2bee4fa892f49035f3ec80f3818ecf7d7a68663795
7
- data.tar.gz: cbf4c7bb9ebe54e539e543c36108387c089f9a2fb891968ddf0e7bf0f23a57c5a6d9eb179c3ba63a07da2603201a74e822fe74f1203eeac8648d158e2bf20477
6
+ metadata.gz: b4610b96802076855b71b75b7929c50f02518749afbde6643cdd04c9e1fc0e1188a221ff4372f7e60eae3304441f6f01cdd0daa8d7cdeeed7ac5dd46104e1b64
7
+ data.tar.gz: b92f12739b96255631b45cec85544dbd68f8697ddca6aaa501c85dc0115e4de68f73f8882fe41c60062e72d0d9f8521bdeb775e9a88107dc503d36c94dea7a44
@@ -46,48 +46,39 @@ module ChatGptErrorHandler
46
46
  }
47
47
  )
48
48
 
49
-
50
49
  # Try a second time if the response is empty. Raise the second time
51
50
  if response["choices"].nil?
52
- response = client.completions(
53
- parameters: {
54
- model: "text-davinci-002",
55
- prompt: prompt,
56
- n: 1,
57
- temperature: 0.85,
58
- max_tokens: 250,
59
- stop: nil
60
- }
61
- )
51
+ if @retried.nil?
52
+ @retried = true
53
+ redo
54
+ else
55
+ raise "GPT returned an empty response to your error message."
56
+ end
62
57
  end
63
58
 
64
- if true #response["choices"].nil?
65
- print_error_and_solution(error, "ChatGPT returned an empty response to your error message. You may need to try again.")
66
- else
67
- response_text = response["choices"].map { |c| c["text"].to_s }
59
+ response_text = response["choices"].map { |c| c["text"].to_s }
68
60
 
69
- response_text = response_text.join("")
70
- shortened_response_text = []
71
- begin
72
- # try to format the response text to be 75 characters per line
73
- response_text.split(" ").reduce("") do |line, word|
74
- if line.length + word.length > 75
75
- shortened_response_text << line
76
- line = word
77
- elsif word == response_text.split(" ").last
78
- shortened_response_text << [line + " " + word]
79
- else
80
- line += (" " + word)
81
- end
61
+ response_text = response_text.join("")
62
+ shortened_response_text = []
63
+ begin
64
+ # try to format the response text to be 75 characters per line
65
+ response_text.split(" ").reduce("") do |line, word|
66
+ if line.length + word.length > 75
67
+ shortened_response_text << line
68
+ line = word
69
+ elsif word == response_text.split(" ").last
70
+ shortened_response_text << [line + " " + word]
71
+ else
72
+ line += (" " + word)
82
73
  end
83
- shortened_response_text = shortened_response_text.join("\n")
84
- rescue => e
85
- # The formatting does not always work, so if it fails, just use the original response text
86
- shortened_response_text = response_text
87
74
  end
88
-
89
- print_error_and_solution(error, shortened_response_text.strip)
75
+ shortened_response_text = shortened_response_text.join("\n")
76
+ rescue => e
77
+ # The formatting does not always work, so if it fails, just use the original response text
78
+ shortened_response_text = response_text
90
79
  end
80
+
81
+ print_error_and_solution(error, shortened_response_text.strip)
91
82
  rescue => gpt_error
92
83
  puts "\e[31mAn error occurred while communicating with GPT:\e[0m"
93
84
  puts gpt_error.message
@@ -1,3 +1,3 @@
1
1
  module ChatGptErrorHandler
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chat_gpt_error_handler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Schwaderer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-06-02 00:00:00.000000000 Z
11
+ date: 2023-06-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails