Usando gptel con Novita AI: Una guía completa

Usando gptel con Novita AI: Una guía completa

En el panorama en rápida evolución del desarrollo de IA, la integración de modelos de lenguaje potentes en entornos de desarrollo familiares se ha vuelto crucial. Este artículo explora cómo los desarrolladores pueden aprovechar la API de Novita AI dentro de gptel, un cliente LLM basado en Emacs. Al combinar los modelos avanzados de Novita AI con la integración perfecta de gptel en Emacs, los desarrolladores pueden mejorar significativamente sus flujos de trabajo impulsados por IA sin salir de su editor de texto preferido.

¿Qué es gptel?

gptel es un cliente LLM versátil diseñado para usuarios de Emacs. Admite múltiples modelos y backends, funcionando sin problemas en cualquier búfer de Emacs. Con su interfaz uniforme y uso en el lugar, gptel encarna la filosofía de Emacs de extensibilidad y accesibilidad. Internamente, gptel utiliza Curl si está disponible, proporcionando capacidades HTTP robustas, pero también admite url-retrieve para entornos sin dependencias externas. Esta doble compatibilidad garantiza que gptel se pueda configurar en una amplia gama de configuraciones de Emacs.

Características de gptel

https://www.youtube.com/watch?v=bsRnh\_brggM

gptel viene cargado de funciones diseñadas para maximizar la productividad:

  • Operaciones asíncronas y rápidas: Transmite respuestas directamente en Emacs.
  • Soporte multi-LLM: Elige entre varios modelos como Mythomax, Llama y Qwen.
  • Flujos de trabajo personalizables: Modifica las operaciones de gptel usando una API simple.
  • Interacciones conscientes del contexto: Añade regiones, búferes o archivos dinámicamente a las consultas.
  • Soporte de formato Markdown/Org: Da formato a las respuestas de LLM de manera efectiva.
  • Soporte multimodal: Trabaja con texto, imágenes y documentos.
  • Gestión de conversaciones: Guarda, reanuda y ramifica conversaciones según sea necesario.
  • Ajustes interactivos de consultas: Previsualiza y modifica los mensajes antes de enviarlos.
  • Capacidades de introspección: Inspecciona y modifica las consultas antes de enviarlas para garantizar precisión y relevancia.
  • Conversaciones editables: Vuelve atrás y edita mensajes anteriores o respuestas de LLM durante una conversación. Estas ediciones se retroalimentan al modelo, permitiendo ajustes dinámicos.

Cómo descargar gptel

Instalar gptel es sencillo:

  1. Usando el gestor de paquetes de Emacs:
    • Ejecuta M-x package-install RET gptel RET.
    • Para una versión estable, añade MELPA-stable a tus fuentes de paquetes.
  2. Straight:
    • Añade (straight-use-package 'gptel) a tu configuración.

(Opcional) Instala markdown-mode para un mejor formato e interacciones de chat mejoradas.

  1. Instalación manual:
    • Clona el repositorio desde GitHub.
    • Ejecuta M-x package-install-file RET en el directorio del repositorio.
  2. Usando Doom Emacs:
    • En packages.el
      (package! gptel)

    • En config.el
      (use-package! gptel :config (setq! gptel-api-key “your key”))

      “your key” puede ser la clave API en sí, o (más seguro) una función que devuelva la clave. Configurar gptel-api-key es opcional; se te pedirá una clave si no se encuentra.

  3. Usando Spacemacs:
    • En tu archivo .spacemacs, añade llm-client a dotspacemacs-configuration-layers.
      (llm-client :variables llm-client-enable-gptel t)

Acceder a la API de Novita AI en gptel

Integrar la API de Novita AI con gptel desbloquea capacidades LLM avanzadas:

  1. Prueba varios LLMs en el LLM Playground de Novita AI sin costo.
  2. Ve a la página de gestión de claves de Novita AI para obtener la clave API de LLM para usar con gptel.
  3. Registra Novita AI como backend:
(gptel-make-openai "NovitaAI"
  :host "api.novita.ai"
  :endpoint "/v3/openai"
  :key "your-api-key"
  :stream t
  :models '(
    gryphe/mythomax-l2-13b
    meta-llama/llama-3-70b-instruct
    meta-llama/llama-3.1-70b-instruct))
  1. Reemplaza "your-api-key" con tu clave API de Novita AI.
  2. Configura Novita AI como backend predeterminado:
(setq
  gptel-model   'gryphe/mythomax-l2-13b
  gptel-backend
  (gptel-make-openai "NovitaAI"
    :host "api.novita.ai"
    :endpoint "/v3/openai"
    :key "your-api-key"
    :stream t
    :models '(
      mistralai/Mixtral-8x7B-Instruct-v0.1
      meta-llama/llama-3-70b-instruct
      meta-llama/llama-3.1-70b-instruct)))

Cómo usar gptel

Los comandos de gptel son flexibles e intuitivos:

  • Consultas generales: Usa M-x gptel-send para enviar texto hasta el cursor. La respuesta se insertará debajo y podrás continuar la conversación sin problemas.
  • Búferes de chat dedicados:
    • Inicia una nueva sesión o cambia a una existente usando M-x gptel.
    • Usa C-c RET para enviar mensajes de forma interactiva.
    • Guarda y restaura tus sesiones de chat sin esfuerzo, permitiendo flujos de trabajo consistentes.
  • Modificar comportamiento dinámicamente: Ejecuta C-u M-x gptel-send para ajustar parámetros de chat como el proveedor de LLM, backend o mensaje del sistema para tareas específicas.
  • Funciones mejoradas de Org mode:
    • Ramifica conversaciones usando encabezados de Org para interacciones estructuradas.
    • Usa gptel-org-set-properties para declarar configuraciones de chat bajo encabezados específicos, creando cuadernos LLM reproducibles.
  • Soporte multimodal:
    • Añade archivos de texto, imagen o documento al contexto de la conversación con gptel-add-file o a través del menú transitorio. Esto permite consultas más ricas y conscientes del contexto.
    • Gestiona el contexto dinámicamente incluyendo o excluyendo regiones, búferes o archivos según sea necesario.

Conclusión

Al combinar gptel con la API de Novita AI, los desarrolladores pueden acceder a herramientas potentes y flexibles para el desarrollo de IA. Ya sea que estés refinando flujos de trabajo o explorando nuevas capacidades de modelos, gptel y la API de Novita AI hacen que el proceso sea fluido y eficiente. ¿Listo para comenzar? ¡Explora el LLM Playground hoy!

Preguntas frecuentes

¿Puedo usar gptel para flujos de trabajo no estándar?

Sí, gptel proporciona la función gptel-request, permitiendo flujos de trabajo personalizados más allá de gptel-send.

¿Cómo habilito el desplazamiento automático?

Añade esto a tu configuración:
(add-hook 'gptel-post-stream-hook 'gptel-auto-scroll)

¿Cómo puedo cambiar el formato de mensaje/respuesta?

Personaliza gptel-prompt-prefix-alist y gptel-response-prefix-alist para modos específicos.

¿Soporta gptel contenido multimedia?

Sí, gptel admite modelos multimodales para manejar texto, imágenes y documentos.

¿Cómo puedo configurar opciones específicas del búfer de chat?

Puedes establecer parámetros de chat como el modelo, backend y directivas por búfer usando el menú transitorio. Llama a C-u M-x gptel-send para acceder a estos ajustes de forma interactiva.

¿Qué es el menú transitorio y cómo puedo usarlo de manera efectiva?

El menú transitorio te permite ajustar dinámicamente el comportamiento de gptel, incluyendo contexto, redirección de entrada/salida y preferencias de consulta. Accede a él llamando a C-u gptel-send o gptel-menu. Para uso avanzado, consulta el repositorio de GitHub para ejemplos y documentación. ¿Puedo usar gptel para flujos de trabajo no estándar? Sí, gptel proporciona la función gptel-request, permitiendo flujos de trabajo personalizados más allá de gptel-send.

¿Cómo habilito el desplazamiento automático?

Añade esto a tu configuración:
(add-hook 'gptel-post-stream-hook 'gptel-auto-scroll)

¿Cómo puedo cambiar el formato de mensaje/respuesta?

Personaliza gptel-prompt-prefix-alist y gptel-response-prefix-alist para modos específicos.

¿Soporta gptel contenido multimedia?

Sí, gptel admite modelos multimodales para manejar texto, imágenes y documentos.

Novita AI es una plataforma en la nube de IA que ofrece a los desarrolladores una manera sencilla de implementar modelos de IA usando nuestra API simple, al mismo tiempo que proporciona la GPU en la nube confiable y asequible para construir y escalar.