Tous les produits
Search
Centre de documentation

MaxCompute:AI_CLASSIFY

Dernière mise à jour :Aug 10, 2026

AI_CLASSIFY est une fonction d'intelligence artificielle de MaxCompute. Elle interroge un modèle pour renvoyer le libellé, issu d'un ensemble donné, qui correspond le mieux au texte fourni en entrée.

Syntaxe

STRING AI_CLASSIFY(
  STRING <model_name>,
  STRING <version_name>,
  STRING <input>,
  ARRAY<STRING> <labels>
  [, STRING <model_parameters>]
);

Paramètres

  • model_name : obligatoire. Type STRING. Nom du modèle à utiliser. Pour plus d'informations, consultez la rubrique Fonction SQL AI.

  • version_name : obligatoire. Type STRING. Nom de la version du modèle à utiliser. Pour appeler la version par défaut, spécifiez DEFAULT_VERSION.

  • input : obligatoire. Type STRING. Texte à classifier.

  • labels : obligatoire. Type ARRAY<STRING>. Liste des libellés candidats pour la classification. Ce paramètre accepte les constantes et les colonnes. Si vous utilisez une constante, le nombre de libellés doit être compris entre 2 et 20 (bornes incluses).

  • model_parameters : facultatif. Type STRING. Spécifie les paramètres du modèle, tels que max_tokens, temperature et top_p. Le format attendu est une chaîne JSON :

    '{"max_tokens": 500, "temperature": 0.6, "top_p": 0.95}'.

    • max_tokens : nombre maximal de jetons à générer lors d'un seul appel au modèle. Pour les modèles publics MaxCompute, la valeur par défaut est 4 096.

    • temperature : valeur comprise entre 0 et 1 qui contrôle l'aléatoire de la sortie. Une valeur élevée produit des résultats plus créatifs et diversifiés, tandis qu'une valeur faible génère des sorties plus déterministes et conservatrices.

    • top_p : valeur comprise entre 0 et 1 qui limite la plage des libellés candidats parmi lesquels le modèle peut choisir. Une valeur élevée élargit la sélection et favorise la diversité, alors qu'une valeur faible restreint la plage pour obtenir des résultats plus ciblés.

Valeur de retour

Renvoie une valeur STRING correspondant au libellé qui s'accorde le mieux avec l'entrée fournie.

  • Une erreur est renvoyée si input n'est pas de type STRING ou si labels n'est pas de type ARRAY<STRING>.

  • Une erreur survient lorsque labels est une constante et que le nombre de libellés est égal à 1 ou supérieur à 20.

  • La fonction renvoie NULL si input ou labels est NULL ou correspond à une chaîne vide ("").

Exemples

Exemple 1 : Classifier un texte constant

Cet exemple utilise le modèle public qwen3.7-max fourni par MaxCompute pour classifier le texte saisi et renvoie le résultat le plus pertinent parmi les libellés proposés.

SET odps.namespace.schema=true;

SELECT AI_CLASSIFY(
    bigdata_public_modelset.default.`qwen3.7-max`,
    DEFAULT_VERSION,
    'MaxCompute is a fully managed, high-performance big data computing platform that provides fast and scalable data warehousing and analysis capabilities.',
    ARRAY('Technology', 'Sports', 'Finance', 'Healthcare', 'Education')
) AS classified_label;
-- Result
+------------------+
| classified_label |
+------------------+
| Technology       |
+------------------+

Exemple 2 : Classifier les données d'une table

Utilisez le modèle public MaxCompute deepseek-v4-pro pour classifier par lot plusieurs entrées textuelles stockées dans une table.

-- Sample data
CREATE TABLE news_articles (
    content STRING
);

INSERT INTO news_articles VALUES
    ('Artificial intelligence is changing the healthcare industry with new diagnostic tools.'),
    ('Driven by a rally in the tech sector, the stock market hit a record high today.'),
    ('The team won the championship after a thrilling overtime.'),
    ('Cloud computing enables businesses to scale their infrastructure on demand.');

-- Use the model to classify the text in the table
SET odps.namespace.schema=true;

SELECT
    content,
    AI_CLASSIFY(
        bigdata_public_modelset.default.`deepseek-v4-pro`,
        DEFAULT_VERSION,
        content,
        ARRAY('Technology', 'Sports', 'Finance', 'Healthcare')
    ) AS category
FROM news_articles;

-- Result
+------------------------------------------------------------------------------------------+------------+
| content                                                                                  | category   |
+------------------------------------------------------------------------------------------+------------+
| Artificial intelligence is changing the healthcare industry with new diagnostic tools.   | Healthcare |
| Driven by a rally in the tech sector, the stock market hit a record high today.          | Finance    |
| The team won the championship after a thrilling overtime.                                | Sports     |
| Cloud computing enables businesses to scale their infrastructure on demand.              | Technology |
+------------------------------------------------------------------------------------------+------------+

FAQ

Dépannage des problèmes liés aux modèles publics

Symptôme : Lorsque vous appelez un modèle public pris en charge par le service MaxCompute Model Computing Service, ce dernier renvoie le message d'erreur suivant :

FAILED: ODPS-0130071:[1,8] Semantic analysis exception - inference quota status check failed, error message: region cn-shanghai not found in inference quota

Cause : Le service MaxCompute Model Computing Service n'est pas activé pour la région de votre projet (par exemple, cn-shanghai). Par conséquent, vous ne pouvez pas accéder aux ressources d'inférence IA.

Solution : Accédez à la console Alibaba Cloud et activez le service MaxCompute Model Computing Service pour la région de votre projet. Pour plus d'informations, consultez la rubrique Achat et utilisation du service MaxCompute Model Computing Service.