Améliorer les résultats de recherche à l'aide des événements clients v3

Cloud Talent Solution (CTS) est un service qui intègre le machine learning au contexte de la recherche d'emploi. Il renvoie aux demandeurs des résultats de haute qualité qui dépassent largement les limites des méthodes classiques basées sur des mots clés. Prêt à l'emploi, CTS applique directement des modèles de pertinence et des ontologies poste/compétences aux détails de votre offre d'emploi. Vous pouvez enregistrer les événements client en fonction de l'activité des demandeurs afin d'améliorer les résultats qui leur sont renvoyés.

Le présent guide décrit les deux méthodes permettant de tirer parti de cette fonctionnalité. Nous vous recommandons d'utiliser la méthode d'API createClientEventRequest, qui contourne les problèmes d'authentification lors de la transmission de messages à Cloud Talent Solution à l'aide de Cloud Pub/Sub et fournit un ensemble opérationnel d'API permettant de mettre en œuvre le framework d'analyse.

Vous commencerez à publier les données d'événement client à la fin du tutoriel.

Lorsqu'un demandeur d'emploi effectue une action spécifique, l'API permet d'enregistrer cette action. Par exemple, un demandeur ou une autre entité interagissant avec le service reçoit une offre d'emploi (ou une liste d'offres) visible sur son écran, s'apparentant à une liste de résultats de recherche dans un format compressé ou tronqué. Dans ce cas, vous pouvez envoyer un événement IMPRESSION à Cloud Talent Solution, afin de fournir le contexte des résultats de la recherche et de spécifier le contenu visible par le demandeur d'emploi. En outre, lorsque celui-ci clique sur une offre pour afficher la description complète du poste, vous pouvez envoyer un événement VIEW qui enregistre l'intérêt de ce demandeur d'emploi pour ce poste.

Utilisation

L'exemple suivant montre comment envoyer un message à Cloud Talent Solution à l'aide de l'API. Le demandeur d'emploi ou une autre entité utilisant le service a reçu une offre d'emploi apparaissant sur son écran, par exemple dans une liste de résultats de recherche au format condensé ou sous forme d'extraits. Cet événement est généralement associé à la consultation d'une liste d'offres d'emploi sur une seule page, par le demandeur d'emploi.

Java

Pour en savoir plus sur l'installation et la création d'un client Cloud Talent Solution, consultez la page Bibliothèques clientes Cloud Talent Solution.


public static void createClientEvent(String eventId, String requestId,
    List<String> relatedJobNames)
    throws IOException {
  DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
  String date = dateFormat.format(new Date());

  ClientEvent clientEventToBeCreated = new ClientEvent()
      .setCreateTime(date)
      .setEventId(eventId)
      .setParentEventId("NULL")
      .setJobEvent(
          new JobEvent().setJobs(relatedJobNames)
              .setType("VIEW"))
      .setRequestId(requestId);
  CreateClientEventRequest createClientEventRequest = new CreateClientEventRequest()
      .setClientEvent(clientEventToBeCreated);

  ClientEvent returnedEvent = talentSolutionClient.projects().clientEvents()
      .create(DEFAULT_PROJECT_ID, createClientEventRequest).execute();
  System.out.println(returnedEvent);
}

Python

Pour en savoir plus sur l'installation et la création d'un client Cloud Talent Solution, consultez la page Bibliothèques clientes Cloud Talent Solution.

def create_client_event(client_service, event_id, request_id, related_job_names):
    now = datetime.datetime.now()
    date = now.strftime('%Y-%m-%dT%H:%M:%SZ')

    client_event_to_be_created = {
        'create_time': date,
        'event_id': event_id,
        'parent_event_id': 'NULL',
        'job_event': {
            'jobs': related_job_names,
            'type': 'VIEW'
        },
        'request_id': request_id
    }
    request = {
        'client_event': client_event_to_be_created
    }
    response = client_service.projects().clientEvents().create(
        parent=parent, body=request).execute()
    print(response)

Consultez la section Types d'événements pour obtenir la liste complète des types d'événements disponibles.

Enregistrer les requêtes d'événement client à l'aide de Cloud Pub/Sub

Exigences

Pour pouvoir publier des messages pubsub, vous ne devez publier les messages QUE dans le projet p-jobs et le sujet cloud-jobs-events.

Les messages pubsub sans requestId sont supprimés.

Prérequis

Vous devez avoir :

Ce tutoriel contient les instructions d'intégration permettant de créer un client éditeur, de publier des événements clients par le biais de Cloud Pub/Sub et de les nettoyer. Nous y faisons une démonstration de l'intégration en passant par une application Cloud Talent Solution qui utilise du code Java et qui explique comment effectuer des appels à Cloud Talent Solution plutôt que d'expliquer les bibliothèques clientes Java.

Publier des données d'événement client sur Cloud Talent Solution

Cette section explique comment publier des données d'événement client sur Cloud Talent Solution. Ces données peuvent permettre d'améliorer la pertinence de votre entreprise et de vos besoins en matière de recherche d'emploi.

Suivez le Guide pour les éditeurs de Google Cloud Pub/Sub pour publier des messages dans Cloud Talent Solution.

Vérifiez que les messages réellement envoyés suivent le modèle décrit ci-dessous.

Exemples de messages

Événement IMPRESSION

JSON

    {
      "eventId": "857523730h91wrgkih9qpl12z8bf",
      "eventType": "IMPRESSION",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": [
        "jobs/4000000000",
        "jobs/4000000001"
      ],
      "eventTimestampMillis": 1518200614309,
    }
    

Événement VIEW

JSON

    {
      "eventId": "9q9wa69qgfx1q1xzwn3zo25z",
      "eventType": "VIEW",
      "requestId": "248pla4w-8wpl-87rt-15rt-430ue8u541m8",
      "relatedJobNames": [
        "jobs/8000000000",
        "jobs/8000000001"
      ],
      "eventTimestampMillis": 1518200617426,
    }
    

Vérifier la mise en œuvre à l'aide des outils de gestion Cloud Talent Solution

Cloud Talent Solution fournit des outils en libre-service aux utilisateurs de l'API pour vérifier leur mise en œuvre. En savoir plus sur les outils en libre-service.