components/providers/openai.rb in nano-bots-0.0.1 vs components/providers/openai.rb in nano-bots-0.0.2

- old
+ new

@@ -22,10 +22,17 @@ uri_base: "#{@settings[:credentials][:address].sub(%r{/$}, '')}/", access_token: @settings[:credentials][:'access-token'] ) end + def stream(input) + provider = @settings.key?(:stream) ? @settings[:stream] : true + interface = input[:interface].key?(:stream) ? input[:interface][:stream] : true + + provider && interface + end + def evaluate(input, &block) messages = input[:history].map do |event| { role: event[:who] == 'user' ? 'user' : 'assistant', content: event[:message] } end @@ -49,10 +56,10 @@ payload[key] = @settings[key] if @settings.key?(key) end payload.delete(:logit_bias) if payload.key?(:logit_bias) && payload[:logit_bias].nil? - if @settings[:stream] && input[:interface][:stream] + if stream(input) content = '' payload[:stream] = proc do |chunk, _bytesize| partial = chunk.dig('choices', 0, 'delta', 'content') if partial