
Aprenda más · Únase a Discord
MEM0 (pronunciado como "Mem-Zero") mejora los asistentes y agentes de IA con una capa de memoria inteligente, lo que permite interacciones personalizadas de IA. MEM0 recuerda las preferencias del usuario, se adapta a las necesidades individuales y mejora continuamente con el tiempo, lo que lo hace ideal para chatbots de atención al cliente, asistentes de IA y sistemas autónomos.
Nueva característica: Introducción de la memoria gráfica. Consulte nuestra documentación.
MEM0 aprovecha un enfoque de base de datos híbrido para administrar y recuperar recuerdos a largo plazo para agentes y asistentes de IA. Cada memoria está asociada con un identificador único, como una identificación de usuario o ID de agente, lo que permite a MEM0 organizar y acceder a las memorias específicas para un individuo o contexto.
Cuando se agrega un mensaje al método MEM0 usando Add (), el sistema extrae hechos y preferencias relevantes y lo almacena en los almacenes de datos: una base de datos vectorial, una base de datos de valor clave y una base de datos de gráficos. Este enfoque híbrido garantiza que se almacenen diferentes tipos de información de la manera más eficiente, lo que hace que las búsquedas posteriores sean rápidas y efectivas.
Cuando un agente de IA o LLM necesita recordar recuerdos, usa el método Search (). MEM0 luego realiza la búsqueda en estos almacenes de datos, recuperando información relevante de cada fuente. Esta información se pasa a través de una capa de puntuación, que evalúa su importancia en función de la relevancia, la importancia y la recencia. Esto asegura que solo aparezca el contexto más personalizado y útil.
Los recuerdos recuperados pueden agregarse al mensaje de la LLM según sea necesario, mejorando la personalización y la relevancia de sus respuestas.
MEM0 faculta a las organizaciones e individuos para mejorar:
La forma más fácil de configurar MEM0 es a través de la plataforma MEM0 administrada. Esta solución alojada ofrece actualizaciones automáticas, análisis avanzado y soporte dedicado. Regístrese para comenzar.
Si prefiere auto-anfitrión, use el paquete MEM0 de código abierto. Siga las instrucciones de instalación para comenzar.
Instale el paquete MEM0 a través de PIP:
pip install mem0aiAlternativamente, puede usar MEM0 con un clic en la plataforma alojada aquí.
MEM0 requiere que funcione un LLM, con gpt-4o de OpenAI como el valor predeterminado. Sin embargo, admite una variedad de LLM; Para más detalles, consulte nuestra documentación LLMS compatible.
El primer paso es instanciar la memoria:
from mem0 import Memory
m = Memory () import os
os . environ [ "OPENAI_API_KEY" ] = "sk-xxx"Puede realizar la siguiente tarea en la memoria:
# 1. Add: Store a memory from any unstructured text
result = m . add ( "I am working on improving my tennis skills. Suggest some online courses." , user_id = "alice" , metadata = { "category" : "hobbies" })
# Created memory --> 'Improving her tennis skills.' and 'Looking for online suggestions.' # 2. Update: update the memory
result = m . update ( memory_id = < memory_id_1 > , data = "Likes to play tennis on weekends" )
# Updated memory --> 'Likes to play tennis on weekends.' and 'Looking for online suggestions.' # 3. Search: search related memories
related_memories = m . search ( query = "What are Alice's hobbies?" , user_id = "alice" )
# Retrieved memory --> 'Likes to play tennis on weekends' # 4. Get all memories
all_memories = m . get_all ()
memory_id = all_memories [ "memories" ][ 0 ] [ "id" ] # get a memory_id
# All memory items --> 'Likes to play tennis on weekends.' and 'Looking for online suggestions.' # 5. Get memory history for a particular memory_id
history = m . history ( memory_id = < memory_id_1 > )
# Logs corresponding to memory_id_1 --> {'prev_value': 'Working on improving tennis skills and interested in online courses for tennis.', 'new_value': 'Likes to play tennis on weekends' } Consejo
Si prefiere una versión alojada sin la necesidad de configurar la infraestructura usted mismo, consulte la plataforma MEM0 para comenzar en minutos.
Para inicializar la memoria gráfica, deberá configurar su configuración con los proveedores de almacenes de gráficos. Actualmente, apoyamos a Neo4J como proveedor de tiendas de gráficos. Puede configurar neo4j localmente o usar el neo4j auradb alojado. Además, también debe establecer la versión en v1.1 ( las versiones anteriores no son compatibles ). Así es como puedes hacerlo:
from mem0 import Memory
config = {
"graph_store" : {
"provider" : "neo4j" ,
"config" : {
"url" : "neo4j+s://xxx" ,
"username" : "neo4j" ,
"password" : "xxx"
}
},
"version" : "v1.1"
}
m = Memory . from_config ( config_dict = config )Para obtener instrucciones de uso detalladas y referencia de API, visite nuestra documentación en docs.mem0.ai. Aquí, puede encontrar más información tanto en la versión de código abierto como en la plataforma MEM0 alojada.
Únase a nuestra comunidad para obtener apoyo y discusiones. Si tiene alguna pregunta, no dude en comunicarse con nosotros utilizando uno de los siguientes métodos:
Únase a nuestra comunidad de Discord para aprender sobre la gestión de la memoria para agentes de IA y LLM, y conéctese con usuarios y contribuyentes de MEM0. Comparta sus ideas, preguntas o comentarios en nuestros problemas de GitHub.
Valoramos y apreciamos las contribuciones de nuestra comunidad. Un agradecimiento especial a nuestros contribuyentes por ayudarnos a mejorar MEM0.
Recopilamos métricas de uso anónimas para mejorar la calidad y la experiencia del usuario de nuestro paquete. Esto incluye datos como la frecuencia de uso de funciones e información del sistema, pero nunca los datos personales. Los datos nos ayudan a priorizar mejoras y garantizar la compatibilidad. Si desea optar por no participar, establezca la variable de entorno MEM0_TELEMETRY = FALSE. Priorizamos la seguridad de los datos y no compartimos estos datos externamente.
Este proyecto tiene licencia bajo la licencia Apache 2.0; consulte el archivo de licencia para obtener más detalles.