Conozca Memoripy: una biblioteca de Python que brinda capacidades de memoria reales a aplicaciones de inteligencia artificial
Los sistemas de inteligencia artificial a menudo tienen dificultades para retener un contexto significativo durante interacciones prolongadas. Esta limitación plantea desafíos para aplicaciones como chatbots y asistentes virtuales, donde mantener un hilo de conversación coherente es esencial. La mayoría de los modelos de IA tradicionales funcionan sin estado, centrándose únicamente en entradas inmediatas sin considerar la continuidad de los intercambios anteriores. Esta falta de memoria efectiva conduce a interacciones fragmentadas e inconsistentes, lo que obstaculiza la capacidad de construir sistemas de IA verdaderamente atractivos y sensibles al contexto.
Conozca Memoripy: una biblioteca de Python que brinda capacidades de memoria reales a aplicaciones de inteligencia artificial. Memoripy aborda el problema de mantener el contexto conversacional equipando los sistemas de inteligencia artificial con memoria estructurada, lo que les permite almacenar, recordar y desarrollar interacciones anteriores de manera efectiva. Memoripy proporciona almacenamiento de memoria a corto y largo plazo, lo que permite a los sistemas de inteligencia artificial retener el contexto de interacciones recientes y al mismo tiempo preservar información importante a largo plazo. Al estructurar la memoria de una manera que imita la cognición humana, priorizando eventos recientes y reteniendo detalles clave, Memoripy garantiza que las interacciones sigan siendo relevantes y coherentes a lo largo del tiempo.
Memoripy organiza la memoria en grupos de corto y largo plazo, lo que permite priorizar interacciones recientes para un recuerdo inmediato y al mismo tiempo conservar interacciones históricas significativas para uso futuro. Esto evita que la IA se vea abrumada con un exceso de datos y, al mismo tiempo, garantiza que la información relevante sea accesible. Memoripy también implementa agrupamiento semántico, agrupando recuerdos similares para facilitar la recuperación eficiente del contexto. Esta capacidad permite a los sistemas de IA identificar y vincular rápidamente recuerdos relacionados, mejorando así la calidad de la respuesta. Además, Memoripy incorpora mecanismos de deterioro y refuerzo de la memoria, mediante los cuales los recuerdos menos útiles se desvanecen gradualmente y los recuerdos a los que se accede con frecuencia se refuerzan, lo que refleja los principios de la memoria humana. El diseño de Memoripy enfatiza el almacenamiento local, lo que permite a los desarrolladores manejar operaciones de memoria completamente en la infraestructura local. Este enfoque mitiga los problemas de privacidad y proporciona flexibilidad para la integración con modelos de lenguaje alojados localmente, así como con servicios externos como OpenAI y Ollama.
Para ilustrar cómo se puede integrar Memoripy en una aplicación de IA, considere el siguiente ejemplo:
from memoripy import MemoryManager, JSONStorage
def main():
# Replace 'your-api-key' with your actual OpenAI API key
api_key = "your-key"
if not api_key:
raise ValueError("Please set your OpenAI API key.")
# Define chat and embedding models
chat_model = "openai" # Choose 'openai' or 'ollama' for chat
chat_model_name = "gpt-4o-mini" # Specific chat model name
embedding_model = "ollama" # Choose 'openai' or 'ollama' for embeddings
embedding_model_name = "mxbai-embed-large" # Specific embedding model name
# Choose your storage option
storage_option = JSONStorage("interaction_history.json")
# Initialize the MemoryManager with the selected models and storage
memory_manager = MemoryManager(
api_key=api_key,
chat_model=chat_model,
chat_model_name=chat_model_name,
embedding_model=embedding_model,
embedding_model_name=embedding_model_name,
storage=storage_option
)
# New user prompt
new_prompt = "My name is Khazar"
# Load the last 5 interactions from history (for context)
short_term, _ = memory_manager.load_history()
last_interactions = short_term(-5:) if len(short_term) >= 5 else short_term
# Retrieve relevant past interactions, excluding the last 5
relevant_interactions = memory_manager.retrieve_relevant_interactions(new_prompt, exclude_last_n=5)
# Generate a response using the last interactions and retrieved interactions
response = memory_manager.generate_response(new_prompt, last_interactions, relevant_interactions)
# Display the response
print(f"Generated response:\n{response}")
# Extract concepts for the new interaction
combined_text = f"{new_prompt} {response}"
concepts = memory_manager.extract_concepts(combined_text)
# Store this new interaction along with its embedding and concepts
new_embedding = memory_manager.get_embedding(combined_text)
memory_manager.add_interaction(new_prompt, response, new_embedding, concepts)
if __name__ == "__main__":
main()
En este guión, el MemoryManager
Se inicializa con chat especificado y modelos de incrustación, junto con una opción de almacenamiento. Se procesa un mensaje de usuario nuevo y el sistema recupera interacciones pasadas relevantes para generar una respuesta contextualmente apropiada. Luego, la interacción se almacena con sus conceptos incorporados y extraídos para referencia futura.
Memoripy proporciona un avance esencial en la creación de sistemas de inteligencia artificial que sean más conscientes del contexto. La capacidad de retener y recordar información relevante permite el desarrollo de asistentes virtuales, agentes conversacionales y sistemas de atención al cliente que ofrecen interacciones más consistentes y personalizadas. Por ejemplo, un asistente virtual que utilice Memoripy podría recordar las preferencias del usuario o los detalles de solicitudes anteriores, ofreciendo así una respuesta más personalizada. Las evaluaciones preliminares indican que los sistemas de inteligencia artificial que incorporan Memoripy muestran una mayor satisfacción del usuario, produciendo respuestas más coherentes y contextualmente apropiadas. Además, el énfasis de Memoripy en el almacenamiento local es crucial para las aplicaciones que se preocupan por la privacidad, ya que permite que los datos se manejen de forma segura sin depender de servidores externos.
En conclusión, Memoripy representa un paso significativo hacia interacciones de IA más sofisticadas al proporcionar capacidades de memoria real que mejoran la retención y la coherencia del contexto. Al estructurar la memoria de una manera que imita fielmente los procesos cognitivos humanos, Memoripy allana el camino para sistemas de inteligencia artificial que pueden adaptarse en función de interacciones acumulativas del usuario y ofrecer experiencias más personalizadas y contextualmente conscientes. Esta biblioteca proporciona a los desarrolladores las herramientas necesarias para crear una IA que no solo procese entradas sino que también aprenda de las interacciones de manera significativa.
Mira el Repositorio de GitHub. Todo el crédito por esta investigación va a los investigadores de este proyecto. Además, no olvides seguirnos en Gorjeo y únete a nuestro Canal de telegramas y LinkedIn Grarriba. Si te gusta nuestro trabajo, te encantará nuestro hoja informativa.. No olvides unirte a nuestro SubReddit de más de 55.000 ml.
(SEMINARIO WEB GRATUITO sobre IA) Implementación del procesamiento inteligente de documentos con GenAI en servicios financieros y transacciones inmobiliarias– Del marco a la producción
Asif Razzaq es el director ejecutivo de Marktechpost Media Inc.. Como empresario e ingeniero visionario, Asif está comprometido a aprovechar el potencial de la inteligencia artificial para el bien social. Su esfuerzo más reciente es el lanzamiento de una plataforma de medios de inteligencia artificial, Marktechpost, que se destaca por su cobertura en profundidad del aprendizaje automático y las noticias sobre aprendizaje profundo que es técnicamente sólida y fácilmente comprensible para una amplia audiencia. La plataforma cuenta con más de 2 millones de visitas mensuales, lo que ilustra su popularidad entre el público.
🐝🐝 Evento de LinkedIn, ‘Una plataforma, posibilidades multimodales’, donde el director ejecutivo de Encord, Eric Landau, y el director de ingeniería de productos, Justin Sharps, hablarán sobre cómo están reinventando el proceso de desarrollo de datos para ayudar a los equipos a construir rápidamente modelos de IA multimodales innovadores.