EsempioscriptintermediateEseguibilememory-lab
Memoria: archivia e recupera informazioni rilevanti tra le interazioni.
Questo componente mantiene la cronologia della conversazione e il contesto per abilitare interazioni coerenti su più turni.
Fatti chiave
- Livello
- intermediate • Blocchi di Costruzione degli Agenti
- Runtime
- Python • API OpenAI
- Pattern
- Assistenza consapevole della memoria con contesto leggibile
- Interazione
- Sandbox live • Script
- Aggiornato
- 14 marzo 2026
Naviga questo esempio
Libreria
Sfoglia gli esempiRiapri la libreria completa per confrontare pattern vicini e percorsi collegati.Interazione
Esegui ora nel sandboxProva l'interazione direttamente nella superficie guidata di questo esempio.Sorgente
Apri codice completoLeggi l'implementazione reale, i punti evidenziati e i requisiti runtime.MCP
Chiama via MCPUsa la stessa risorsa dentro agenti, export deterministici e setup MCP.
Principi collegati
2-memory.py
python
"""
Memory: Stores and retrieves relevant information across interactions.
This component maintains conversation history and context to enable coherent multi-turn interactions.
More info: https://platform.openai.com/docs/guides/conversation-state?api-mode=responses
"""
from openai import OpenAI
client = OpenAI()
def ask_joke_without_memory():
response = client.responses.create(
model="gpt-4o-mini",
input=[
{"role": "user", "content": "Tell me a joke about programming"},
],
)
return response.output_text
def ask_followup_without_memory():
response = client.responses.create(
model="gpt-4o-mini",
input=[
{"role": "user", "content": "What was my previous question?"},
],
)
return response.output_text
def ask_followup_with_memory(joke_response: str):
response = client.responses.create(
model="gpt-4o-mini",
input=[
{"role": "user", "content": "Tell me a joke about programming"},
{"role": "assistant", "content": joke_response},
{"role": "user", "content": "What was my previous question?"},
],
)
return response.output_text
if __name__ == "__main__":
# First: Ask for a joke
joke_response = ask_joke_without_memory()
print(joke_response, "\n")
# Second: Ask follow-up without memory (AI will be confused)
confused_response = ask_followup_without_memory()
print(confused_response, "\n")
# Third: Ask follow-up with memory (AI will remember)
memory_response = ask_followup_with_memory(joke_response)
print(memory_response)
Principi correlati
- P1delegationProgettare per la delega piuttosto che per la manipolazione direttaProgettare esperienze attorno all'assegnazione del lavoro, l'espressione dell'intento, l'impostazione dei vincoli e la revisione dei risultati, piuttosto che richiedere agli utenti di eseguire manualmente ogni passaggio.Apri il principio →
- P5delegationSostituire la magia implicita con modelli mentali chiariIl prodotto dovrebbe aiutare gli utenti a comprendere cosa il sistema può fare, cosa sta facendo attualmente, cosa non può fare e quali condizioni governano il suo comportamento.Apri il principio →
- P7trustStabilire fiducia attraverso l'ispezionabilitàGli utenti dovrebbero essere in grado di esaminare come è stato prodotto un risultato quando la fiducia, la responsabilità o la qualità della decisione sono importanti.Apri il principio →
- P8trustRendere espliciti i passaggi, le approvazioni e i blocchiQuando il sistema non può procedere, la ragione dovrebbe essere immediatamente visibile, insieme a qualsiasi azione richiesta dall'utente o da un'altra dipendenza.Apri il principio →
- P10delegationOttimizzare per la guida, non solo per l'inizioIl sistema dovrebbe supportare gli utenti non solo nell'avvio dei compiti, ma anche nella guida, nel perfezionamento, nella riprioritizzazione e nella correzione del lavoro mentre è in corso.Apri il principio →