Tous les produits
Search
Centre de documentation

OpenSearch:Extraction du contenu d'image

Dernière mise à jour :Aug 12, 2026

OpenSearch permet d'appeler le service d'extraction de contenu d'image via une API, d'intégrer ce service à vos flux de travail métier et d'utiliser le texte analysé pour la recherche d'images et la réponse aux questions.

Liste des services

Nom du service

ID du service

Description

Limite QPS de l'API

Image Content Understanding Service 001

ops-image-analyze-vlm-001

Analyse le contenu des images et reconnaît le texte à l'aide d'un grand modèle multimodal, permettant des applications telles que la recherche d'images et la réponse aux questions.

10

Remarque

Pour demander une limite QPS d'API plus élevée, soumettez un ticket au support technique.

Image OCR Service 001

ops-image-analyze-ocr-001

Extrait le texte des images par OCR, autorisant ainsi des cas d'usage comme la recherche visuelle et les systèmes de questions-réponses.

  • Obtenir les identifiants d'authentification

    La plateforme ouverte AI Search nécessite une clé API pour l'authentification. Pour obtenir des instructions, consultez Obtenir une clé API.

  • Récupérer l'endpoint du service

    Vous pouvez appeler le service via le réseau public ou un VPC. Pour plus de détails, reportez-vous à Obtenir l'endpoint du service.

Créer une tâche d'extraction asynchrone

Méthode de requête

POST

URL

{host}/v3/openapi/workspaces/{workspace_name}/image-analyze/{service_id}/async
  • host : Endpoint du service API. Vous pouvez accéder au service API via le réseau public ou via un VPC. Pour plus d'informations, consultez Obtenir un endpoint.

    Dans la console AI Search Open Platform, choisissez API Keys dans le volet de navigation de gauche. Les champs Public API Domain Name et Private API Domain Name figurent ensuite dans la section Access Domain Name, en haut de la page.

  • workspace_name : Nom du workspace. Par exemple, default.

  • service_id : ID du service système intégré. Par exemple, ops-image-analyze-vlm-001.

Paramètres de la requête

Paramètres d'en-tête

Authentification par clé API

Paramètre

Type

Obligatoire

Description

Exemple

Content-Type

String

Obligatoire

Définit le type de média du corps de la requête. La valeur doit être application/json.

application/json

Authorization

String

Obligatoire

Clé API servant à l'authentification, préfixée par Bearer .

Bearer OS-d1**2a

Paramètre du corps

Paramètre

Type

Obligatoire

Description

Exemple

service_id

String

Oui

ID du service intégré :

  • ops-image-analyze-vlm-001

  • ops-image-analyze-ocr-001

ops-image-analyze-vlm-001

document.url

String

Non

URL du fichier. Ce paramètre ou document.content doit être spécifié. Les protocoles http et https sont pris en charge.

http://path/to/***.jpg

document.content

String

Non

Contenu du fichier encodé en Base64. Ce paramètre ou document.url doit être spécifié.

"aGVsbG8gd29ybGQ="

document.file_name

String

Non

Nom du fichier. Si ce paramètre est omis, le nom est déduit de document.url. Obligatoire si document.url est également omis.

test.jpg

document.file_type

String

Non

Type de fichier (par exemple jpg, jpeg, png, bmp, tiff). En l'absence de ce paramètre, le type est déterminé automatiquement d'après l'extension de document.file_name. Spécifiez-le explicitement si la déduction automatique échoue.

jpg

Paramètres de retour

Paramètre

Type

Description

Valeur

result.task_id

String

ID de la tâche asynchrone d'analyse d'image.

6177bf71-f87f-4d86-ab0c-e2b64dfe****

Requête cURL

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  "http://***-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/image-analyze/ops-image-analyze-vlm-001/async"
  --data '{
    "document": {
      "url": "https://img01.yzcdn.cn/****/2017/05/11/FoTMgBa0SvUaAeFruY7i7O_EUMhf.jpg%21middle.jpg",
      "file_type": "jpg"
    }
  }' \ 

Exemple de réponse

Réponse normale

{
	"request_id":"CD4E26F0-23FF-449C-83DC-20CC8FF1****",
        "latency":8.0,
        "http_code":200,
        "result":{
                  "task_id":"cd4e26f0-23ff-449c-83dc-20cc8ff1****"
        }
}

Exemple de réponse d'erreur

En cas d'échec d'une requête d'accès, la sortie contient un code et un message expliquant l'erreur.

{
      "request_id":"0CCAC03B-D83F-432F-B6BA-C3049576****",
      "latency":0.0,
      "code":"InvalidParameter",
      "http_code":400,
      "message":"document.content or document.url required, and both cannot be present at the same time"
}

État de la tâche d'extraction asynchrone

Méthode de requête

GET

URL

{host}/v3/openapi/workspaces/{workspace_name}/image-analyze/{service_id}/async/task-status?task_id=${task_id}
  • host : Endpoint du service API. Vous pouvez appeler le service API via le réseau public ou via un VPC. Pour plus de détails, consultez Obtenir un endpoint de service.

  • workspace_name : Nom du workspace. Par exemple, default.

  • service_id : ID du service intégré. Par exemple, ops-image-analyze-vlm-001.

  • task_id : ID de tâche renvoyé dans la réponse lors de la création d'une tâche d'analyse d'image. Par exemple, cd4e26f0-23ff-449c-83dc-20cc8ff1****.

Paramètres de la requête

Paramètres d'en-tête

Authentification par clé API

Paramètre

Type

Obligatoire

Description

Exemple

Content-Type

string

Oui

Type de la requête. Doit être application/json.

application/json

Authorization

string

Oui

Clé API d'authentification, préfixée par Bearer .

Bearer OS-d1**2a

Paramètres de réponse

Paramètre

Type

Description

Exemple

request_id

String

Identifiant unique de l'appel API.

3C09570D-12DB-46B4-BF0F-A100D79B****

latency

Float/Int

Latence de la requête, en millisecondes.

3.0

result.task_id

String

ID de la tâche asynchrone. Ce paramètre n'est pas retourné pour les appels synchrones.

a7e4c0f6-874c-47e3-b05b-02278a96e****

result.status

String

État de la tâche. Valeurs possibles :

  • PENDING : Tâche en attente.

  • SUCCESS : Tâche réussie.

  • FAILED : Échec de la tâche.

SUCCESS

result.data

Object

Résultats de l'analyse d'image.

{"content":"The image shows XXXX",

"content_type":"plain"}

result.data.content

String

Contenu extrait de l'image.

"XXX"

result.data.content_type

String

Type de contenu de la sortie. La valeur est toujours plain.

plain

usage.token_count

int

Nombre de tokens pour la sortie. Ce paramètre s'applique au service ops-image-analyze-vlm-001.

1234

usage.pv_count

int

Nombre d'appels, fixé à 1. S'applique au service ops-image-analyze-ocr-001.

1

Exemple de requête cURL

curl -X GET \
-H"Content-Type: application/json" \
-H "Authorization: Bearer Your API-KEY" \
"http://***-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/image-analyze/ops-image-analyze-vlm-001/async/task-status?task_id=d9781786-20b8-4fb4-bbb5-38f82e69****" 
 

Exemple de réponse

Réponse réussie

{
      "request_id":"3C09570D-12DB-46B4-BF0F-A100D79B****",
      "latency":3.0,
      "http_code":200,
      "result":{
           "status":"SUCCESS",
           "data":{
                "content":"The image shows a WMF blender surrounded by fruits and vegetables. Next to it is a glass of red juice with a straw. On the table are lemon slices, strawberries, and kiwifruit. A cut pineapple and an orange sit in one corner. Chopped carrots are in the blender, ready for juicing. The scene looks healthy and appetizing.",
                "content_type":"plain"
            },
            "task_id":"d9781786-20b8-4fb4-bbb5-38f82e69****"
       },
            "usage":{
                "token_count":95
            }
}

Exemple de réponse d'erreur

Lorsqu'une requête d'accès échoue, la sortie inclut un code et un message décrivant l'erreur.

{
  "request_id":"153FC253-468D-4C46-873E-2AEB918C****",
  "latency":2.0,
  "code":"BadRequest.TaskNotExist",
  "http_code":404,
  "message":"task[d9781786-20b8-4fb4-bbb5-38f82e690b****] does not exist"
}

Création d'une tâche d'extraction synchrone

Méthode de requête

POST

URL

{host}/v3/openapi/workspaces/{workspace_name}/image-analyze/{service_id}/sync

Paramètres

  • host : Endpoint du service API. Vous pouvez appeler le service API via le réseau public ou via un VPC. Pour plus d'informations, consultez Obtenir un endpoint de service.

  • workspace_name : Nom de votre workspace. Par exemple, default.

  • service_id : ID du service intégré. Par exemple, ops-image-analyze-vlm-001.

Paramètres

Paramètres d'en-tête

Authentification par clé API

Paramètre

Type

Obligatoire

Description

Valeur d'exemple

Content-Type

String

Oui

Type de média de la requête.

application/json

Authorization

String

Oui

Clé API

Bearer OS-d1**2a

Paramètres du corps

Paramètre

Type

Obligatoire

Description

Exemple

service_id

String

Oui

ID du service intégré. Valeurs valides :

  • ops-image-analyze-vlm-001

  • ops-image-analyze-ocr-001

ops-image-analyze-vlm-001

document.url

String

Non

URL du fichier. Prend en charge HTTP et HTTPS. Vous devez spécifier soit document.url, soit document.content.

http://path/to/***.jpg

document.content

String

Non

Contenu du fichier encodé en Base64.

Vous devez spécifier soit document.url, soit document.content.

"aGVsbG8gd29ybGQ="

document.file_name

String

Non

Nom du fichier. Si ce paramètre est laissé vide, le nom est déduit de document.url. Si document.url est également vide, vous devez spécifier ce paramètre.

test.jpg

document.file_type

String

Non

Type de fichier. Si ce paramètre est vide, le type est déduit de l'extension du nom de fichier. Si le type ne peut pas être déduit, vous devez le spécifier explicitement. Exemples : jpg, jpeg, png, bmp et tiff.

jpg

Paramètres de réponse

Paramètre

Type

Description

Valeur d'exemple

result.status

String

État de la tâche. Valeurs possibles :

  • PENDING : Tâche en cours.

  • SUCCESS : Tâche réussie.

  • FAIL : Échec de la tâche.

SUCCESS

result.error

String

Message d'erreur lorsque result.status est FAIL. Ce champ est vide dans les autres cas.

Failed to decrypt the document.

result.data

Object

Résultats de l'analyse d'image.

{"content":"The image shows XXXX",

"content_type":"plain"}

result.data.content

String

Contenu extrait de l'image.

"XXX"

result.data.content_type

String

Type du contenu de sortie. La valeur est toujours plain.

plain

request_id

String

Identifiant unique de l'appel API.

B4AB89C8-B135-xxxx-A6F8-2BAB801A2CE4

latency

number

Latence de la requête, en ms.

10

usage

Object

Consommation pour cet appel API.

"usage": {

"token_count": 1234

}

usage.token_count

integer

Nombre de tokens en sortie. S'applique au service ops-image-analyze-vlm-001.

1234

usage.pv_count

integer

Nombre d'invocations. La valeur est fixée à 1. S'applique au service ops-image-analyze-ocr-001.

1

cURL

This section provides a sample API call and a glossary of relevant technical terms.
API call example
The following example shows how to make a synchronous call to the image analysis API endpoint.
curl -X POST \
-H"Content-Type: application/json" \
-H "Authorization: Bearer " \
 "http://***-hangzhou.opensearch.aliyuncs.com/v3/openapi/workspaces/default/image-analyze/ops-image-analyze-vlm-001/sync" \
\ -d "{    
      \"document\":{    
            \"url\":\"https://img01.yzcdn.cn/****/2017/05/11/FoTMgBa0SvUaAeFruY7i7O_EUMhf.jpg%21middle.jpg\",   
            \"file_type\":\"jpg\"
      }
}"
Terminology
The following table lists the technical terms used in this API call, their standard formatting, and related conventions.

Term
Standard form
Type
Notes

API key
API key
Industry Standard
Standard industry term. Use lowercase in prose.

China (Hangzhou)
China (Hangzhou)
Alibaba Cloud Region
The official region name. The identifier hangzhou in the URL is for system use.

Open Search
Open Search
Alibaba Cloud Product
The official product name. The identifier opensearch in the URL is for system use.

workspace
workspace
Industry Standard
A common cloud resource concept. Use lowercase.

image analysis
image analysis
Industry Standard
A functional description. The identifier image-analyze in the URL is for system use.

sync / async
sync / async
Industry Standard
Standard terms for synchronous and asynchronous operations.

document
document
JSON Field
A standard JSON field name. Use lowercase.

url
url
JSON Field
A standard JSON field name. Use lowercase.

file_type
file_type
JSON Field
A standard JSON field name. Use lowercase.

UI elements
This API call example does not reference any user interface (UI) elements.

Exemple de réponse

Réponse réussie

{
    "request_id":"BB5CD4C3-C8B6-40E7-A037-4ADAE88A****", 
    "latency":12525.0,
    "http_code":200,
    "result":{
        "status":"SUCCESS",
        "data":{
              "content":"The image shows a WMF blender surrounded by fruit and vegetables. Next to the blender is a cup of red juice with a straw in it. Scattered on the table are a few lemon slices, several strawberries, and some kiwifruit. In one corner of the table, there is a cut pineapple and an orange. Additionally, chopped carrots are in the blender, ready to be juiced. Everything looks healthy and delicious.",
              "content_type":"plain"
        }
      },
      "usage":{
          "token_count":95
      }
}

Réponse d'erreur

Une requête d'accès ayant échoué retourne un code et un message expliquant l'erreur.

{
    "request_id": "6F33AFB6-A35C-4DA7-AFD2-9EA16CCF****",
    "latency": 2.0,
    "code": "InvalidParameter",
    "http_code": 400,
    "message": "JSON parse error: Cannot deserialize value of type `ImageStorage` from String \\"xxx\\"
}

Codes d'état

Code d'état HTTP

Code d'erreur

Description

200

-

Une requête réussie ne garantit pas le succès de la tâche ; vérifiez l'état de la tâche dans result.status.

404

BadRequest.TaskNotExist

La tâche n'existe pas.

400

InvalidParameter

La requête est invalide.

500

InternalServerError

Une erreur interne s'est produite.

Pour plus d'informations sur les codes d'état, consultez codes d'état.