[role="xpack"] [[get-inference-api]] === Get {infer} API experimental[] Retrieves {infer} endpoint information. IMPORTANT: The {infer} APIs enable you to use certain services, such as built-in {ml} models (ELSER, E5), models uploaded through Eland, Cohere, OpenAI, Azure, Google AI Studio, Google Vertex AI or Hugging Face. For built-in models and models uploaded through Eland, the {infer} APIs offer an alternative way to use and manage trained models. However, if you do not plan to use the {infer} APIs to use these models or if you want to use non-NLP models, use the <>. [discrete] [[get-inference-api-request]] ==== {api-request-title} `GET /_inference` `GET /_inference/_all` `GET /_inference/` `GET /_inference//_all` `GET /_inference//` [discrete] [[get-inference-api-prereqs]] ==== {api-prereq-title} * Requires the `monitor_inference` <> (the built-in `inference_admin` and `inference_user` roles grant this privilege) [discrete] [[get-inference-api-desc]] ==== {api-description-title} You can get information in a single API request for: * a single {infer} endpoint by providing the task type and the {infer} ID, * all of the {infer} endpoints for a certain task type by providing the task type and a wildcard expression, * all of the {infer} endpoints by using a wildcard expression. [discrete] [[get-inference-api-path-params]] ==== {api-path-parms-title} ``:: (Optional, string) The unique identifier of the {infer} endpoint. ``:: (Optional, string) The type of {infer} task that the model performs. [discrete] [[get-inference-api-example]] ==== {api-examples-title} The following API call retrieves information about the `my-elser-model` {infer} model that can perform `sparse_embedding` tasks. [source,console] ------------------------------------------------------------ GET _inference/sparse_embedding/my-elser-model ------------------------------------------------------------ // TEST[skip:TBD] The API returns the following response: [source,console-result] ------------------------------------------------------------ { "inference_id": "my-elser-model", "task_type": "sparse_embedding", "service": "elser", "service_settings": { "num_allocations": 1, "num_threads": 1 }, "task_settings": {} } ------------------------------------------------------------ // NOTCONSOLE