luogu 0.1.4 → 0.1.6

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: c80b1178376383a11b89b3228aadcab81c58446c1cd5b84e9f26d8684c94d541
4
- data.tar.gz: a249cbcb501e5a80b2c46ea43cdc85b10cb5b58a0eaba6f73fb79992625e5037
3
+ metadata.gz: 5dc8912fdf448f5a9cb2f27d32125bf5a82b5231a8c74f36c03c2269d3345a14
4
+ data.tar.gz: 9039e6a2ebf32390d96625e734e63c49a9fda770945d8240a4a11dc3d8af114b
5
5
  SHA512:
6
- metadata.gz: 3096c1247c8c1eacc38ef6847f120036d37f753b0a5ede439b279345c473598d85db1a66b9db703dd26b6113612eec98679c2af2de0c00dae71ae345956d5bfa
7
- data.tar.gz: 24d27201d1cc31e9e01361448fba1fef1abc1c1459a70908849ba86fe57132f7ffa5eee30cf8eddf60065a82c5590cc178a9d9564eab384a10dbfadd31e4322b
6
+ metadata.gz: bfc85f6ebf5dc6970243291b277654a86adc93d3a917e4c571f7e2a7b08bbc74fd7d20ee5fbacd4981ba8b983f9b1da05fe97a60da9b8a3b607a4fe5bf8b6b7b
7
+ data.tar.gz: e5b8db6cb68a539ec09f706fed396dfafccc352817f1072616b66db77843d95fea9c67374fda515407c75cb71273523d0c8ede5793387a4663ab8c8ca9848480
data/README.md CHANGED
@@ -13,6 +13,7 @@
13
13
  - luogu build <file> 编译成对应的json
14
14
  - luogu run <file> 测试prompt
15
15
  - luogu gen <prompt.json file> <target.md> 用来逆向生成md文件的命令
16
+ - luogu test <file> <yml> 用来跑自动化测试 yaml 一行一句话
16
17
 
17
18
  你可以在项目目录的.env中设置下面的环境变量,或者直接系统设置
18
19
  ```
data/lib/luogu/chatgpt.rb CHANGED
@@ -85,6 +85,16 @@ module Luogu
85
85
  end
86
86
  end
87
87
 
88
+ def playload(messages)
89
+ messages.each do |message|
90
+ puts "test: #{message}"
91
+ self.puts self.chat(message)
92
+ end
93
+ now = Time.now.to_i
94
+ self.class.save @row_history, "./prompt.row_history.test-#{now}.md"
95
+ self.class.save @history.to_a, "./prompt.history.test-#{now}.md"
96
+ end
97
+
88
98
  class << self
89
99
  def save(history, file_path)
90
100
  text = ""
data/lib/luogu/cli.rb CHANGED
@@ -12,6 +12,7 @@ module Luogu
12
12
  luogu build <file> -> 编译prompt
13
13
  luogu run <file> -> 测试 prompt
14
14
  luogu gen <file> <target> -> 根据 json 生成 prompt 文件
15
+ luogu test <file> <test_file.yml> -> 根据 yaml 来对 prompt 进行测试
15
16
  """
16
17
  exit
17
18
  end
@@ -37,6 +38,16 @@ module Luogu
37
38
  chatgpt = ChatGPT.save(json, args.last)
38
39
  end
39
40
 
41
+ subcommands['test'] = Proc.new do |args|
42
+ promtpt_file = args.first
43
+ promtpt_test_file = args.last
44
+
45
+ chatgpt = ChatGPT.new(args.first)
46
+
47
+ messages = YAML.load_file(promtpt_test_file)
48
+ chatgpt.playload messages
49
+ end
50
+
40
51
  if subcommands.key?(ARGV.first)
41
52
  subcommands[ARGV.first].call(ARGV[1..-1])
42
53
  else
data/lib/luogu/init.rb CHANGED
@@ -2,6 +2,7 @@ require "openai"
2
2
  require 'dotenv/load'
3
3
  require "tty-prompt"
4
4
  require 'json'
5
+ require 'yaml'
5
6
  require 'optparse'
6
7
 
7
8
  require_relative 'history_queue'
data/lib/luogu/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Luogu
4
- VERSION = "0.1.4"
4
+ VERSION = "0.1.6"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: luogu
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - MJ