Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Mettre à jour l'attribution d'une métrique Amazon Personalize
Lorsque vous mettez à jour l'attribution d'une métrique, vous pouvez ajouter et supprimer des métriques et modifier sa configuration de sortie. Vous pouvez mettre à jour l'attribution d'une métrique à l'aide de la console Amazon Personalize AWS Command Line Interface, ou AWS SDKS.
Mettre à jour l'attribution d'une métrique (console)
Pour mettre à jour l'attribution d'une métrique avec la console Amazon Personalize, vous devez effectuer vos modifications sur la page d'attribution des métriques.
Pour mettre à jour l'attribution d'une métrique
-
Ouvrez la console Amazon Personalize https://console.aws.amazon.com/personalize/chez vous et connectez-vous à votre compte.
-
Choisissez votre groupe de jeux de données.
-
Dans le volet de navigation, sélectionnez Attribution métrique.
-
Dans la section inférieure, choisissez l'onglet Attributs métriques ou l'onglet Configuration de l'attribution métrique pour commencer à apporter des modifications.
-
Pour ajouter ou supprimer des mesures, cliquez sur l'onglet Attributs des mesures, puis sur Modifier les attributs. Apportez vos modifications sur la page Modifier les attributs des mesures et choisissez Mettre à jour pour enregistrer vos modifications.
-
Pour apporter des modifications au compartiment de sortie ou au rôle de IAM service Amazon S3, choisissez l'onglet Modifier la configuration de l'attribution des métriques et apportez les modifications sur la page Modifier la configuration de l'attribution. Choisissez Mettre à jour pour enregistrer vos modifications.
Mettre à jour une attribution métrique (AWS CLI)
Après avoir créé une attribution de métrique, vous pouvez utiliser le AWS Command Line Interface (AWS CLI) pour ajouter et supprimer des métriques et modifier sa configuration de sortie. Le code suivant montre comment supprimer des métriques à l'aide de la update-metric-attribution
commande :
aws personalize update-metric-attribution \
--metric-attribution-arn metric attribution arn
\
--remove-metrics metricName1
metricName2
Le code suivant montre comment ajouter une métrique supplémentaire et spécifier une nouvelle configuration de sortie :
aws personalize update-metric-attribution \
--metric-attribution-arn metric attribution arn
\
--metrics-output-config "{\"roleArn\": \"new role ARN
\", \"s3DataDestination\":{\"kmsKeyArn\":\"kms key ARN
\",\"path\":\"s3://amzn-s3-demo-bucket2
/new-folder-name
/\"}}" \
--add-metrics "[{
\"eventType\": \"event type
\",
\"expression\": \"SUM(DatasetType.COLUMN_NAME)
\",
\"metricName\": \"metric name
\"
}]"
En cas de succès, Amazon Personalize renvoie ARN l'attribution métrique que vous avez mise à jour. Pour une liste complète de tous les paramètres, voirUpdateMetricAttribution.
Mettre à jour une attribution métrique (AWS SDK)
Après avoir créé une attribution de métrique, vous pouvez ajouter ou supprimer des métriques et modifier sa configuration de sortie. Le code suivant montre comment supprimer des métriques d'une attribution de métrique.
- SDK for Python (Boto3)
-
import boto3
personalize = boto3.client('personalize')
metricsToRemove = ["metricName1
", "metricName2
"]
response = personalize.update_metric_attribution(
metricAttributionArn = "metric attribution ARN
",
removeMetrics = metricsToRemove
)
- SDK for Java 2.x
-
public static void removeMetrics(PersonalizeClient client,
String metricAttributionArn,
String metric1Name,
String metric2Name) {
ArrayList<String> metricsToRemove = new ArrayList<>(Arrays.asList(metric1Name, metric2Name));
try {
UpdateMetricAttributionRequest request = UpdateMetricAttributionRequest.builder()
.metricAttributionArn(metricAttributionArn)
.removeMetrics(metricsToRemove)
.build();
UpdateMetricAttributionResponse response = client.updateMetricAttribution(request);
System.out.println(response);
} catch (PersonalizeException e) {
System.out.println(e.awsErrorDetails().errorMessage());
}
}
- SDK for JavaScript v3
// Get service clients and commands using ES6 syntax.
import {UpdateMetricAttributionCommand, PersonalizeClient } from
"@aws-sdk/client-personalize";
// create personalizeClient
const personalizeClient = new PersonalizeClient({
region: "REGION"
});
// set the update request param
export const updateMetricAttributionParam = {
metricAttributionArn: "METRIC_ATTRIBUTION_ARN", /* required */
removeMetrics: ["METRIC_NAME_1", "METRIC_NAME_2"] /* specify list of names of metrics to delete */
};
export const run = async () => {
try {
const response = await personalizeClient.send(
new UpdateMetricAttributionCommand(updateMetricAttributionParam)
);
console.log("Success", response);
return response; // For unit tests.
} catch (err) {
console.log("Error", err);
}
};
run();
Le code suivant montre comment ajouter une métrique supplémentaire et spécifier une nouvelle configuration de sortie :
- SDK for Python (Boto3)
-
import boto3
personalize = boto3.client('personalize')
newMetrics = [{
"eventType": "event type
",
"expression": "SUM(DatasetType.COLUMN_NAME)
",
"metricName": "metric name
"
}]
newOutputConfig = {
"roleArn": "Amazon Personalize service role ARN
",
"s3DataDestination": {
"kmsKeyArn": "key ARN
",
"path": "s3://amzn-s3-demo-bucket/<folder>
"
}
}
response = personalize.update_metric_attribution(
metricAttributionArn = "metric attribution arn
",
metricsOutputConfig = newOutputConfig,
addMetrics = newMetrics
)
- SDK for Java 2.x
-
public static void addMetricsAndUpdateOutputConfig(PersonalizeClient personalizeClient,
String metricAttributionArn,
String newMetric1EventType,
String newMetric1Expression,
String newMetric1Name,
String newMetric2EventType,
String newMetric2Expression,
String newMetric2Name,
String roleArn,
String s3Path,
String kmsKeyArn) {
try {
MetricAttribute newAttribute = MetricAttribute.builder()
.eventType(newMetric1EventType)
.expression(newMetric1Expression)
.metricName(newMetric1Name)
.build();
MetricAttribute newAttribute2 = MetricAttribute.builder()
.eventType(newMetric2EventType)
.expression(newMetric2Expression)
.metricName(newMetric2Name)
.build();
ArrayList<MetricAttribute> newAttributes = new ArrayList<>(Arrays.asList(newAttribute, newAttribute2));
S3DataConfig newDataDestination = S3DataConfig.builder()
.kmsKeyArn(kmsKeyArn)
.path(s3Path)
.build();
MetricAttributionOutput newOutputConfig = MetricAttributionOutput.builder()
.roleArn(roleArn)
.s3DataDestination(newDataDestination)
.build();
UpdateMetricAttributionRequest request = UpdateMetricAttributionRequest.builder()
.metricAttributionArn(metricAttributionArn)
.metricsOutputConfig(newOutputConfig)
.addMetrics(newAttributes)
.build();
UpdateMetricAttributionResponse response = personalizeClient.updateMetricAttribution(request);
System.out.println("New metrics added!");
System.out.println(response);
} catch (PersonalizeException e) {
System.out.println(e.awsErrorDetails().errorMessage());
}
}
- SDK for JavaScript v3
// Get service clients and commands using ES6 syntax.
import {UpdateMetricAttributionCommand, PersonalizeClient } from
"@aws-sdk/client-personalize";
// create personalizeClient
const personalizeClient = new PersonalizeClient({
region: "REGION"
});
export const updateMetricAttributionParam = {
metricAttributionArn: "METRIC_ATTRIBUTION_ARN",
addMetrics: [
{
eventType: "EVENT_TYPE", /* required for each metric */
expression: "SUM(DatasetType.COLUMN_NAME)", /* required for each metric */
metricName: "METRIC_NAME", /* required for each metric */
}
],
metricsOutputConfig: {
roleArn: "ROLE_ARN", /* required */
s3DataDestination: {
kmsKeyArn: "KEY_ARN", /* optional */
path: "s3://amzn-s3-demo-bucket/<folderName>/", /* optional */
},
}
};
export const run = async () => {
try {
const response = await personalizeClient.send(
new UpdateMetricAttributionCommand(updateMetricAttributionParam)
);
console.log("Success", response);
return response; // For unit tests.
} catch (err) {
console.log("Error", err);
}
};
run();
En cas de succès, Amazon Personalize renvoie ARN l'attribution métrique que vous avez mise à jour. Pour une liste complète de tous les paramètres, voirUpdateMetricAttribution.