Sha256: e237e2c5f4b5141437a64aa240b30ae7c4ec8df60b25c2093a2087c380212043
Contents?: true
Size: 1.12 KB
Versions: 1
Compression:
Stored size: 1.12 KB
Contents
module Anthropic class Client extend Anthropic::HTTP def initialize(access_token: nil, organization_id: nil, uri_base: nil, request_timeout: nil, extra_headers: {}) Anthropic.configuration.access_token = access_token if access_token Anthropic.configuration.organization_id = organization_id if organization_id Anthropic.configuration.uri_base = uri_base if uri_base Anthropic.configuration.request_timeout = request_timeout if request_timeout Anthropic.configuration.extra_headers = extra_headers end def complete(parameters: {}) parameters[:prompt] = wrap_prompt(prompt: parameters[:prompt]) Anthropic::Client.json_post(path: "/complete", parameters: parameters) end def messages(parameters: {}) Anthropic::Client.json_post(path: "/messages", parameters: parameters) end private def wrap_prompt(prompt:, prefix: "\n\nHuman: ", suffix: "\n\nAssistant:") return if prompt.nil? prompt.prepend(prefix) unless prompt.start_with?(prefix) prompt.concat(suffix) unless prompt.end_with?(suffix) prompt end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
anthropic-0.2.0 | lib/anthropic/client.rb |