Utilizzo dei modelli Mustache con lo Snap Prompt Generator in SnapLogic

Foto frontale di Aaron Kesler
4 lettura minima
Riassumere questo con l'AI

Nel mondo dell'integrazione dei dati basata sull'intelligenza artificiale, la capacità di generare prompt in modo dinamico è fondamentale per creare flussi di lavoro adattabili e reattivi. Il Prompt Generator Snap di SnapLogic sfrutta i modelli Mustache per consentire agli utenti di creare output di testo dinamici basati sui dati di input. Questo white paper ha lo scopo di istruire gli utenti sui fondamenti dei modelli Mustache e su come utilizzarli in modo efficace all'interno del Prompt Generator Snap.

Che cos'è il Mustache Templating?

Mustache è un motore di template senza logica per la creazione di contenuti dinamici. Il termine "senza logica" significa che i template Mustache non contengono alcuna logica di programmazione, come loop o condizionali. Mustache si basa invece sui dati che gli vengono passati, solitamente in formato JSON, per popolare il template. Questa semplicità rende Mustache potente e facile da usare per la generazione di contenuti dinamici.

Caratteristiche principali di Mustache

  • Senza logica: semplifica la creazione di modelli evitando la logica incorporata.
  • Basato sui dati: i modelli vengono compilati sulla base di dati esterni.
  • Indipendente dal linguaggio: può essere utilizzato con vari linguaggi di programmazione e piattaforme.

Nozioni di base sulla sintassi Mustache

Variabili

Le variabili in Mustache sono indicate da doppie parentesi graffe {{ }}Quando il modello viene elaborato, questi segnaposto vengono sostituiti con i valori corrispondenti dai dati di input.

Esempio:

Hello, {{name}}!

Se i dati di input sono { "name": "John" }, il risultato sarà:

Hello, John!

Sezioni

Le sezioni vengono utilizzate per iterare su elenchi o visualizzare contenuti in modo condizionale. Sono indicate da {{#section}} per l'apertura e {{/section}} per la chiusura.

Esempio:

{{#items}}
  {{name}} costs {{price}}.
{{/items}}

Se i dati di input sono { "items": [ { "name": "Apple", "price": "$1" }, { "name": "Banana", "price": "$0.5" } ] }, il risultato sarà:

Apple costs $1.
Banana costs $0.5.

Sezioni invertite

Le sezioni invertite vengono utilizzate per visualizzare il contenuto quando una variabile è vuota o falsa. Sono indicate da {{^section}}.

Esempio:

{{#hasItems}}
  We have items in stock.
{{/hasItems}}
{{^hasItems}}
  Sorry, no items available.
{{/hasItems}}

Se i dati di input sono { "hasItems": false }, il risultato sarà:

Sorry, no items available.

Utilizzo di Mustache con Snap Prompt Generator

Panoramica

Lo Snap Prompt Generator consente agli utenti di creare prompt dinamici combinando modelli Mustache con dati di input. Questo Snap è particolarmente utile per generare messaggi, notifiche o qualsiasi contenuto testuale che deve essere personalizzato in base a dati di input variabili.

Guida passo passo

  1. Creare una nuova pipeline: iniziare creando una nuova pipeline in SnapLogic Designer.

  2. Aggiungi lo Snap Generatore di prompt: trascina e rilascia lo Snap Generatore di prompt nella tua pipeline.

  3. Configura il modello:

    • Apri le impostazioni di Snap.

    • Nel campo "Modello", inserisci il tuo modello Mustache. Ad esempio:Hello, {{firstName}} {{lastName}}. Your order {{orderNumber}} has been shipped.

  4. Fornire i dati di input:

    • Collega la fonte dei dati di input allo Snap Prompt Generator. Potrebbe trattarsi di uno Snap JSON Generator o di qualsiasi altro Snap che fornisce dati in formato JSON.

    • Assicurati che i dati inseriti corrispondano alle variabili nel modello. Esempio di dati inseriti:{
      "firstName": "Jane",
      "lastName": "Doe",
      "orderNumber": "12345"
      }

  5. Convalida ed esecuzione:

    • Convalida la pipeline per verificare la presenza di eventuali errori.

    • Esegui la pipeline per visualizzare l'output generato. L'output previsto per l'esempio sopra riportato sarebbe:Hello, Jane Doe. Your order 12345 has been shipped.

Utilizzo avanzato

Oggetti nidificati

Mustache supporta oggetti nidificati, consentendo di accedere a livelli più profondi di dati.

Esempio:

{{person.name}} lives in {{person.address.city}}.

Se i dati di input sono:

{
  "person": {
    "name": "Alice",
    "address": {
      "city": "Wonderland"
    }
  }
}

Il risultato sarà:

Alice lives in Wonderland.

Elenchi e cicli

È possibile scorrere gli elenchi all'interno dei dati utilizzando le sezioni.

Esempio:

{{#people}}
  {{name}} is from {{city}}.
{{/people}}

Se i dati di input sono:

{
  "people": [
    { "name": "Bob", "city": "Paris" },
    { "name": "Charlie", "city": "London" }
  ]
}

Il risultato sarà:

Bob is from Paris.
Charlie is from London.

Suggerimenti per la risoluzione dei problemi

  • Dati mancanti: assicurarsi che tutte le variabili utilizzate nel modello siano presenti nei dati di input.
  • Output errato: verifica che la struttura JSON dei tuoi dati di input corrisponda al formato previsto dal modello.
  • Errori di sintassi: ricontrollare la sintassi Mustache, in particolare l'uso delle parentesi graffe e dei tag di sezione.

Conclusione

Il templating Mustache all'interno di Prompt Generator Snap offre un potente strumento per la creazione di output di testo dinamici e basati sui dati. Comprendendo le basi della sintassi Mustache e come integrarla con SnapLogic, gli utenti possono migliorare i propri flussi di lavoro di integrazione dei dati con la generazione di contenuti personalizzati e adattabili.

Per ulteriori informazioni ed esempi avanzati, consultare la documentazione SnapLogic e le risorse relative ai modelli Mustache.

Foto frontale di Aaron Kesler
Ex Sr. Product Manager, AI/ML presso SnapLogic
Categoria: Tecnica