Nos complace anunciar que Couchbase ya es compatible con Agno como almacén vectorial. Esta integración reúne lo mejor de las capacidades de orquestación de agentes de Agno y el almacén vectorial escalable y de alto rendimiento de Couchbase. Permite a los desarrolladores crear sistemas inteligentes multiagente basados en búsquedas vectoriales rápidas y eficientes.
Agno es un framework de código abierto para la construcción de sistemas multiagente. Ofrece un enfoque limpio, componible y Pythonic para construir agentes de IA con las herramientas, la memoria y las capacidades de razonamiento. Es fácil de usar, extremadamente rápido y soporta entradas y salidas multimodales.
Exploremos más a fondo esta integración.
Configuración de Agno con Couchbase
Para empezar a utilizar Agno y Couchbase, tendrás que seguir unos sencillos pasos.
Instalación de Agno
Puede instalar Agno y otras dependencias necesarias ejecutando el siguiente comando:
1 |
pip instale -U agno couchbase openai |
Ahora puede empezar a utilizar la CLI de Agno para configurar agentes y almacenes de vectores.
Conexión a Couchbase y búsqueda vectorial
Ahora que las dependencias de Agno y Couchbase están instaladas, puedes conectar Couchbase como un almacén vectorial y realizar búsquedas vectoriales. He aquí cómo:
Importa los paquetes e inicializa la instancia de base de datos Couchbase.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
de agno.agente importar Agente de agno.incrustador.openai importar OpenAIEmbedder de agno.conocimiento.pdf_url importar PDFUrlKnowledgeBase de agno.vectordb.couchbase importar CouchbaseSearch de couchbase.opciones importar ClusterOptions, KnownConfigProfiles de couchbase.auth importar PasswordAuthenticator de couchbase.gestión.busque en importar Índice de búsqueda # Configuración de la conexión Couchbase nombre de usuario = os.getenv("COUCHBASE_USER") contraseña = os.getenv("COUCHBASE_PASSWORD") cadena_de_conexión = os.getenv("COUCHBASE_CONNECTION_STRING") # Crear opciones de clúster con autenticación auth = PasswordAuthenticator(nombre de usuario, contraseña) opciones_clúster = ClusterOptions(auth) opciones_clúster.aplicar_perfil(KnownConfigProfiles.WanDevelopment) |
Especifique el nombre de usuario, la contraseña y la cadena de conexión a su clúster Couchbase.
Inicializar almacén de vectores
Ahora inicializamos el almacén vectorial de Couchbase:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
vector_db=CouchbaseSearch( nombre_cubo="cubo_recetas", nombre_ámbito="recipe_scope", nombre_colección="recetas", couchbase_connection_string=cadena_de_conexión, opciones_clúster=opciones_clúster, buscar_índice="vector_search_fts_index", incrustador=OpenAIEmbedder( id="text-embedding-3-large", dimensiones=3072, clave_api=os.getenv("OPENAI_API_KEY") ), wait_until_index_ready=60, sobrescribir=Verdadero ), |
Especifica el bucket, scope y collection para tu cluster de Couchbase. Además, define qué modelo de incrustación utilizarás para generar las incrustaciones.
Datos de carga
Cree una instancia de base de conocimientos PDF url y cargue los datos en la instancia. Usamos los datos de una receta pública en pdf como ejemplo.
1 2 3 4 5 6 7 8 9 10 |
# Crear base de conocimientos base_de_conocimientos = PDFUrlKnowledgeBase( urls=["https://phi-public.s3.amazonaws.com/recipes/ThaiRecipes.pdf"], vector_db=vector_db, ) base_de_conocimientos.carga(volver a=Falso) # Comentarios después de la primera ejecución # Esperar a que el índice vectorial se sincronice con KV tiempo.dormir(20) |
Utilice el agente Agno para realizar la búsqueda vectorial
Una vez que hayas configurado tu almacén vectorial Couchbase, e insertado los documentos, integra la base de conocimiento en un agente, entonces podremos hacer una pregunta al agente y obtener una respuesta.
1 2 3 |
# Crear y utilizar el agente agente = Agente(conocimiento=base_de_conocimientos, mostrar_llamadas_de_herramienta=Verdadero) agente.imprimir_respuesta("¿Cómo hacer curry tailandés?", rebajas=Verdadero) |
Conclusión
Gracias a la integración del robusto marco agentico de Agno con las capacidades de búsqueda vectorial de alto rendimiento de Couchbase, los desarrolladores pueden crear aplicaciones escalables e impulsadas por IA que gestionan eficientemente tareas complejas de recuperación de datos y razonamiento. Esto permite a los agentes realizar búsquedas semánticas, mejorar la comprensión contextual y ofrecer respuestas más precisas. Tanto si trabaja en búsquedas semánticas como en aplicaciones RAG u otros casos de uso basados en IA, esta configuración garantiza la eficacia y la precisión.
Próximos pasos
Más información en Documentación Agnoque incluye una guía de integración de Couchbase.
¡Feliz codificación!