SDKs
Ruby SDK
Install and use the Assisters Ruby SDK
Installation
gem install assistersOr add to your Gemfile:
gem 'assisters'Quick Start
require 'assisters'
client = Assisters::Client.new(api_key: ENV['ASSISTERS_API_KEY'])
response = client.chat.completions.create(
model: 'assisters-chat-v1',
messages: [{ role: 'user', content: 'Hello, world!' }]
)
puts response.choices.first.message.contentAvailable Methods
| Method | Description |
|---|---|
client.chat.completions.create(**params) | Create a chat completion; pass stream: true for streaming |
client.embeddings.create(**params) | Generate embeddings for one or more inputs |
client.moderations.create(**params) | Moderate text content |
client.rerank.create(**params) | Rerank documents against a query |
client.models.list | List all available models |
client.audio.transcriptions.create(**params) | Transcribe audio to text |
Parameters Reference
# chat/completions
client.chat.completions.create(
model: 'assisters-chat-v1',
messages: [{ role: 'user', content: '...' }],
temperature: 0.7, # optional
max_tokens: 1024, # optional
stream: false # optional
)
# embeddings
client.embeddings.create(
model: 'assisters-chat-v1',
input: ['text one', 'text two']
)
# rerank
client.rerank.create(
model: 'assisters-chat-v1',
query: 'search query',
documents: ['doc 1', 'doc 2'],
top_n: 3
)
# audio/transcriptions
client.audio.transcriptions.create(
file: File.open('/path/to/audio.mp3'),
model: 'assisters-chat-v1',
language: 'en'
)Streaming
client.chat.completions.create(
model: 'assisters-chat-v1',
messages: [{ role: 'user', content: 'Tell me a story' }],
stream: true
) do |chunk|
print chunk.choices.first.delta.content
$stdout.flush
endError Handling
begin
response = client.chat.completions.create(...)
rescue Assisters::APIError => e
puts "API error #{e.status}: #{e.message}"
rescue Assisters::NetworkError => e
puts "Network error: #{e.message}"
end