llamafile 0.3.6 → 0.3.7

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0a99feb7459f14bfe82ae4e2dff0dc95ab9255cade3c6bea2ea40c799ba2e378
4
- data.tar.gz: fbada2bf44eff4ea984a65dd17694939ad1af8ce6b2a59f3eccf465328e6e81a
3
+ metadata.gz: c08f0c8c4a3230f3a43e859ea03d391a5a48790202cc558a32dcf7d97522be08
4
+ data.tar.gz: e0c73f07843c6d70dd036e742f653b4123b5e728e13e3cf40b128006d4e9a6e6
5
5
  SHA512:
6
- metadata.gz: f4ddc5af73f12475645372f529a03a52ceaa6dd1592a9ae4f0e30751988abc29c045d87fce042d5f467f0c6d3a2612fb2702d8707aff28ee34bf920d82acf6fc
7
- data.tar.gz: 9d4c6f0ba8e32f375b921b7ab4e67cb46981a4e601da899850618b3b048885d10b1ec0a41b18da2501b85e94740985bb40fca6cfdf16eb0ef3b630eff8d9496b
6
+ metadata.gz: a01711608b5ebe36229d9d79b19fa486864ba11b7e799755f9be53bfe8fe4570fb72877a82e6bd8944bf22a2bb4fdc55d229450d0595e72a51a9fa63f53399ba
7
+ data.tar.gz: 92561b3595845a9a25f468220847a8e527b13ebccc4ce6c97c16d45f703153033fa9d543d6cfb2c35c13288373a95db662cc6298f639c6c912c364be29e5fcb0
@@ -52,15 +52,6 @@ module LLAMA
52
52
  end
53
53
  end
54
54
 
55
- # LLAMA.post prompt: PROMPT.make("prompt template", params={})
56
-
57
- def self.<< i
58
- fiber = Fiber.new do |ii|
59
- Fiber.yield LLAMA.post(prompt: ii)
60
- end
61
- fiber.resume i
62
- end
63
-
64
55
  def self.make h={}
65
56
  fiber = Fiber.new do |hh|
66
57
  if r = LLAMA.post(prompt: PROMPT.make(hh))
@@ -82,5 +73,26 @@ module LLAMA
82
73
  end
83
74
  fiber.resume h
84
75
  end
76
+
77
+ def self.test h={}
78
+ fiber = Fiber.new do |hh|
79
+ hh[:grammar] = GRAMMAR[:bool]
80
+ if LLAMA.post(hh) == 'yes'
81
+ Fiber.yield true
82
+ else
83
+ Fiber.yield false
84
+ end
85
+ end
86
+ fiber.resume h
87
+ end
88
+
89
+ def self.prompt h={}, &b
90
+ if block_given?
91
+ fiber = Fiber.new { |hh| Fiber.yield b.call(LLAMA.post(hh)) }
92
+ else
93
+ fiber = Fiber.new { |hh| Fiber.yield LLAMA.post(hh) }
94
+ end
95
+ fiber.resume h
96
+ end
85
97
  end
86
98
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Llamafile
4
- VERSION = "0.3.6"
4
+ VERSION = "0.3.7"
5
5
  end
data/lib/llamafile.rb CHANGED
@@ -6,22 +6,19 @@ require_relative "llamafile/version"
6
6
  require_relative "llamafile/mind"
7
7
  require_relative "llamafile/llama"
8
8
  require_relative "llamafile/grammar"
9
- require_relative "llamafile/prompt"
10
- require_relative "llamafile/voice"
9
+ #require_relative "llamafile/prompt"
10
+ #require_relative "llamafile/voice"
11
11
 
12
12
  module Lf
13
13
  def self.make h={}
14
14
  LLAMA.make h
15
15
  end
16
- def self.<< p
17
- LLAMA << p
18
- end
19
16
  def self.if? h={}
20
17
  LLAMA.if?(h)
21
18
  end
22
19
  end
23
20
 
24
- require_relative "llamafile/actor"
21
+ #require_relative "llamafile/actor"
25
22
 
26
23
  VOICE.hear = lambda { |tgt, voice, payload| puts %[VOICE #{tgt}: #{voice} #{payload}]; MIND.publish(%[#{tgt}/], %[Thinking like a #{voice}, #{payload}]) }
27
24
  MIND.input = lambda { |tgt, payload| puts %[THINK INPUT #{tgt}: #{payload}]; VOICE.hear(tgt, payload); }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: llamafile
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.6
4
+ version: 0.3.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erik Olson