class Vellum::Client
def execute_prompt(inputs:, prompt_deployment_id: nil, prompt_deployment_name: nil, release_tag: nil,
-
(ExecutePromptResponse)-
Parameters:
-
request_options(RequestOptions) -- -
metadata(Hash{String => String}) -- -
expand_raw(Array) -- Returns the raw API response data sent from the model host. Combined with `raw_overrides`, it can be used to access new features from models. -
raw_overrides(Hash) -- Request of type RawPromptExecutionOverridesRequest, as a Hash -
expand_meta(Hash) -- The name of the Prompt Deployment. Must provide either this or prompt_deployment_id.Request of type PromptDeploymentExpandMetaRequestRequest, as a Hash -
external_id(String) -- "Optionally include a unique identifier for tracking purposes. Must be unique for a given prompt deployment. -
release_tag(String) -- Optionally specify a release tag if you want to pin to a specific release of the Prompt Deployment -
prompt_deployment_name(String) -- The name of the Prompt Deployment. Must provide either this or prompt_deployment_id. -
prompt_deployment_id(String) -- The ID of the Prompt Deployment. Must provide either this or prompt_deployment_name. -
inputs(Array) -- The list of inputs defined in the Prompt's deployment with their corresponding values.Request of type Array, as a Hash
def execute_prompt(inputs:, prompt_deployment_id: nil, prompt_deployment_name: nil, release_tag: nil, external_id: nil, expand_meta: nil, raw_overrides: nil, expand_raw: nil, metadata: nil, request_options: nil) response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil? req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact req.body = { **(request_options&.additional_body_parameters || {}), inputs: inputs, prompt_deployment_id: prompt_deployment_id, prompt_deployment_name: prompt_deployment_name, release_tag: release_tag, external_id: external_id, expand_meta: expand_meta, raw_overrides: raw_overrides, expand_raw: expand_raw, metadata: metadata }.compact req.url "#{@request_client.default_environment[:Predict]}/v1/execute-prompt" end ExecutePromptResponse.from_json(json_object: response.body) end
def execute_workflow(inputs:, workflow_deployment_id: nil, workflow_deployment_name: nil, release_tag: nil,
-
(ExecuteWorkflowResponse)-
Parameters:
-
request_options(RequestOptions) -- -
external_id(String) -- Optionally include a unique identifier for tracking purposes. Must be unique for a given workflow deployment. -
release_tag(String) -- Optionally specify a release tag if you want to pin to a specific release of the Workflow Deployment -
workflow_deployment_name(String) -- The name of the Workflow Deployment. Must provide either this or workflow_deployment_id. -
workflow_deployment_id(String) -- The ID of the Workflow Deployment. Must provide either this or workflow_deployment_name. -
inputs(Array) -- The list of inputs defined in the Workflow's Deployment with their corresponding values.Request of type Array, as a Hash
def execute_workflow(inputs:, workflow_deployment_id: nil, workflow_deployment_name: nil, release_tag: nil, external_id: nil, request_options: nil) response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil? req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact req.body = { **(request_options&.additional_body_parameters || {}), inputs: inputs, workflow_deployment_id: workflow_deployment_id, workflow_deployment_name: workflow_deployment_name, release_tag: release_tag, external_id: external_id }.compact req.url "#{@request_client.default_environment[:Predict]}/v1/execute-workflow" end ExecuteWorkflowResponse.from_json(json_object: response.body) end
def generate(requests:, deployment_id: nil, deployment_name: nil, options: nil, request_options: nil)
-
(GenerateResponse)-
Parameters:
-
request_options(RequestOptions) -- -
options(Hash) -- Additional configuration that can be used to control what's included in the response.Request of type GenerateOptionsRequest, as a Hash -
requests(Array) -- The generation request to make. Bulk requests are no longer supported, this field must be an array of length 1.Request of type Array, as a Hash -
deployment_name(String) -- The name of the deployment. Must provide either this or deployment_id. -
deployment_id(String) -- The ID of the deployment. Must provide either this or deployment_name.
def generate(requests:, deployment_id: nil, deployment_name: nil, options: nil, request_options: nil) response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil? req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact req.body = { **(request_options&.additional_body_parameters || {}), deployment_id: deployment_id, deployment_name: deployment_name, requests: requests, options: options }.compact req.url "#{@request_client.default_environment[:Predict]}/v1/generate" end GenerateResponse.from_json(json_object: response.body) end
def initialize(api_key:, environment: Environment::PRODUCTION, max_retries: nil, timeout_in_seconds: nil)
-
(Client)-
Parameters:
-
api_key(String) -- -
timeout_in_seconds(Long) -- -
max_retries(Long) -- The number of times to retry a failed request, defaults to 2. -
environment(Environment) --
def initialize(api_key:, environment: Environment::PRODUCTION, max_retries: nil, timeout_in_seconds: nil) @request_client = RequestClient.new(environment: environment, max_retries: max_retries, timeout_in_seconds: timeout_in_seconds, api_key: api_key) @deployments = DeploymentsClient.new(request_client: @request_client) @document_indexes = DocumentIndexesClient.new(request_client: @request_client) @documents = DocumentsClient.new(request_client: @request_client) @folder_entities = FolderEntitiesClient.new(request_client: @request_client) @model_versions = ModelVersionsClient.new(request_client: @request_client) @registered_prompts = RegisteredPromptsClient.new(request_client: @request_client) @sandboxes = SandboxesClient.new(request_client: @request_client) @test_suite_runs = TestSuiteRunsClient.new(request_client: @request_client) @test_suites = TestSuitesClient.new(request_client: @request_client) @workflow_deployments = WorkflowDeploymentsClient.new(request_client: @request_client) end
def search(query:, index_id: nil, index_name: nil, options: nil, request_options: nil)
-
(SearchResponse)-
Parameters:
-
request_options(RequestOptions) -- -
options(Hash) -- Configuration options for the search.Request of type SearchRequestOptionsRequest, as a Hash -
query(String) -- The query to search for. -
index_name(String) -- The name of the index to search against. Must provide either this or index_id. -
index_id(String) -- The ID of the index to search against. Must provide either this or index_name.
def search(query:, index_id: nil, index_name: nil, options: nil, request_options: nil) response = @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil? req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact req.body = { **(request_options&.additional_body_parameters || {}), index_id: index_id, index_name: index_name, query: query, options: options }.compact req.url "#{@request_client.default_environment[:Predict]}/v1/search" end SearchResponse.from_json(json_object: response.body) end
def submit_completion_actuals(actuals:, deployment_id: nil, deployment_name: nil, request_options: nil)
-
(Void)-
Parameters:
-
request_options(RequestOptions) -- -
actuals(Array) -- Feedback regarding the quality of previously generated completionsRequest of type Array, as a Hash -
deployment_name(String) -- The name of the deployment. Must provide either this or deployment_id. -
deployment_id(String) -- The ID of the deployment. Must provide either this or deployment_name.
def submit_completion_actuals(actuals:, deployment_id: nil, deployment_name: nil, request_options: nil) @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil? req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact req.body = { **(request_options&.additional_body_parameters || {}), deployment_id: deployment_id, deployment_name: deployment_name, actuals: actuals }.compact req.url "#{@request_client.default_environment[:Predict]}/v1/submit-completion-actuals" end end
def submit_workflow_execution_actuals(actuals:, execution_id: nil, external_id: nil, request_options: nil)
-
(Void)-
Parameters:
-
request_options(RequestOptions) -- -
external_id(String) -- The external ID that was originally provided by when executing the workflow, if applicable, that you'd now like to submit actuals for. Must provide either this or execution_id. -
execution_id(String) -- The Vellum-generated ID of a previously executed workflow. Must provide either this or external_id. -
actuals(Array) -- Feedback regarding the quality of an output on a previously executed workflow.Request of type Array, as a Hash
def submit_workflow_execution_actuals(actuals:, execution_id: nil, external_id: nil, request_options: nil) @request_client.conn.post do |req| req.options.timeout = request_options.timeout_in_seconds unless request_options&.timeout_in_seconds.nil? req.headers["X_API_KEY"] = request_options.api_key unless request_options&.api_key.nil? req.headers = { **req.headers, **(request_options&.additional_headers || {}) }.compact req.body = { **(request_options&.additional_body_parameters || {}), actuals: actuals, execution_id: execution_id, external_id: external_id }.compact req.url "#{@request_client.default_environment[:Predict]}/v1/submit-workflow-execution-actuals" end end