Class: RubyLLM::Providers::VertexAI::Mistral

Inherits:
RubyLLM::Protocols::ChatCompletions show all
Includes:
Mistral::Chat, Mistral::Embeddings, Mistral::Media, Mistral::Models
Defined in:
lib/ruby_llm/providers/vertexai/mistral.rb

Overview

Mistral's models speak their own dialect of Chat Completions over Vertex AI rawPredict endpoints. We reuse Mistral's dialect wholesale and only swap the URLs.

Constant Summary collapse

MODELS =

The Mistral model families Vertex AI serves directly. Shared by the registry (which models to list) and protocol_for (where to route them).

/\A(mistral|ministral|codestral|magistral|mathstral|pixtral|devstral|voxtral)/

Constants included from Mistral::Models

Mistral::Models::CAPABILITY_FLAGS

Constants included from Mistral::Chat

Mistral::Chat::PROMPT_CACHE_OPTIONS

Instance Attribute Summary

Attributes inherited from RubyLLM::Protocol

#config, #connection, #model, #provider

Instance Method Summary collapse

Methods included from Mistral::Models

capabilities_from, embedding_model?, metadata_from, modalities_from, models_dev_alias, models_url, parse_list_models_response

Methods included from Mistral::Media

format_content, format_document, format_image

Methods included from Mistral::Embeddings

embedding_url, parse_embedding_response, render_embedding_payload

Methods included from Mistral::Chat

append_formatted_content, build_thinking_blocks, build_tool_choice, format_cache_option_keys, format_message_content, format_role, format_thinking, normalize_required_tool_choice, openai_prompt_caching?, prompt_cache_options, prompt_cache_params, render_payload

Methods inherited from RubyLLM::Protocol

abstract, #animate_later, #apply_compaction, #apply_compaction_headers, #apply_end_user, #cache_content, #compact, #complete, #count_tokens, #delete_cache, #embed, #extend_cache, #find_cache, #initialize, #list_models, #moderate, #ocr, #paint, #parse_error, #parse_image_responses, #post_image, #post_video, #preprocess_message, #raise_transcription_streaming_unsupported, #refresh_video_job, #render, #render_embedding, #render_transcription_options, #render_video_extension_payload, #rerank, #server_tool_aliases, #speak, #stream_speech, #stream_speech_response, #stream_transcription, #supports_embedding_media?, #tokenize, #tool_approval_response, #transcribe, #video_extension_attachment, #video_extension_url, #video_request_url

Methods included from RubyLLM::Protocol::BinaryStreaming

#stream_binary

Methods included from RubyLLM::Protocol::Streaming

build_on_data_handler, build_stream_error_response, error_chunk?, failed_http_status, faraday_1?, handle_data, handle_error_chunk, handle_error_event, handle_failed_response, handle_json_error_chunk, handle_sse, handle_stream, json_error_payload?, parse_error_from_json, parse_streaming_error, process_stream_chunk, raise_stream_error, stream_events, stream_response, stream_state

Constructor Details

This class inherits a constructor from RubyLLM::Protocol

Instance Method Details

#completion_urlObject



18
19
20
# File 'lib/ruby_llm/providers/vertexai/mistral.rb', line 18

def completion_url
  "#{@provider.model_path(@model.id, publisher: 'mistralai')}:rawPredict"
end

#stream_urlObject



22
23
24
# File 'lib/ruby_llm/providers/vertexai/mistral.rb', line 22

def stream_url
  "#{@provider.model_path(@model.id, publisher: 'mistralai')}:streamRawPredict"
end