Despliegue de un Conjunto de Acciones para un Equipo de Analítica
Scénario de test & Cas d'usage
Contexto empresarial
Un equipo de ciencia de datos ha desarrollado un conjunto de acciones personalizadas para realizar análisis de sentimiento específicos de su industria. El administrador de SAS Viya necesita hacer que este nuevo conjunto de acciones ('sentimentAnalysis') esté disponible para los miembros del equipo en sus sesiones de CAS.
Sobre el conjunto : builtins
Comandos fundamentales del sistema del servidor CAS.
Creación de una caslib de proyecto ('AnalyticsLib') y un conjunto de acciones de ejemplo ('sentimentAnalysis') que contiene una acción para puntuar texto. Este conjunto de acciones se guarda en la caslib para que pueda ser cargado dinámicamente.
¡Copiado!
proc cas;\n /* Crear una caslib para los recursos del equipo */\n caslib AnalyticsLib path='/cas/data/analytics_project' dataSource={srcType='PATH'} subdirs;\n\n /* Definir y guardar el conjunto de acciones personalizado */\n source sentimentCode;\n action sentimentAnalysis.scoreText / description='Puntúa el sentimiento de un texto de entrada';\n define ddf.string inputText / rt='string' desc='Texto a analizar';\n /* Lógica de puntuación simulada */\n if (contains(upcase(inputText), 'EXCELENTE') or contains(upcase(inputText), 'BUENO')) then\n result = '{"sentiment":"Positivo", "score":0.9}';\n else\n result = '{"sentiment":"Negativo", "score":0.2}';\n send_response(result);\n endaction;\n endsource;\n\n builtins.actionSetToTable /\n actionSet='sentimentAnalysis'\n table={caslib='AnalyticsLib', name='sentimentDef', replace=true};\nrun;
1
PROC CAS;
2
/* Crear una caslib para los recursos del equipo */
Verificar nuevamente la ruta de búsqueda para confirmar que 'AnalyticsLib' ha sido añadida correctamente.
¡Copiado!
proc cas;\n builtins.userActionSetPathInfo;\nrun;
1
PROC CAS;
2
BUILTINS.userActionSetPathInfo;
3
RUN;
4
Intentar cargar y utilizar la acción personalizada 'scoreText' para confirmar que el servidor CAS ahora puede localizar y ejecutar el conjunto de acciones.
¡Copiado!
proc cas;\n builtins.loadActionSet 'sentimentAnalysis';\n sentimentAnalysis.scoreText / inputText='El servicio al cliente fue excelente';\nrun;
1
PROC CAS;
2
BUILTINS.LOADACTIONSET'sentimentAnalysis';
3
sentimentAnalysis.scoreText / inputText='El servicio al cliente fue excelente';
4
RUN;
Resultado esperado
La primera llamada a 'userActionSetPathInfo' muestra la lista de rutas por defecto. Después de ejecutar 'addUserActionSetPath', la segunda llamada a 'userActionSetPathInfo' debe mostrar una nueva fila para 'AnalyticsLib'. Finalmente, la acción 'sentimentAnalysis.scoreText' debe ejecutarse con éxito y devolver un resultado JSON indicando un sentimiento 'Positivo', demostrando que el despliegue fue exitoso.