Migliora il modello preaddestrato con i dati sugli eventi del client (v3)

Cloud Talent Solution è un servizio che porta il machine learning nella tua esperienza di ricerca di lavoro, restituisce risultati di alta qualità a chi cerca lavoro ben oltre i limiti dei metodi tradizionali basati su parole chiave. Fin dal primo momento, CTS applica modelli di pertinenza e accordi per job/qualifica ai tuoi job. Puoi migliorare i risultati restituiti alle persone in cerca di lavoro registrando gli eventi del client in base all'attività di chi cerca lavoro.

Esistono due metodi per utilizzare questa funzionalità, entrambi descritti nella guida. Ti consigliamo di utilizzare il metodo API createClientEventRequest, per evitare le sfide di autenticazione relative all'invio di messaggi a Cloud Talent Solution utilizzando Cloud Pub/Sub e fornendo un insieme pulito di API per implementare il framework di analisi.

Quando un richiedente cerca un'azione specifica, puoi utilizzare l'API per registrare l'azione. Ad esempio, la persona in cerca di lavoro o un'altra entità che interagisce con il servizio ha ricevuto un rendering di un job (o un elenco di job) come, ad esempio, in un elenco di risultati di ricerca in formato compresso o ritagliato. In questo caso, puoi inviare un evento IMPRESSION a Cloud Talent Solution per fornire il contesto dei risultati di ricerca e cosa può vedere un utente in cerca di lavoro. Inoltre, quando un utente cerca un lavoro per visualizzarne la descrizione completa, puoi inviare un evento VIEW per registrare l'interesse per questo job in questa posizione.

Utilizzo

L'esempio seguente illustra come inviare un messaggio a Cloud Talent Solution utilizzando l'API. La persona in cerca di lavoro o un'altra entità che interagisce con il servizio ha ricevuto un job (o un elenco di job) visualizzato nella propria visualizzazione, ad esempio in un elenco di risultati di ricerca in formato compresso o ritagliato. Questo evento in genere è associato alla visualizzazione di un elenco di offerte di lavoro su una singola pagina da parte di una persona in cerca di lavoro.

Python

Per ulteriori informazioni sull'installazione e la creazione di un client Cloud Talent Solution, consulta Librerie client di 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)

Visita Tipi di eventi per un elenco completo dei tipi di eventi disponibili.

Registrare gli eventi client utilizzando Cloud Pub/Sub

Per sfruttare questo metodo, invia messaggi strutturati a Cloud Talent Solution che acquisiscono le reazioni delle persone in cerca di lavoro ai risultati in base alle loro query. Questi messaggi vengono inviati a Cloud Talent Solution utilizzando Cloud Pub/Sub. Da qui, Cloud Talent Solution analizza i messaggi dal sito tenant e li fornisce al modello di machine learning.

Il formato del messaggio e le richieste Pub/Sub sono descritti di seguito.

Vari scenari e flusso di lavoro

Di seguito sono riportati due esempi che mostrano vari scenari di lavoro in cerca di lavoro, visualizzazione e candidatura per una posizione.

Tieni presente che devi pubblicare SOLO nel progetto p-jobs e nell'argomento cloud-jobs-events.

Flusso di lavoro 1

  1. In cerca di lavoro esegue una ricerca. Ad esempio: SFM del prodotto SF.

    I risultati di ricerca vengono restituiti alla persona in cerca di lavoro.

    L'oggetto della risposta di ricerca del job inviata al server del cliente contiene un requestId univoco (ad esempio: 8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==). Utilizza questo requestId per tutti i messaggi futuri relativi a questa particolare chiamata API SearchJobsRequest.

    Invia a Cloud Talent Solution un messaggio IMPRESSION.

    Esempio di messaggio di evento:

    {
      "eventId": "ID1",
      "eventType": "IMPRESSION",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000000", "jobs/4000000001","jobs/4000000002",
      "jobs/4000000003", "jobs/4000000004"]
      "eventTimestampMillis": 1494379614309
    }
    
  2. Chi cerca un lavoro seleziona un risultato (un'offerta di lavoro) per visualizzare tutti i dettagli del lavoro.

    Invia a Cloud Talent Solution un messaggio VIEW.

    {
      "eventId": "ID2",
      "eventType": "VIEW",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000000"]
      "eventTimestampMillis": 1494379614311
    }
    
  3. Chi cerca un'offerta di lavoro si applica all'offerta di lavoro visualizzata.

    a. Se la persona in cerca di lavoro viene reindirizzata a una pagina nello stesso dominio (una pagina interna dell'applicazione), invia a Cloud Talent Solution un messaggio APPLICATION_START.

    {
      "eventId": "ID3",
      "eventType": "APPLICATION_START",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000000"]
      "eventTimestampMillis": 1494379614310
    }
    

    b. Se la persona in cerca di lavoro viene reindirizzata a una pagina esterna per l'applicazione, invia a Cloud Talent Solution un messaggio APPLICATION_REDIRECT.

       {
         "eventId": "ID3",
         "eventType": "APPLICATION_REDIRECT",
         "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
         "relatedJobNames": ["jobs/4000000000"]
         "eventTimestampMillis": 1494379614310
       }
    
  4. Quando il cercatore di lavoro completa una domanda interna, invia a Cloud Talent Solution un messaggio APPLICATION_FINISH:

    {
      "eventId": "ID4",
      "eventType": "APPLICATION_FINISH",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000000"]
      "eventTimestampMillis": 1494379614311
    }
    
  5. Chi cerca un impiego torna ai risultati di ricerca (o se non ha mai fatto clic su un'offerta di lavoro) e continua con la pagina 2 dei risultati.

    Invia a Cloud Talent Solution un messaggio IMPRESSION con il prossimo insieme di risultati di pagina 2. Nota: c'è un nuovo requestId che viene generato nella risposta della chiamata API SearchJobsRequest che genera la seconda pagina dei risultati. (ad esempio,99e5b99c-f1ba-4f85-b17d-ccf878f451f9:APAb7IRESj+/Hzwa3bBd54P3qPx2yOWm5w==).

    {
      "eventId": "ID5",
      "eventType": "IMPRESSION",
      "requestId": "99e5b99c-f1ba-4f85-b17d-ccf878f451f9:APAb7IRESj+/Hzwa3bBd54P3qPx2yOWm5w==",
      "relatedJobNames": ["jobs/4000000005", "jobs/4000000006","jobs/4000000007",
      "jobs/4000000008", "jobs/4000000009"]
      "eventTimestampMillis": 1494379614400
    }
    
  6. In cerca di lavoro, continua alla pagina 3 dei risultati di ricerca.

    Invia a Cloud Talent Solution un messaggio IMPRESSION con il prossimo insieme di risultati. NOTA: esiste un nuovo requestId (ad esempio,e2d2b916-78c3-4c65-aecc-d8452bc0afb0:APAb7IRvCsNPiRXYkgF8PN5e8BkbFzKOyg==).

    {
      "eventId": "ID6",
      "eventType": "IMPRESSION",
      "requestId": "e2d2b916-78c3-4c65-aecc-d8452bc0afb0:APAb7IRvCsNPiRXYkgF8PN5e8BkbFzKOyg==",
      "relatedJobNames": ["jobs/4000000010", "jobs/4000000011","jobs/4000000012",
      "jobs/400000013", "jobs/4000000014"]
      "eventTimestampMillis": 1494379614500
    }
    

Flusso di lavoro 2

  1. In cerca di lavoro esegue una ricerca. Ad esempio: SFM del prodotto SF.

    I risultati di ricerca vengono restituiti alla persona in cerca di lavoro.

    L'oggetto della risposta di ricerca del job contiene un requestId univoco (ad esempio: a2179a9b-cf73-413e-8076-98af08b991ad). Utilizza questo requestId per tutti i messaggi futuri relativi alla chiamata API SearchJobsRequest.

    Invia a Cloud Talent Solution un messaggio IMPRESSION.

    {
      "eventId": "ID1",
      "eventType": "IMPRESSION",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000000", "jobs/4000000001","jobs/4000000002",
      "jobs/4000000003", "jobs/4000000004"]
    , "eventTimestampMillis": 1494379614309
    }
    
  2. Chi cerca un lavoro seleziona un risultato (un'offerta di lavoro) per visualizzare tutti i dettagli del lavoro.

    Invia a Cloud Talent Solution un messaggio VIEW.

    {
      "eventId": "ID2",
      "eventType": "VIEW",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000000"]
      "eventTimestampMillis": 1494379614311
    }
    
  3. In cerca di job viene eseguita un'applicazione con clic singolo per un job, come descritto in APPLICATION_QUICK_SUBMISSION.

    Invia a Cloud Talent Solution un messaggio APPLICATION_QUICK_SUBMISSION con il prossimo insieme di risultati.

    {
      "eventId": "ID3",
      "eventType": "APPLICATION_QUICK_SUBMISSION",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000000"]
      "eventTimestampMillis": 1494379614500
    }
    
  4. In cerca di lavoro vengono eseguite le seguenti azioni.

    a. Chi cerca un lavoro torna ai risultati di ricerca per un'offerta di lavoro direttamente dalla pagina dei risultati di ricerca. Il processo di candidatura è più lungo di quello definito in APPLICATION_QUICK_SUBMISSION (ovvero un processo di candidatura in più passaggi).

    Invia a Cloud Talent Solution un messaggio APPLICATION_START_FROM_SERP.

    {
      "eventId": "ID4",
      "eventType": "APPLICATION_START_FROM_SERP",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000014"]
      "eventTimestampMillis": 1494379927500
    }
    

    b. In cerca di lavoro viene completata la candidatura per il lavoro. Invia a Cloud Talent Solution un messaggio APPLICATION_FINISH.

    {
      "eventId": "ID5",
      "eventType": "APPLICATION_FINISH",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000014"]
      "eventTimestampMillis": 1494379935500
    

    }

  5. Chi cerca un lavoro torna ai risultati di ricerca e si applica a un lavoro direttamente dalla pagina dei risultati di ricerca. Il processo di candidatura reindirizza la persona in cerca di lavoro a un altro dominio esterno al sito tenant (applicazione esterna) da cui non è possibile monitorare l'avanzamento del richiedente.

    Invia a Cloud Talent Solution un messaggio APPLICATION_REDIRECT_FROM_SERP.

    {
      "eventId": "ID6",
      "eventType": "APPLICATION_START_FROM_SERP",
      "requestId": "8d2bdd5d-1361-42a5-a0fd-bd2b58b7d8fb:APAb7ISd4Sc5faibw2V5hTU/OoC2WAW5AA==",
      "relatedJobNames": ["jobs/4000000017"]
      "eventTimestampMillis": 149438807500
    }
    

    Questa è diversa da APPLICATION_REDIRECT, dove una persona in cerca di lavoro si trova nella pagina della descrizione del lavoro quando viene reindirizzata.

Messaggio di evento

Campi obbligatori:

  • eventId (definito dal cliente): ogni messaggio inviato a Cloud Talent Solution deve avere un valore eventId univoco. Come best practice, incorpora il timestamp durante la definizione di questo campo per garantire la non flessibilità. La lunghezza massima di questo campo è di 255 caratteri.

  • requestId è il valore di requestId restituito dall'oggetto di risposta della ricerca di job. Questo valore è univoco per una determinata chiamata API SearchJobsRequest. Viene utilizzato per tutti i messaggi successivi derivanti dall'evento originale di ricerca IMPRESSION. Quando viene effettuata una nuova chiamata API SearchJobsRequest (ad esempio, la persona in cerca di lavoro va alla pagina successiva dei risultati) il campo requestId cambia.

    Tutti i messaggi pubsub che non contengono requestId vengono ignorati.

  • eventType è un tipo di evento, come VIEW o IMPRESSION. (consulta il riferimento EventType per un elenco completo dei valori). I campi minimi obbligatori per abilitare i miglioramenti del modello sono IMPRESSION, VIEW e APPLICATION_START (e/o APPLICATION_REDIRECT).

  • relatedJobNames: questi sono i valori dei nomi dei job per tutti i job mostrati alla persona in cerca di lavoro al momento dell'evento. Per un evento IMPRESSION, questo è un elenco di tutti i job sulla pagina; per un evento VIEW, è il nome del lavoro visualizzato. I valori dei nomi sono nel formato projects/project-id/jobs/12343213 e così via (consulta i campi dei job per le definizioni)

  • eventTimestampMillis Il timestamp dell'evento, misurato in millisecondi dal periodo. Questo timestamp deve riflettere il momento in cui l'evento si è effettivamente verificato, non il momento in cui il messaggio è stato inviato.

Invia messaggio

Il tuo messaggio evento deve essere inviato al servizio Cloud Pub/Sub utilizzando un ID progetto e un ID argomento specifici. Per istruzioni, consulta la guida rapida agli eventi client di Cloud Talent Solution.