Gestion des ressources pour les modèles de traitement de texte de documents
Pour utiliser les API de traitement de texte afin de classer et d'extraire des informations textuelles de vos documents dans IBM watsonx.ai, vous devez déployer un ensemble de modèles de compréhension de documents dans votre cluster. Vous pouvez ensuite personnaliser les ressources utilisées par le pipeline de traitement de texte pour classer et extraire le texte de vos documents.
Avant de commencer
- Vous devez être administrateur d'instance.
- Les modèles de traitement de texte doivent être installés dans votre cluster. Pour plus de détails, consultez la section Installation des modèles avec la configuration par défaut.Restriction : vous ne pouvez pas ajouter de modèles de base de traitement de texte à une watsonx.ai™ lightweight engine installation.
Procédure
Vous pouvez modifier la configuration par défaut du cluster pour les pods de traitement de texte afin d'optimiser l'utilisation de la mémoire, la fréquence du ramasse-miettes, etc. et ainsi adapter la capacité du pipeline de traitement de texte.
- Vous pouvez utiliser les méthodes suivantes pour personnaliser les ressources utilisées par les pods de traitement de texte des documents dans votre déploiement :
- Configuration des ressources pour les pods de traitement de texte pour chaque déploiement et conteneur
- Optimisez la mémoire utilisée par la bibliothèque de compréhension de documents en définissant une variable d'environnement personnalisée dans la ressource personnalisée pour chaque déploiement et chaque conteneur au sein du déploiement.
L'exemple suivant définit l'utilisation de la mémoire pour plusieurs déploiements (tels que
wdu_api_deploy_distributed) et conteneurs (tels quewdu_runtime) à la valeur prédéfinie MEMORY_MINIMAL :oc patch watsonxaiifm watsonxaiifm-cr \ --namespace=${PROJECT_CPD_INST_OPERANDS} \ --type=merge \ -p '{"spec": {"model_install_parameters": {"wdu": {"wdu_api_deploy_distributed": {"wdu_runtime": {"env": [{"name": "MEMORY_MINIMAL", "value": "true" }]}}, "wdu_page_deploy_distributed": {"wdu_runtime": {"env": [{"name": "MEMORY_MINIMAL", "value": "true" }]}, "wdu_model_copy": {"env": [{"name": "MEMORY_MINIMAL", "value": "true" }]}}, "wdu_result_deploy_distributed": {"wdu_runtime": {"env": [{"name": "MEMORY_MINIMAL", "value": "true" }]}}, "wdu_watch_deploy_distributed": {"wdu_runtime": {"env": [{"name": "MEMORY_MINIMAL", "value": "true" }]}}}}}}' - Configuration globale des ressources pour tous les pods de traitement de texte
- Utilisez le
container_defaultsparamètre pour appliquer les mêmes paramètres de ressources à tous les conteneurs de traitement de texte comme suit :oc patch watsonxaiifm watsonxaiifm-cr \ --namespace=${PROJECT_CPD_INST_OPERANDS} \ --type=merge \ -p '{"spec": {"model_install_parameters": {"wdu": {"container_defaults": {"env": [{"name": "MEMORY_MINIMAL", "value": "true"}, {"name": "MEMORY_GC_FREQUENCY", "value": "5"}]}}}}}' - Configuration des ressources pour les pods de traitement de texte avec des valeurs par défaut globales et des remplacements personnalisés pour des déploiements spécifiques
- Utilisez une combinaison des paramètres globaux spécifiés dans le
container_defaultsparamètre pour tous les conteneurs et des paramètres personnalisés pour un déploiement spécifique (tel quewdu_api_deploy_distributed) qui remplacent les valeurs par défaut globales comme suit :oc patch watsonxaiifm watsonxaiifm-cr \ --namespace=${PROJECT_CPD_INST_OPERANDS} \ --type=merge \ -p '{"spec": {"model_install_parameters": {"wdu": {"container_defaults": {"env": [{"name": "MEMORY_MINIMAL", "value": "true"}, {"name": "LOG_LEVEL", "value": "INFO"}]}, "wdu_api_deploy_distributed": {"wdu_runtime": {"env": [{"name": "MEMORY_MINIMAL", "value": "false"}]}}}}}}'
- Vérifiez que l'opérateur effectue correctement le rapprochement et ne signale aucune erreur. Vous pouvez ensuite vérifier la configuration du pod de traitement de texte comme suit :
oc describe pod <wdu-api-deploy-distributed-pod-name> -n ${PROJECT_CPD_INST_OPERANDS} | grep -A 50 "wdu-runtime:" - Facultatif : si vous activez la journalisation de débogage, vous pouvez vérifier que les
container_defaultssont appliqués correctement :oc logs -n ${PROJECT_CPD_INST_OPERANDS} -l app.kubernetes.io/name=ibm-cpd-watsonx-ai-ifm-operator --tail=200 | grep -i "container_defaults\|env"