Skip to content
HIPS
  • Earn with your GPU
  • Pricing
  • Docs
Sign inJoin early access
⌘K

Get started

  1. 01Developer hub
  2. 02Quickstart
  3. 03Migrate to HIPS

Guides

  1. 04HIPS SDK
  2. 05Import and run your model
  3. 06Model and task guides
    1. ATask guides
    2. BLanguage (chat)
    3. CClassification
    4. DImage
    5. EVideo
    6. FAudio
    7. GDocument processing
  4. 07Batch jobs
  5. 08Prompt caching
  6. 09Coding-tool setup
    1. AClaude Code
    2. BOther coding tools and editor integrations
  7. 10Command line
    1. ASign in
  8. 11Console
    1. AAccount
    2. BWorkspaces
    3. CAPI keys
    4. DSettings
    5. EUsage
    6. FModels
    7. GPlayground
    8. HDeployments
  9. 12Billing
  10. 13Provider setup
    1. AWhen it works
    2. BCommands
    3. CSettings
    4. DProvider Console
    5. EEarnings
    6. FCrash reports
    7. GData centers
  11. 14Router
  12. 15Guardrails
  13. 16Knowledge

Reference

  1. 17API reference
    1. AAuthentication
    2. BChat completions
    3. CResponses
    4. DMessages
    5. ECount tokens
    6. FModels
    7. GTasks
    8. HEmbeddings and rerank
    9. IJobs
    10. JUploads
    11. KFiles
    12. LBatches
    13. MWebhooks
    14. NVector stores
    15. ODeployments
    16. PRequirements and headers
    17. QErrors
    18. RUsage
    19. SVersioning
  2. 18Operating guidance
    1. ALimits
    2. BErrors
    3. CRetries and billing outcomes
    4. DIdempotency
    5. EStreaming
    6. FData handling
    7. GCompatibility matrix
  3. 19Changelog
Sheet indexAPI reference

Get started

  1. 01Developer hub
  2. 02Quickstart
  3. 03Migrate to HIPS

Guides

  1. 04HIPS SDK
  2. 05Import and run your model
  3. 06Model and task guides
    1. ATask guides
    2. BLanguage (chat)
    3. CClassification
    4. DImage
    5. EVideo
    6. FAudio
    7. GDocument processing
  4. 07Batch jobs
  5. 08Prompt caching
  6. 09Coding-tool setup
    1. AClaude Code
    2. BOther coding tools and editor integrations
  7. 10Command line
    1. ASign in
  8. 11Console
    1. AAccount
    2. BWorkspaces
    3. CAPI keys
    4. DSettings
    5. EUsage
    6. FModels
    7. GPlayground
    8. HDeployments
  9. 12Billing
  10. 13Provider setup
    1. AWhen it works
    2. BCommands
    3. CSettings
    4. DProvider Console
    5. EEarnings
    6. FCrash reports
    7. GData centers
  11. 14Router
  12. 15Guardrails
  13. 16Knowledge

Reference

  1. 17API reference
    1. AAuthentication
    2. BChat completions
    3. CResponses
    4. DMessages
    5. ECount tokens
    6. FModels
    7. GTasks
    8. HEmbeddings and rerank
    9. IJobs
    10. JUploads
    11. KFiles
    12. LBatches
    13. MWebhooks
    14. NVector stores
    15. ODeployments
    16. PRequirements and headers
    17. QErrors
    18. RUsage
    19. SVersioning
  2. 18Operating guidance
    1. ALimits
    2. BErrors
    3. CRetries and billing outcomes
    4. DIdempotency
    5. EStreaming
    6. FData handling
    7. GCompatibility matrix
  3. 19Changelog
17
  1. Docs/
  2. API reference/
  3. Embeddings and rerank
(Detail H)
llms.txt

Embeddings and rerank

On this sheet2 sections
  1. Billing
  2. Never cut

Two front doors on the task API (decided 2026-11-04): an embedding request in OpenAI's shape and a rerank request in Cohere's, each served as the task it stands for, embedding or rerank, with the task route's key, limits, idempotency-key, requirement headers, quote and placement. Neither body takes a hips object: requirements ride as the x-hips-* headers. A model answers once an embedding model or a reranker is published and priced in the catalog.

POST/v1/embeddingsserved

Embeddings in OpenAI's shape, billed per started second of compute. A model answers once an embedding model is published and priced.

F
Fig. 1, sheet 17API reference
00000000000000000000000000000000000000001{"model": "<catalog id>", "input": ["First text.", "Second text."], "encoding_format": "float"}
Language

Parts list: Embeddings fields

  1. 01
    modelRequired

    A non-empty string: a catalog id, alias or pinned id of an embedding model. A model of another task is a 400 task_mismatch; a router is a 400 invalid_value.

  2. 02
    inputRequired

    A string, or an array of 1 to 2,048 strings, none empty; more is a 400 too_many_inputs. Token-id arrays are a 400 unsupported_value: HIPS takes text, tokenized with the model's own tokenizer.

  3. 03
    encoding_formatAccepted

    float (the default) or base64, each vector's little-endian 32-bit floats; anything else is a 400 unsupported_value.

  4. 04
    dimensionsAccepted

    A whole number above 0: the model's own dimension, or fewer on a model whose entry says it may be cut (limits.truncatable); otherwise a 400 unsupported_value naming the model's dimension.

  5. 05
    userAccepted, not used

    A string.

  6. 06
    Any other nameRejected, 400 unknown_parameter

    Never ignored.

The vectors come in input order, each of the model's own dimension, unit length, cut to dimensions and made unit length again when fewer are asked. usage.prompt_tokens is the gateway's own count with the model's tokenizer: a figure, never the bill.

POST/v1/rerankserved

Rerank in Cohere's shape, billed per started second of compute. A model answers once a reranker is published and priced.

00000000000000000000000000000000000000001{"model": "<catalog id>", "query": "Which document is about GPUs?", "documents": ["a", "b", {"text": "c"}], "top_n": 2, "return_documents": true}
Language

Parts list: Rerank fields

  1. 01
    modelRequired

    A reranker.

  2. 02
    queryRequired

    A non-empty string of at most 32 KiB.

  3. 03
    documentsRequired

    1 to 1,000 strings or {"text"} objects (Cohere's two shapes), each non-empty and at most 32 KiB; more documents is a 400 too_many_inputs, a longer one a 400 input_too_long.

  4. 04
    top_nAccepted

    From 1 to the number of documents; every document when absent. More than the documents sent is a 400 invalid_value.

  5. 05
    return_documentsAccepted

    true puts each document's text in its result; false by default.

  6. 06
    max_tokens_per_docRejected, 400 unsupported_parameter

    HIPS never cuts a document.

  7. 07
    Any other nameRejected, 400 unknown_parameter

    Never ignored.

Scores are the reranker's relevance through the logistic function, from 0 to 1, the most relevant first, equal scores in input order. Every document is scored, whatever top_n returns.

Billing

Both routes bill per started second of the request's compute time, at least one second (H109, decided 2026-11-05: models other than language models bill per started second, never per token). The time is the gateway's own measure of the attempts that completed the request, each held to its expected time at its GPU's typical speed, never a device's report. The rerank answer names the seconds in meta.billed_units.seconds; the embeddings answer keeps OpenAI's token counts, and the cost is in x-hips-cost-micros.

Never cut

An input, a document or a query longer than the model reads at once is refused whole before any work, never cut and never billed: a 400 context_length_exceeded at its field, naming its tokens and the model's bound, counted with the model's own tokenizer. An input too large for one attempt is a 400 input_too_large. A request the measured speed of every GPU serving the model shows cannot finish within its time limit is a 400 exceeds_time_limit.

StatusTypeCodeSituationRetry
400invalid_request_errorinvalid_jsonThe body is not JSON, or not an objectNo
400invalid_request_errormissing_required_parameterA required field or header is absent; param names itNo
400invalid_request_errorinvalid_typeA field has the wrong JSON typeNo
400invalid_request_errorinvalid_valueA value is out of range or malformed: stop with more than 16 entries, a prompt_cache_key over 512 characters, a string holding a lone surrogate escape, a router name with an empty or unknown suffix, both max_tokens names with different valuesNo
400invalid_request_errorunknown_parameterA field the gateway does not know, at any depth; param names itNo
400invalid_request_errorunsupported_parameterA known field HIPS does not accept, or a feature the named model does not advertise in the pool the request resolves to; param names it and message names the modelNo
400invalid_request_errorunsupported_valuen other than 1, stream_options without stream, a message role, part, item or tool type not accepted, a hosted tool that is not servedNo
400invalid_request_errorcontext_length_exceededThe prompt is over the model's context_length, or over the largest window any GPU serves it at now, that limit and the prompt's count in the message; the prompt is never truncated. On embeddings and rerank, an input longer than the model reads at once, never cutNo
400invalid_request_errorrequest_too_large, input_too_large, too_many_inputs, upload_too_largeA limit of the Limits pageNo
400invalid_request_errorinput_too_longOn POST /v1/rerank, a query or a document over 32 KiB of text, refused whole and never cutNo
400invalid_request_errorexceeds_time_limitAn embedding or rerank request that the measured speed of every GPU serving the model shows cannot finish within its time limit; the message says how long it would take. Sent before any work, unchargedNo; send fewer or shorter inputs
400invalid_request_errortask_mismatchtask is not the model's task, or the model is not an embedding model or a reranker on its routeNo
402insufficient_creditinsufficient_creditThe balance does not cover the request's maximum cost at the bound quoteAfter a top-up
404not_found_errormodel_not_foundUnknown catalog id, alias, pinned id or dep_; another workspace's dep_; a name starting with hips-router that is not one of the four routersNo
429rate_limit_errorrate_limit_exceededA rate limit; param is requests, tokens, uploads, batches (batches created per hour) or knowledge_search; Retry-AfterYes, after Retry-After
503overloaded_errorno_capacityNo eligible worker under the request's requirements, in any pool the requirements allow; Retry-After. The message says what those pools can do now: a GPU that fits the model takes it when free or loads it when asked, which can take minutes or longer; or nothing can serve it, and a retry sooner than the given delay gets the same answerYes, after the given delay
503overloaded_erroroverloadedEligible workers exist and every one is saturated, or the queue is full; Retry-AfterYes
  • Status
    400
    Type
    invalid_request_error
    Code
    invalid_json
    Situation
    The body is not JSON, or not an object
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    missing_required_parameter
    Situation
    A required field or header is absent; param names it
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    invalid_type
    Situation
    A field has the wrong JSON type
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    invalid_value
    Situation
    A value is out of range or malformed: stop with more than 16 entries, a prompt_cache_key over 512 characters, a string holding a lone surrogate escape, a router name with an empty or unknown suffix, both max_tokens names with different values
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    unknown_parameter
    Situation
    A field the gateway does not know, at any depth; param names it
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    unsupported_parameter
    Situation
    A known field HIPS does not accept, or a feature the named model does not advertise in the pool the request resolves to; param names it and message names the model
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    unsupported_value
    Situation
    n other than 1, stream_options without stream, a message role, part, item or tool type not accepted, a hosted tool that is not served
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    context_length_exceeded
    Situation
    The prompt is over the model's context_length, or over the largest window any GPU serves it at now, that limit and the prompt's count in the message; the prompt is never truncated. On embeddings and rerank, an input longer than the model reads at once, never cut
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    request_too_large, input_too_large, too_many_inputs, upload_too_large
    Situation
    A limit of the Limits page
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    input_too_long
    Situation
    On POST /v1/rerank, a query or a document over 32 KiB of text, refused whole and never cut
    Retry
    No
  • Status
    400
    Type
    invalid_request_error
    Code
    exceeds_time_limit
    Situation
    An embedding or rerank request that the measured speed of every GPU serving the model shows cannot finish within its time limit; the message says how long it would take. Sent before any work, uncharged
    Retry
    No; send fewer or shorter inputs
  • Status
    400
    Type
    invalid_request_error
    Code
    task_mismatch
    Situation
    task is not the model's task, or the model is not an embedding model or a reranker on its route
    Retry
    No
  • Status
    402
    Type
    insufficient_credit
    Code
    insufficient_credit
    Situation
    The balance does not cover the request's maximum cost at the bound quote
    Retry
    After a top-up
  • Status
    404
    Type
    not_found_error
    Code
    model_not_found
    Situation
    Unknown catalog id, alias, pinned id or dep_; another workspace's dep_; a name starting with hips-router that is not one of the four routers
    Retry
    No
  • Status
    429
    Type
    rate_limit_error
    Code
    rate_limit_exceeded
    Situation
    A rate limit; param is requests, tokens, uploads, batches (batches created per hour) or knowledge_search; Retry-After
    Retry
    Yes, after Retry-After
  • Status
    503
    Type
    overloaded_error
    Code
    no_capacity
    Situation
    No eligible worker under the request's requirements, in any pool the requirements allow; Retry-After. The message says what those pools can do now: a GPU that fits the model takes it when free or loads it when asked, which can take minutes or longer; or nothing can serve it, and a retry sooner than the given delay gets the same answer
    Retry
    Yes, after the given delay
  • Status
    503
    Type
    overloaded_error
    Code
    overloaded
    Situation
    Eligible workers exist and every one is saturated, or the queue is full; Retry-After
    Retry
    Yes

Related sheets

  • Tasks
  • Usage
Previous sheetTasks
Next sheetJobs
Sheet
17 of 19
Detail
H
Updated
2026-11-11
Sign in to the Console

On this sheet

  1. Billing
  2. Never cut

Product

  • Inference
  • Models
  • Deploy your model
  • Always-on GPU capacity
  • How it works
  • Use cases
  • Pricing

Developer

  • Docs
  • Quickstart
  • Migrate to HIPS
  • HIPS SDK
  • Batch jobs
  • API reference

Provider

  • Earn with your GPU
  • Register GPU interest
  • Download for Mac
  • Download for Windows
  • Download for Linux

Resource

  • Security and Data
  • Resources
  • llms.txt

Compare

  • OpenRouter alternatives
  • Together AI alternatives
  • Groq alternatives
  • All comparisons

Company

  • About
  • Contact
  • Affiliate program
  • HIPS Payments

Legal

  • Legal
  • Consumer Health Data Privacy Policy
  • Report content
  • Cookie preferences

Support

  • Contact HIPS
  • Looking for payments support?

HIPS. AI inference for builders.

hips.com

Hyperscale Inference Processing Systems OÜ