Class: Deepseek::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/deepseek.rb

Instance Method Summary collapse

Constructor Details

#initializeClient

Returns a new instance of Client.



9
10
# File 'lib/deepseek.rb', line 9

def initialize
end

Instance Method Details

#chat(parameters:) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/deepseek.rb', line 12

def chat(parameters:)
  base_uri = URI(Deepseek.configuration.base_uri || "https://api.deepseek.com")
  uri = base_uri + '/chat/completions'
  request = Net::HTTP::Post.new(uri, headers)
  request.body = parameters.to_json

  response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
    http.request(request)
  end
  if response.is_a?(Net::HTTPSuccess)
    raise DeepseekClientError, "empty response" if response.body.empty?
    JSON.parse(response.body)
  end

rescue Net::ReadTimeout => e
  raise DeepseekClientError, e.message
end