ai_chatbot 0.1.4 → 0.1.5

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: 12bcba7047f40d05685eec1c6a6714d7b8b6d57b092df1dcf6e382040af48182
4
- data.tar.gz: ede7b3ccff3faecf008c681c649f7ac3732bebbd2a46f7801a313a0d64507ce4
3
+ metadata.gz: 06bf16d383baea57ccc0bdbdcd1e041683130f0ef85120ca5af04b24cf64bbf9
4
+ data.tar.gz: d98da511ebcfbc645ffd5182db2e3c31703786714f98fb0374ec203386644439
5
5
  SHA512:
6
- metadata.gz: 991397292bed26854442cc630a87539fbb3ccba1cf81f6af673db57b607e56fdf150d4d905b00709b2c81ea6b4510759d7785f6ba16e44d58eab6e371b4ee581
7
- data.tar.gz: f5312f608a08cffac6ef4ad93b4e7aed47191fdf0af0b7337a93bc13a9605e09db4eec91176b7dcc16c155af310d38d359fb03314bdd918b291f008579b56926
6
+ metadata.gz: c4e7bf28f9d9b7568aa3dbe736b546018315f1d4dabd5b2d3ceff26dc3e12fc396f8ae35f32236900b8c39f8a1eadf889c93e8ba6bb37cebc14ef7402bcc0606
7
+ data.tar.gz: 8fdba9ecec76779184a18098395ba4a6d3b173c4e788ed40d0c3f2c2300a4ad2fb4a05a41928e82995fe7ad39d95576b996aa5e78d17dc54826a48243d2bab64
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module AiChatbot
4
- VERSION = "0.1.4"
4
+ VERSION = "0.1.5"
5
5
  end
data/lib/ai_chatbot.rb CHANGED
@@ -23,5 +23,39 @@ module AiChatbot
23
23
  raise "Error: #{stderr}"
24
24
  end
25
25
  end
26
+
27
+
28
+ # Method to train the model with a new question-answer pair
29
+ def self.update_answer(existing_question, new_answer)
30
+ stdout, stderr, status = Open3.capture3("python3", "#{__dir__}/ml_model.py", "update_answer", new_question, new_answer)
31
+
32
+ if status.success?
33
+ return stdout.strip
34
+ else
35
+ raise "Error: #{stderr}"
36
+ end
37
+ end
38
+
39
+ def self.update_question(existing_question, new_question)
40
+ stdout, stderr, status = Open3.capture3("python3", "#{__dir__}/ml_model.py", "update_question", new_question, new_answer)
41
+
42
+ if status.success?
43
+ return stdout.strip
44
+ else
45
+ raise "Error: #{stderr}"
46
+ end
47
+ end
48
+
49
+ def self.list_of_questions
50
+ stdout, stderr, status = Open3.capture3("python3", "#{__dir__}/ml_model.py", "list_questions")
51
+
52
+ if status.success?
53
+ return stdout.strip
54
+ else
55
+ raise "Error: #{stderr}"
56
+ end
57
+ end
58
+
59
+
26
60
  end
27
61
  end
data/lib/ml_model.py CHANGED
@@ -34,9 +34,11 @@ def main(action, query=None, new_answer=None):
34
34
  return get_prediction(query)
35
35
  elif action == "train":
36
36
  return train_model(query, new_answer)
37
- elif action == "update":
37
+ elif action == "update_answer":
38
38
  return update_answer(query, new_answer)
39
- elif action == "list":
39
+ elif action == "update_question":
40
+ return update_answer(query, new_question)
41
+ elif action == "list_questions":
40
42
  return list_questions()
41
43
 
42
44
  # Function to predict the response with confidence check
@@ -90,7 +92,7 @@ def update_answer(existing_question, new_answer):
90
92
  return "Question not found. Please provide a valid question."
91
93
 
92
94
  def update_question(existing_question, new_question):
93
- global existing_question, new_question
95
+ global questions, new_question
94
96
 
95
97
  if existing_question in questions:
96
98
  # Find the index of the existing question
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ai_chatbot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sanket