Questo documento descrive che cosa sono le istruzioni di sistema e le best practice per la loro stesura efficace. Per scoprire come aggiungere istruzioni di sistema ai prompt, consulta Utilizzare le istruzioni di sistema.
Le istruzioni di sistema sono un insieme di istruzioni che il modello elabora prima di elaborare i prompt. Ti consigliamo di utilizzare le istruzioni di sistema per indicare al modello come vuoi che si comporti e risponda ai prompt. Ad esempio, puoi includere elementi come una persona da adottare, informazioni contestuali e istruzioni di formattazione.
Le istruzioni di sistema sono particolarmente utili quando vuoi fornire al modello informazioni che un utente finale non può vedere o modificare. In questo modo, puoi fornire al modello un contesto aggiuntivo per comprendere l'attività, fornire risposte più personalizzate e rispettare linee guida specifiche durante l'intera interazione dell'utente con il modello. Inoltre, le istruzioni di sistema sono utili quando vuoi eseguire più prompt con lo stesso insieme di istruzioni.
Quando le istruzioni di sistema sono impostate, si applicano all'intera richiesta. Le istruzioni di sistema funzionano su più turni di utenti e modelli se incluse nel prompt. Sebbene le istruzioni di sistema siano separate dai contenuti del prompt, fanno comunque parte dei prompt complessivi e sono quindi soggette alle norme standard sull'utilizzo dei dati.
Modelli supportati
I seguenti modelli supportano le istruzioni di sistema:
- Tutte le versioni del modello Gemini 1.5 Pro
- Tutte le versioni del modello Gemini 1.5 Flash
- Versione Gemini 1.0 Pro
gemini-1.0-pro-002
Casi d'uso
In genere, consigliamo di utilizzare le istruzioni di sistema per eseguire una o più delle seguenti operazioni:
- Definisci un profilo o un ruolo
- Definisci il formato di output
- Definisci lo stile e il tono dell'output
- Definisci obiettivi o regole per l'attività
Fornisci ulteriore contesto per il prompt
Persona o ruolo
Puoi influenzare la risposta di un modello ai prompt definendo una persona o un ruolo nelle istruzioni di sistema.
Ad esempio, supponiamo che tu voglia utilizzare un modello per aiutare gli studenti a scrivere i compiti. Confronta la differenza nelle risposte del modello quando definisci i seguenti ruoli:
- Sei un bot con il compito di insegnare agli studenti universitari a scrivere un tema su un determinato argomento.
- Sei un bot incaricato di aiutare gli studenti delle scuole elementari a scrivere un tema su un determinato argomento.
Istruzioni di sistema | Bot per studenti universitari | Bot per studenti delle scuole elementari |
---|---|---|
Sei un bot incaricato di insegnare agli studenti universitari come scrivere un saggio su un determinato argomento. | Sei un bot incaricato di aiutare gli scolari della scuola primaria a scrivere un tema su un determinato argomento. | |
Prompt | Oggetto: Fotosintesi | Oggetto: Fotosintesi |
Risposta | Scrivere un saggio sulla fotosintesi: una guida per gli studenti universitari La fotosintesi è un processo affascinante e complesso che costituisce la base della vita sulla Terra. Scrivere un articolo su questo argomento può essere un'esperienza gratificante, che ti consente di approfondire le sue complessità e comprenderne il significato. Ecco un'analisi di come affrontare questa tarefa:
Esempi di titoli di articoli:
Ricorda: un articolo ben scritto sulla fotosintesi deve essere chiaro, informativo e coinvolgente. Se segui questi passaggi e utilizzi una base di ricerca solida, puoi produrre un articolo efficace che dimostri la tua comprensione di questo processo biologico essenziale. |
È un argomento interessante. La fotosintesi è estremamente importante per la vita sulla Terra. Ecco come scrivere un articolo in merito:
Ricorda: sei tu l'esperto del tuo articolo. Divertiti a imparare e scrivere sulla fotosintesi. |
Formato di output
Puoi influenzare il modo in cui un modello formatta la risposta definendo un formato di output, ad esempio Markdown o JSON, nelle istruzioni di sistema.
Ad esempio, supponiamo che tu voglia utilizzare un modello per riepilogare le recensioni dei clienti per la tua attività. Confronta la differenza nelle risposte del modello quando definisci i seguenti formati di output:
- Mostra la risposta in JSON. Alla fine, al di fuori dell'oggetto JSON, scrivi 3-5 frasi di consiglio all'attività su come migliorare.
- Nessun requisito di formattazione.
Istruzioni di sistema | JSON | Nessun requisito di formattazione |
---|---|---|
Sei un professionista delle pubbliche relazioni per attività di alto livello. Segui queste istruzioni e basa la tua risposta sull'input utente fornito. Istruzioni:
|
Sei un professionista delle pubbliche relazioni per attività di alto livello. Segui queste istruzioni e basa la tua risposta sull'input utente fornito. Istruzioni:
|
|
Prompt |
Chad Brocker: 4 stelle Questa spa è deliziosa. L'intera atmosfera ti fa rilassare appena entri. È quasi come se fossi in trance. Non devi preoccuparti di NIENTE. I lavoratori hanno il tuo programma e ti guidano nell'esperienza. Tutto ciò che ho ricevuto è stato fantastico. Il massaggio, il trattamento viso, il fango. Inoltre, hanno un divieto assoluto di cellulari, quindi sembra davvero di essere in un altro mondo. È un po' costoso, però. Visualizza il prompt completo
Lisa Simmens: 5 stelle Ci siamo divertiti molto. Io e la mia migliore amica ci siamo regalate una giornata in spa per i nostri compleanni. Ti dico che le nostre vite sono cambiate. Il personale fa di tutto per assicurarsi che tu possa usufruire della migliore esperienza possibile. Dalle domande ai servizi di alta qualità e all'assicurarsi che tu arrivi in tempo a ogni appuntamento, sono stati davvero i migliori. Torneremo presto. P.S.: prova il trattamento di esfoliazione totale del corpo. Allie Wood: 2 stelle Anche se il personale è stato fantastico per quanto riguarda l'assistenza clienti, il mio massaggio faceva male e il mio trattamento viso mi ha bruciato. Inoltre, non ti hanno permesso di avere il cellulare, il che causa ulteriore stress. L'atmosfera era tranquilla e rilassante, ma non avere il cellulare non mi ha permesso di rilassarmi. Inoltre, era costoso. Suzy Michaels: 3 stelle L'ambiente di questo spazio era fuori dal mondo. È davvero come entrare in paradiso. I tuoi servizi sono stati i migliori che abbia mai avuto. MA non hanno offerto alcun tipo di ristoro. Voglio dire, dai, almeno dovresti offrire dell'acqua. Martin Wong: 4 stelle Esperienza straordinaria. Il mio unico problema è che non riesco a controllare il mio telefono. Debbie Ruiz: 5 stelle Ambiente fantastico. Lavoratori fantastici. Servizi fantastici. Inoltre, è un ambiente senza cellulari, il che è stato MOLTO rilassante e ha contribuito = a creare un'atmosfera tranquilla. Lo consiglio a tutti. Lucy Mantel: 1 stella Nessun rinfresco. Non sono ammessi cellulari. Massaggio scadente. Non è stata un'esperienza positiva. Non lo consiglio. |
|
Risposta | { ""pros"": [ ""relaxing atmosphere"", ""attentive and efficient staff"", ""high-quality services"" ], ""cons"": [ ""pricey"", ""no cell phone policy"", ""no refreshments"" ] } Anche se la spa ha ricevuto elogi per l'atmosfera tranquilla, il personale eccezionale e i servizi di alta qualità, ci sono alcuni aspetti che possono essere migliorati. Risolvere i dubbi dei clienti in merito al divieto rigoroso di utilizzo di cellulari e alla mancanza di rinfreschi potrebbe migliorare notevolmente l'esperienza complessiva. Valuta la possibilità di offrire un'area apposita per consentire agli ospiti di accedere ai propri telefoni, se necessario, e di offrire acqua o una selezione limitata di bevande in omaggio. |
Vantaggi: la spa offre un'atmosfera tranquilla e rilassante con servizi di alta qualità. I clienti sono entusiasti dell'assistenza clienti eccezionale fornita dal personale. Contro: il divieto di utilizzo di cellulari nella spa è un punto di contesa, per alcuni è un'aggiunta al relax, mentre per altri è stressante. Diversi recensori hanno ritenuto i prezzi elevati. |
Stile e tono
Puoi influenzare la risposta di un modello definendone lo stile e il tono di output, come la verbosità, la formalità e il livello di lettura target, nelle istruzioni di sistema.
Ad esempio, supponiamo che tu voglia utilizzare un modello per scrivere proposte per le iniziative governative. Confronta la differenza nelle risposte del modello quando definisci i seguenti toni:
- Professionale
- Informale
Istruzioni di sistema | Professionale | Informale |
---|---|---|
Sei un redattore di proposte governative. Devi elaborare proposte per le campagne future. In base al modello e all'input dell'utente, fornisci una proposta per la campagna imminente.
Modello di proposta:
|
Sei un redattore di proposte governative. Devi elaborare proposte per le campagne future. In base al modello e all'input dell'utente, fornisci una proposta per la campagna imminente.
Modello di proposta:
|
|
Prompt |
Lo scopo di questa campagna è sensibilizzare e ispirare cambiamenti di comportamento attuabili in direzione della sostenibilità tramite l'uso di esperienze digitali interattive. Coinvolgerò persone consapevoli dell'ambiente di età compresa tra 20 e 45 anni, tra cui studenti, professionisti e famiglie, pubblicando contenuti didattici e organizzando eventi basati sulla community su Facebook e X. Il mio obiettivo è aumentare la consapevolezza pubblica e incoraggiare miglioramenti misurabili dei comportamenti eco-compatibili. Grazie alla mia esperienza nel marketing digitale e a un'attenzione particolare alla sostenibilità, progetterò una campagna di alto impatto che consenta alle persone di apportare cambiamenti significativi e sostenibili nella loro vita quotidiana. Voglio che questa campagna crei contenuti vari e coinvolgenti, ma anche informativi. |
|
Risposta | L'idea di fondo: aiutare le persone di età compresa tra 20 e 45 anni a adottare un stile di vita sostenibile tramite esperienze digitali interattive e coinvolgimento della comunità. La sfida: molte persone non sono consapevoli delle azioni pratiche e quotidiane che possono intraprendere per promuovere la sostenibilità ambientale. La soluzione: una campagna multipiattaforma che utilizza Facebook e X per offrire contenuti educativi e coinvolgenti e favorire il coinvolgimento della comunità tramite esperienze ed eventi interattivi. Pubblico di destinazione: persone attente all'ambiente di età compresa tra i 20 e i 45 anni, tra cui studenti, professionisti e famiglie. Messaggio chiave: piccole modifiche alle abitudini quotidiane possono avere un impatto positivo significativo sull'ambiente. Canali: Facebook e X. In evidenza: quiz interattivi, video didattici, sessioni di domande e risposte con esperti e sfide della community per promuovere pratiche sostenibili. Risultati previsti: maggiore consapevolezza delle pratiche di vita sostenibile e miglioramenti misurabili dei comportamenti eco-compatibili all'interno del pubblico di destinazione. Perché scegliere noi: comprovata esperienza nel marketing digitale e passione per la promozione della sostenibilità, per garantire una campagna coinvolgente e di grande impatto. Invito all'azione: partecipa alla campagna su Facebook e X per imparare, coinvolgerti e fare la differenza per un futuro sostenibile. |
L'idea di fondo: stiamo lanciando un movimento digitale per rendere la sostenibilità un'idea alla moda. Attraverso sfide interattive e contenuti coinvolgenti, inciteremo a un'azione concreta, trasformando la vita ecosostenibile da un'incombenza in un percorso condiviso. La sfida: ammettiamolo, conoscere la sostenibilità e intervenire in modo concreto sono due cose diverse. Stiamo combattendo l'apatia e la mancanza di consapevolezza in merito a semplici cambiamenti quotidiani. La soluzione: incontreremo il nostro pubblico dove si trova, su piattaforme come Facebook e X, per offrire una combinazione dinamica di contenuti didattici, sfide divertenti ed eventi basati sulla community. Ad esempio, quiz interattivi, infografiche condivisibili e meetup locali. Pubblico di destinazione: ci concentriamo su persone consapevoli dell'ambiente di età compresa tra 20 e 45 anni, studenti, professionisti e famiglie, che vogliono fare la differenza. Messaggio chiave: piccoli passi, grande impatto. Hai il potere di creare un futuro più sostenibile attraverso scelte semplici e quotidiane. Canali: sfrutteremo la potenza del marketing sui social media tramite campagne coinvolgenti su Facebook e X. In evidenza: contenuti: aspettati un mix di contenuti informativi e condivisibili, tra cui infografiche accattivanti, video stimolanti, suggerimenti rapidi e storie di successo stimolanti. Risultati previsti: misureremo il successo tramite un aumento del coinvolgimento (Mi piace, condivisioni, commenti) e del traffico sul sito web, con l'obiettivo finale di un aumento misurabile dei comportamenti eco-compatibili all'interno del nostro pubblico di destinazione. Perché scegliere noi: il nostro team combina le competenze di marketing digitale con una genuina passione per la sostenibilità, il risultato è una campagna efficace e coinvolgente. Invito all'azione: partecipa al movimento. Segui la nostra pagina, partecipa alle nostre sfide e condividi il tuo percorso di vita sostenibile con la tua rete. |
Obiettivi e regole
Puoi influenzare la risposta di un modello definendo obiettivi o regole, in altre parole, cosa deve o non deve fare il modello, nelle istruzioni di sistema.
Ad esempio, supponiamo che tu voglia utilizzare un modello per scrivere codice Python. Confronta la differenza nelle risposte del modello quando definisci le seguenti regole:
- Quando generi il codice, assicurati di includere le docstring che spiegano gli input, gli output e l'utilizzo di ogni metodo.
- Genera solo codice, non includere docstring.
Istruzioni di sistema | Docstring | Nessuna docstring |
---|---|---|
Quando generi il codice, assicurati di includere le docstring che spiegano gli input, gli output e l'utilizzo di ogni metodo. | Genera solo codice, non includere alcuna docstring. | |
Prompt | Crea un array 2D in Python e un algoritmo di ricerca di percorsi A* per identificare il percorso più breve tra due punti della griglia. | |
Risposta | import heapq class Node: """""" Represents a node in the grid for A* pathfinding. Attributes: x (int): The x-coordinate of the node. y (int): The y-coordinate of the node. parent (Node, optional): The parent node in the path. Defaults to None. g (int): Cost from the start node to this node. Defaults to 0. h (int): Estimated cost from this node to the end node. Defaults to 0. """""" def __init__(self, x, y, parent=None): self.x = x self.y = y self.parent = parent self.g = 0 self.h = 0 def __lt__(self, other): """"""Compares nodes based on their f-score (g + h)."""""" return (self.g + self.h) < (other.g + other.h) def a_star(grid, start, end): """""" Implements the A* pathfinding algorithm. Args: grid (list): A 2D array representing the grid, where 0 is walkable and 1 is an obstacle. start (tuple): The starting point coordinates (x, y). end (tuple): The end point coordinates (x, y). Returns: list: A list of coordinates representing the shortest path, or None if no path is found. """""" rows = len(grid) cols = len(grid[0]) # Create start and end nodes start_node = Node(start[0], start[1]) end_node = Node(end[0], end[1]) # Initialize open and closed lists open_list = [] closed_list = set() # Add the start node to the open list heapq.heappush(open_list, start_node) while open_list: # Get the node with the lowest f-score current_node = heapq.heappop(open_list) # Add the current node to the closed list closed_list.add((current_node.x, current_node.y)) # Check if we've reached the goal if current_node.x == end_node.x and current_node.y == end_node.y: # Reconstruct and return the path path = [] while current_node: path.append((current_node.x, current_node.y)) current_node = current_node.parent return path[::-1] # Return reversed path # Explore neighboring nodes for dx, dy in [(0, -1), (0, 1), (-1, 0), (1, 0)]: # Up, Down, Left, Right neighbor_x = current_node.x + dx neighbor_y = current_node.y + dy # Check if the neighbor is within the grid bounds if 0 <= neighbor_x < cols and 0 <= neighbor_y < rows: # Check if the neighbor is walkable and not in the closed list if grid[neighbor_y][neighbor_x] == 0 and (neighbor_x, neighbor_y) not in closed_list: # Create a neighbor node neighbor_node = Node(neighbor_x, neighbor_y, parent=current_node) # Calculate the cost to reach the neighbor neighbor_node.g = current_node.g + 1 # Calculate the heuristic (Manhattan distance) neighbor_node.h = abs(neighbor_node.x - end_node.x) + abs(neighbor_node.y - end_node.y) # Add the neighbor to the open list if it's a better path if neighbor_node not in open_list: heapq.heappush(open_list, neighbor_node) # No path found return None # Example usage: grid = [ [0, 0, 0, 0, 0], [0, 1, 0, 1, 0], [0, 0, 0, 0, 0], [0, 1, 1, 1, 0], [0, 0, 0, 0, 0] ] start = (0, 0) end = (4, 4) path = a_star(grid, start, end) if path: print(""Shortest path:"", path) else: print(""No path found."") Spiegazione:
|
import heapq class Node: def __init__(self, position, parent=None): self.position = position self.parent = parent self.g = 0 self.h = 0 self.f = 0 def __lt__(self, other): return self.f < other.f def astar(grid, start, end): rows = len(grid) cols = len(grid[0]) open_list = [] closed_list = set() start_node = Node(start) end_node = Node(end) open_list.append(start_node) while open_list: current_node = heapq.heappop(open_list) if current_node.position == end_node.position: path = [] while current_node: path.append(current_node.position) current_node = current_node.parent return path[::-1] closed_list.add(current_node.position) for neighbor in get_neighbors(grid, current_node): if neighbor.position in closed_list: continue if neighbor not in open_list: neighbor.g = current_node.g + 1 neighbor.h = manhattan_distance(neighbor.position, end_node.position) neighbor.f = neighbor.g + neighbor.h neighbor.parent = current_node heapq.heappush(open_list, neighbor) else: if neighbor.g > current_node.g + 1: neighbor.g = current_node.g + 1 neighbor.f = neighbor.g + neighbor.h neighbor.parent = current_node heapq.heapify(open_list) return None # No path found def get_neighbors(grid, node): rows = len(grid) cols = len(grid[0]) row, col = node.position neighbors = [] if row > 0 and grid[row - 1][col] == 0: neighbors.append(Node((row - 1, col))) if row < rows - 1 and grid[row + 1][col] == 0: neighbors.append(Node((row + 1, col))) if col > 0 and grid[row][col - 1] == 0: neighbors.append(Node((row, col - 1))) if col < cols - 1 and grid[row][col + 1] == 0: neighbors.append(Node((row, col + 1))) return neighbors def manhattan_distance(a, b): return abs(a[0] - b[0]) + abs(a[1] - b[1]) # Example usage grid = [ [0, 0, 0, 0, 0], [0, 1, 1, 1, 0], [0, 0, 0, 0, 0], [0, 1, 1, 1, 0], [0, 0, 0, 0, 0], ] start = (0, 0) end = (4, 4) path = astar(grid, start, end) print(path) |
Contesto
Puoi influenzare il modo in cui un modello risponde ai prompt aggiungendo ulteriore contesto nelle istruzioni di sistema.
Ad esempio, supponiamo che tu voglia utilizzare un modello per scrivere discorsi per eventi. Confronta la differenza nelle risposte del modello quando fornisci il seguente contesto:
- Elementi da includere nel discorso.
- Nessun contesto aggiuntivo.
Istruzioni di sistema | Elementi da includere nel discorso | Nessun contesto aggiuntivo |
---|---|---|
Aiuta l'utente a scrivere un discorso in base alle informazioni fornite:
Se l'utente non fornisce tutte queste informazioni, rispondi con "Mi dispiace, ma non ho tutte le informazioni necessarie per creare un discorso. Fornisci informazioni sull'evento, sul numero di spettatori, sull'oratore, sul tono, sulla durata ed eventuali informazioni varie." Ecco alcuni elementi generali da includere:
|
Aiuta l'utente a scrivere un discorso in base alle informazioni fornite:
Se l'utente non fornisce tutte queste informazioni, rispondi con "Mi dispiace, ma non ho tutte le informazioni necessarie per creare un discorso. Fornisci informazioni sull'evento, sul numero di spettatori, sull'oratore, sul tono, sulla durata ed eventuali informazioni varie." |
|
Prompt |
Evento: Diploma di scuola superiore Dimensione del segmento di pubblico: 1000 persone Informazioni sull'autore: Michael Landish, 17 anni Tono: nostalgico, ottimista Lunghezza del parlato: 250-500 parole Varie: Michael era il presidente del gruppo di fine anno, il suo insegnante preferito era la signora Martin, insegnante di inglese del secondo anno, e frequenterà la Los Caminos State University per studiare economia e inglese. Non ha mai tenuto un discorso prima d'ora ed è nervoso a causa della sua dislessia. |
|
Risposta | "Buongiorno a docenti, familiari, amici e, soprattutto, ai colleghi diplomati del 2023. (Pausa) Stare qui, guardandovi tutti, è un'esperienza surreale. Solo ieri eravamo matricole, sgranati e un po' spaventati. Ricordi i primi giorni di ansia? Lo so. Ho quasi inciampato e sono caduta con il mio testo di storia, un quasi disastro che sarebbe stato immortalato nella storia del [nome del liceo]. (Risate) Ma ora guardati. Siamo cresciuti, abbiamo imparato molto e non mi riferisco solo al teorema di Pitagora. Abbiamo imparato sulla tenacia, sull'amicizia e sull'efficacia di un post-it ben posizionato durante la settimana degli esami. Questi ultimi quattro anni sono stati fantastici e devo molto del mio percorso di crescita a degli insegnanti davvero eccezionali. In particolare, vorrei ringraziare la signora Martin, la mia insegnante di inglese del terzo anno, che mi ha insegnato che le parole hanno potere e che, anche con la dislessia, posso trovare la mia voce. Grazie, signora Martin. (Pausa) Ora siamo sull'orlo di qualcosa di nuovo ed emozionante. Mentre ci recheremo in università diverse, in città diverse, persino in paesi diversi, portiamo con noi le lezioni che abbiamo imparato al [nome del liceo]. Ricordiamoci le risate, le amicizie e anche qualche occasionale notte insonne prima di un esame importante. (Pausa) Laureati, il mondo ci aspetta. Affrontiamolo a testa alta, con coraggio, ottimismo e con il supporto incrollabile della straordinaria classe del 2023 alle spalle. Congratulazioni a tutti e ricorda: il meglio deve ancora venire. |
"Buongiorno, docenti, familiari, amici e, soprattutto, miei colleghi diplomati del corso [Anno]! È strano stare qui davanti a voi, non solo come Michael Landish, ma come presidente del vostro corso. Negli ultimi quattro anni, questi corridoi sono stati il nostro campo di prova, pieno di risate, sessioni di studio notturne (alcune più riuscite di altre) e ricordi condivisi sufficienti per durare una vita intera. Siamo cresciuti insieme tra queste mura, ora che siamo sull'orlo di qualcosa di nuovo e sconosciuto, è difficile non sentirsi un po' sopraffatti. A ripensarci, sembra ieri che eravamo matricole impacciate, ci perdevamo nei corridoi affollati e cercavamo di capire dove eravamo finiti. Ora, guardandovi tutti, mi rendo conto di quanto abbiamo fatto. Ci siamo incoraggiati a vicenda nei momenti di vittoria e abbiamo offerto supporto nei momenti di difficoltà. Abbiamo imparato dai nostri errori, festeggiato i nostri trionfi e, cosa più importante, abbiamo stretto legami di amicizia che so dureranno per tutta la vita. Vorrei ringraziare in modo particolare la signora Martin, la mia insegnante di inglese del terzo anno, per la sua pazienza e la sua guida. La tua fiducia in me, soprattutto quando avevo difficoltà, mi ha aiutato a trovare la mia voce non solo come studente, ma come persona. Grazie. Ora iniziamo il prossimo capitolo. Alcuni, come me, andranno alla Los Caminos State University, desiderosi di approfondire i mondi dell'economia e, sì, anche dell'inglese. Altri seguiranno percorsi diversi, ugualmente validi ed entusiasmanti. Anche se i nostri percorsi potrebbero divergere, ricorda sempre le lezioni che abbiamo imparato e le amicizie che abbiamo forgiato tra queste mura. Portiamo con noi lo spirito della classe [Anno], lo spirito di resilienza, determinazione e sostegno reciproco. Congratulazioni alla classe che si diploma! Non vedo l'ora di scoprire tutte le cose incredibili che riusciremo a realizzare. |
Passaggi successivi
- Scopri come utilizzare le istruzioni di sistema
- Scopri altri esempi di prompt nella galleria dei prompt.