Crea progetti

Un progetto Azioni pacchettizza tutte le azioni in un unico container. Tu pubblica questo progetto su Actions on Google in modo che l'Assistente Google sappia come scoprire e richiamare le tue esperienze di conversazione.

componenti del progetto di azioni
Figura 1. Struttura del progetto Actions
.

Puoi usare i seguenti componenti di basso livello per creare il tuo progetto Actions:

  • Le impostazioni e le risorse definiscono i metadati di progetto e risorse come le icone di progetto. Google utilizza queste informazioni per pubblicare le tue Azioni alla directory dell'assistente, in modo che gli utenti possano rilevare e richiamare che li rappresentano.

  • Gli intent rappresentano un'attività da eseguire, ad esempio input dell'utente o un evento di sistema che deve essere elaborato. Il tipo più comune di l'intent che utilizzerai sono gli intenti dell'utente. Questi intent ti consentono di dichiarare frasi che vengono espanse in modo naturale dalla NLU (comprensione del linguaggio naturale) per includere molte altre frasi simili. La NLU utilizza l'aggregazione queste frasi per addestrare un modello linguistico che l'assistente utilizza per abbinare di testo. Durante una conversazione, se un input dell'utente corrisponde alla lingua dell'intent modello, il runtime dell'assistente invia l'intent all'azione, in modo che possa elaborarlo e rispondere all'utente.

  • I tipi ti consentono di estrarre dati strutturati dall'input degli utenti. Di Annotando frasi di addestramento con tipi, la NLU può estrarre pertinenti, strutturati i dati, in modo da non dover analizzare l'input a risposta aperta.

  • Gli intent di processo delle scene e sono i principali esecutori logici per le tue Azioni. Possono eseguire il riempimento degli slot, valutare la logica condizionale, restituire i prompt all'utente e persino chiamare servizi web esterni per la logica di business. In combinazione con gli intent, le scene sono uno strumento efficace per rilevare input utente specifici o eventi di sistema e svolgere logica.

  • I prompt definiscono le risposte statiche o dinamiche che utilizzi per e rispondere agli utenti.

  • I webhook consentono di delegare il lavoro aggiuntivo ai servizi web (fulfillment), ad esempio la convalida dei dati o la generazione di prompt. Le tue azioni comunicare con il tuo fulfillment tramite un protocollo webhook basato su JSON.

  • Interactive Canvas ti consente di creare richiami e immersive con le app web che utilizzano HTML, CSS e JavaScript.

Creare un progetto

Devi creare un progetto nella console di Actions prima di poter sviluppare Assistente Google. Per creare un progetto:

  1. Vai alla console Actions.
  2. Fai clic su Nuovo progetto.
  3. Inserisci un nome per il progetto e fai clic su Crea progetto.
  4. Nella schermata Che tipo di azione vuoi creare?, seleziona una categoria che rappresenti al meglio il tuo progetto e fai clic su Avanti.
  5. Nella schermata Come vuoi crearlo, seleziona un modo per creare e fai clic su Inizia a creare. Ad esempio, puoi iniziare con uno spazio progetto o con un campione.
di Gemini Advanced.

Crea un progetto SDK Local Actions

Dopo aver creato un progetto Actions nella console Actions, puoi inizializzare un progetto nel tuo ambiente di sviluppo locale.

Per inizializzare un progetto SDK Actions da un progetto Actions esistente, segui questi passaggi:

  1. Crea una directory vuota per il progetto Actions sul tuo file system locale.
  2. In questa directory vuota, crea una directory sdk.
  3. Cambia la directory di lavoro nella directory sdk nel terminale.

Inizia con un progetto vuoto

Se vuoi iniziare dal progetto vuoto che hai appena creato nella console, esegui gactions pull --project-id <my-project-id>.

$ mkdir myAction
$ cd myAction
$ mkdir sdk
$ cd sdk
$ gactions pull --project-id my-project-id
Pulling your project files from Draft for a project id: "my-project-id"
✔ Done. You should see the files written in path/to/myAction/sdk

Inizia con un progetto di esempio

Se vuoi iniziare da un progetto di esempio, esegui gactions init <sample name>.

$ mkdir actions-test
$ cd actions-test
$ mkdir sdk
$ cd sdk
$ gactions init question
Writing sample files for question.
✔ Done. Please checkout the following documentation - https://developers.google.com/assistant/conversational/build on the next steps on how to get started.

Definisci le informazioni del progetto

Le impostazioni e le risorse del progetto definiscono informazioni sul progetto, funzioni e piattaforme, lingue supportate, nome visualizzato, descrizione, loghi e altro ancora. La tabella seguente descrive le impostazioni e le risorse principali che fornisci. Actions on Google utilizza questa opzione per implementare e pubblicare il progetto sull'Assistente Google Google Cloud.

Nome Descrizione
Informazioni sulla directory Fornisce informazioni per consentire ad Actions on Google di pubblicare il tuo progetto nella directory dell'assistente. Include metadati e descrizioni sul tuo progetto e sulle risorse per le immagini per i loghi e i banner.
Targeting per località Consente di configurare le impostazioni internazionali in cui sono disponibili le azioni.
Capacità di superficie Consente di configurare le piattaforme su cui sono disponibili le Azioni.
Dettagli dell'azienda Specifica i dati di contatto della tua azienda.
Verifica del brand Collega un sito web o un'app per Android di tua proprietà per ottenere vantaggi extra come nomi di chiamata riservati e collegamenti a siti web all'interno delle Azioni.
Rilascia Configura release di test e produzione diverse per l'azione per i test e la produzione.
Link all'assistente Consenti agli utenti di richiamare le azioni dalle tue proprietà web.

Per definire le informazioni del progetto:

  1. Definisci le impostazioni globali per il progetto Actions in sdk/settings/settings.yaml. Consulta la guida di riferimento per le Impostazioni documentazione per i valori supportati.

    Il seguente snippet mostra un file sdk/settings/settings.yaml di esempio:

    accountLinking:
      enableAccountCreation: true
      linkingType: GOOGLE_SIGN_IN
    category: GAMES_AND_TRIVIA
    projectId: my-project-id
    ...
    

  2. Definisci le impostazioni che possono variare in base alle impostazioni internazionali dell'utente (ad esempio, frasi di chiamata in lingue diverse) in un file sdk/settings/<locale>/settings.yaml, sostituendo locale con le impostazioni internazionali di destinazione.

    Vedi la sezione LocalizedSettings documentazione di riferimento per i valori supportati.

    Lo snippet riportato di seguito è un esempio di impostazioni in inglese definite in un File sdk/settings/en/settings.yaml:

    localizedSettings:
      developerEmail: developer@developers.com
      developerName: Developer Name
      displayName: My Display Name
      fullDescription: full description of the action
      largeBannerImage: https://path/to/large/banner
      privacyPolicyUrl: http://path/to/privacy/policy
      sampleInvocations:
      - Talk to My Display Name
      shortDescription: short description of the action
      smallLogoImage: https://path/to/small/logo
      voice: female_1
    ...
    

Aggiungi risorse

Puoi archiviare risorse come file immagine, file audio e stringhe Le azioni vengono eseguite in progetto e come riferimento dai file di configurazione (ad esempio, definizioni o condizioni) utilizzando la variabile $resources definita dal sistema.

Le risorse del progetto sono archiviate in resources/ e ogni tipo di risorsa è a una cartella assegnata nella directory.

Puoi localizzare le risorse creando cartelle specifiche delle impostazioni internazionali nella risorsa cartella, ad esempio puoi archiviare le versioni spagnole delle stringhe resources/strings/es/<filename>.yaml.

Immagini

I file immagine vengono archiviati in resources/images/ e puoi farvi riferimento con $resources.images.<name of the image file without file extension>. Le estensioni dei file consentite sono:

  • gif
  • png
  • jpg
  • jpeg

Ad esempio, se la versione inglese del logo piccolo viene salvata in resources/images/en/square.png e la versione inglese del banner grande è salvato rispettivamente in resources/images/en/landscape.jpg, sdk/settings/en/settings.yaml dell'esempio precedente diventerebbe:

localizedSettings:
  developerEmail: developer@developers.com
  developerName: Developer Name
  displayName: My Display Name
  fullDescription: full description of the action

  largeBannerImage: $resources.images.landscape
  privacyPolicyUrl: http://path/to/privacy/policy
  sampleInvocations:
  - Talk to My Display Name
  shortDescription: short description of the action

  smallLogoImage: $resources.images.square
  voice: female_1
...

File audio

I file audio vengono archiviati in resources/audio/ e puoi farvi riferimento con $resources.audio.<name of the audio file without file extension>.

Le estensioni dei file consentite sono:

  • mp3
  • mpeg

Ad esempio, puoi fare riferimento alle registrazioni audio dei prompt:

candidates:
  - first_simple:
      variants:
        - speech: your speech response
    content:
      media:
        mediaType: audio
        mediaObjects:
          - name: media name
            description: media description
            url: $resources.audio.intro

Stringa

Le stringhe vengono memorizzate in resources/strings/ come file .yaml. Ogni file contiene una mappa di chiavi stringa e valori associati, che possono essere singole stringhe o elenchi di stringhe. Puoi fare riferimento ai valori utilizzando $resources.strings.<name of the image file without file extension>.<key> per singoli valori stringa o per ottenere un valore casuale da un elenco $resources.strings.<name of the image file without file extension>.<key>.<numerical index> per uno specifico valore di stringa in un elenco.

Ad esempio, usando le stringhe di risorse per la localizzazione delle stringhe, sdk/settings/en/settings.yaml dell'esempio precedente potrebbe diventare:

localizedSettings:
  developerEmail: developer@developers.com
  developerName: $resources.strings.appinfo.developerName
  displayName: $resources.strings.appinfo.displayName
  fullDescription: $resources.strings.appinfo.fullDescription
  largeBannerImage: $resources.images.landscape
  privacyPolicyUrl: $resources.strings.appinfo.privacyPolicyUrl
  sampleInvocations:
  - $resources.strings.invocations.sample
  shortDescription: $resources.strings.appinfo.shortDescription
  smallLogoImage: $resources.images.square
  voice: female_1
...

Testa i progetti nel simulatore

La console di Actions fornisce un simulatore in cui visualizzare l'anteprima delle azioni. La permette di vedere informazioni di debug, impostare funzionalità del dispositivo, simulare impostazioni internazionali e altre impostazioni.

Figura 3. Le aree principali del simulatore: (1) input dell'utente, (2) visualizzazione dei dispositivi, (3) opzioni e impostazioni e (4) log delle conversazioni.

Per testare un progetto:

  1. Esegui gactions deploy preview per eseguire il deployment dell'azione in "anteprima" e attivare nel simulatore.
  2. Apri l'URL nell'output comando per accedere al Simulatore.
$ gactions deploy preview
Deploying your project files to your Actions console preview for a project id: "my-project". This may take a few minutes.
Sending configuration files
Waiting for server to respond.
✔ Done. You can now navigate to the Actions Console simulator to test your changes: http://console.actions.google.com/project/my-project/simulator?disableAutoPreview