Skip to content

¡Bienvenidos a Krixik!

🇺🇸 English version of this document

Los modelos de IA pequeños/especializados son a menudo un complemento (o alternativa) necesario(a) a la "IA grande". Sin embargo, la infraestructura para la IA pequeña tiende a ser insuficiente, por lo cual construir con ella puede ser difícil, prolongado, e incluso costoso. Iterar con diferentes modelos, y particularmente con combinaciones de estos modelos, puede volverse inviable.

Por eso estamos acá. Bienvenidos a Krixik, donde puedes fácil y rápidamente experimentar, prototipar, y construir con modelos de IA pequeños/especializados secuenciados o independientes a través de APIs seguros. Los modelos que usas a través de Krixik pueden ser de código abierto o fine-tuned/entrenados por ti.

Table of Contents

Guía de Inicio Rápido

Registra tu Cuenta

Krixik está en beta, por lo cual acceso al cliente de Krixik actualmente solo se puede obtener a través de solicitud directa.

Si te gustaría participar en nuestras pruebas beta por favor llena este breve Google Form.

Instalación de Krixik

Ejecuta el siguiente comando para instalar el cliente Python de Krixik:

pip install krixik

Nota: Se requiere la versión 3.8 (o mayor) de Python.

Inicializa tu Sesión

Para inicializar tu sesión en el cliente de Krixik necesitarás tus secretos únicos api_key y api_url. Los administradores de Krixik enviarán secretos individuales a cada participante en nuestras pruebas beta.

En vez de manejar tus secretos directamente, enfáticamente recomendamos guardarlos en un archivo .env y cargarlos a través de python-dotenv.

Una vez tengas tus secretos, inicializa tu sesión de la siguiente manera:

from krixik import krixik
krixik.init(api_key=MY_API_KEY, 
            api_url=MY_API_URL)

...donde MY_API_KEY y MY_API_URL son los secretos de tu cuenta.

Si has perdido tus secretos, por favor escríbenos directamente.

Construye tu Primer Pipeline

Construye un simple pipeline de transcripción que consiste de un solo módulo transcribe (transcripción). Puedes crear el pipeline con una sola línea de código:

# crear un simple pipeline de transcripción
pipeline = krixik.create_pipeline(name='mi-pipeline-de-transcripcion-1', 
                                  module_chain=["transcribe"])

¡El pipeline está listo! Ahora puedes procesar archivos de audio a través de él para generar transcripciones de ellos.

pipeline.process(local_file_path='./camino/a/mi/archivo/mp3')

Las salidas de este pipeline serán una transcripción de tu audio con anotaciones de fecha/hora, un file_id que sirve de identificación única para el archivo procesado, y un request_id que sirve de identificación única para el proceso mismo.

Extiende tu Pipeline

Supón que quieres hacer búsqueda semántica sobre toda salida de un módulo transcribe (transcripción).

Tendrías que hacer lo siguiente después de la transcripción:

  1. Convertir la transcripción en un archivo de texto
  2. Fragmentar el texto usando una ventana movible, segmentándolo en fragmentos que posiblemente se sobreponen entre sí
  3. Encaje léxico para convertir cada fragmento en un vector
  4. Guardar los vectores resultantes en una base de datos vectorial
  5. Indexar esta base de datos
  6. Habilitar búsqueda semántica sobre la base de datos

Localmente crear y hacerle pruebas a esta secuencia de pasos sería demorado, y hacerlo en producción de manera segura aún más. Eso dejando de lado la intención de hacerlo con arquitectura sin servidor.

Con Krixik, por fortuna, puedes rápidamente incorporar esta funcionalidad a tu pipeline anterior con solo agregar un par de módulos. La sintaxis se mantiene igual que antes, así que crear el nuevo pipeline se sigue haciendo con una sola línea de código:

# crear pipeline con los módulos arriba insinuados
pipeline_2 = krixik.create_pipeline(name='transcripcion-y-busqueda-semantica', 
                                    module_chain=["transcribe",
                                                "json-to-txt",
                                                "parser", 
                                                "text-embedder", 
                                                "vector-db"])

Procesa un archivo a través de tu nuevo pipeline.

pipeline_2.process(local_file_path='./camino/a/mi/archivo/mp3')

Ahora que hay al menos un archivo en el pipeline, puedes usar el file_id del archivo—que te fue devuelto al finalizar el proceso anterior—para hacer búsqueda semántica sobre su transcripción con el método semantic_search:

pipeline_2.semantic_search(query="El texto que quieres semánticamente buscar va acá",
                           file_ids=['el_file_id_de_arriba'])

¡Eso es todo! Has transcrito el archivo, procesado la transcripción, hecho búsqueda semántica sobre ella, y puedes reutilizar el pipeline para cuantos archivos y búsquedas desees... todo en un par de minutos y con pocas líneas de código.

Opcional: Haz pull al repositorio de Krixik Docs en Español

Si deseas hacerle seguimiento al ejemplo anterior, o a cualquier ejemplo de las docenas que compartimos en esta documentación, simplemente hazle pull a todo el repositorio de Krixik Docs en Español.

Hacer esto te proporcionará todos los archivos necesarios, y el código ya está configurado para correr en esa estructura de directorios.

¿Qué Puedes Construir con Krixik?

La gama de ejemplos que hemos documentado incluye pipelines para:

Esto es apenas la punta del iceberg. Muchos más pipelines son posibles hoy (ve más ejemplos acá), y la librería Krixik de módulos y modelos siempre estará en expansión—tal vez incluso pronto incluya módulos/modelos que tú contribuyas.

Más Detalles - Documentación

Lo anterior no es más que una pequeña idea del verdadero poder de Krixik. Además de todos los parámetros que puedes ajustar (tema que ni tocamos en este README), la caja de herramientas Krixik es una colección siempre creciente de modelos y módulos con los que puedes construir.

Si te gustaría aprender más, por favor visita la Documentación de Krixik, donde se entra en detalle sobre:

Fecha de Lanzamiento de Krixik y Newsletter (Boletín Informativo)

¿Te emociona que Krixik se gradúe de beta? ¡A nosotros también! Estamos seguros de que este producto va a ser algo realmente fantástico, y nos encantaría tenerte a bordo durante ese viaje.

Si quieres que te mantengamos al tanto sobre el lanzamiento y otros temas (prometemos no enviarte spam), por favor suscríbete a correspondencia ocasional de nosotros acá.

Gracias por tu tiempo, y ¡bienvenidos a Krixik!