Presentando SafeCoder

SafeCoder' Introduction

Hoy estamos emocionados de anunciar SafeCoder, una solución de asistente de código construida para la empresa.

El objetivo de SafeCoder es desbloquear la productividad en el desarrollo de software para la empresa, con un programador en pares completamente compatible y alojado en las instalaciones. En términos de marketing: “tu propio copiloto de GitHub local”.

Antes de profundizar, esto es lo que necesitas saber:

  • SafeCoder no es un modelo, sino una solución comercial completa de principio a fin
  • SafeCoder ha sido construido con seguridad y privacidad como principios fundamentales: el código nunca sale de la VPC durante el entrenamiento o la inferencia
  • SafeCoder está diseñado para ser alojado por el cliente en su propia infraestructura
  • SafeCoder está diseñado para que los clientes sean dueños de su propio Modelo de Lenguaje de Programación Grande

¿Por qué SafeCoder?

Las soluciones de asistente de código basadas en Modelos de Lenguaje de Programación Grande (LLMs, por sus siglas en inglés), como GitHub Copilot, están proporcionando grandes aumentos de productividad. Para la empresa, la capacidad de ajustar los LLMs de código en la base de código de la empresa para crear LLMs de código propietarios mejora la confiabilidad y relevancia de las sugerencias y genera otro nivel de aumento de productividad. Por ejemplo, el asistente de código interno de Google basado en LLM informa una tasa de aceptación de finalización del 25-34% al ser entrenado en una base de código interna.

Sin embargo, depender de LLMs de código cerrado para crear asistentes de código internos expone a las empresas a problemas de cumplimiento y seguridad. Primero, durante el entrenamiento, ya que ajustar un LLM de código cerrado en una base de código interna requiere exponer esta base de código a un tercero. Y luego, durante la inferencia, ya que los LLMs de código ajustados son propensos a “filtrar” código de su conjunto de datos de entrenamiento durante la inferencia. Para cumplir con los requisitos de cumplimiento, las empresas necesitan implementar LLMs de código ajustados dentro de su propia infraestructura, lo cual no es posible con LLMs de código de código cerrado.

Con SafeCoder, Hugging Face ayudará a los clientes a construir sus propios LLMs de código, ajustados en su base de código propietaria, utilizando modelos y bibliotecas de código abierto de última generación, sin compartir su código con Hugging Face ni ninguna otra parte externa. Con SafeCoder, Hugging Face ofrece una solución de inferencia de LLM de código contenerizada y acelerada por hardware, que el cliente puede implementar directamente dentro de la infraestructura segura del cliente, sin que las entradas y completados de código salgan de su entorno TI seguro.

De StarCoder a SafeCoder

En el núcleo de la solución de SafeCoder se encuentra la familia de LLMs de código StarCoder, creada por el proyecto BigCode, una colaboración entre Hugging Face, ServiceNow y la comunidad de código abierto.

Los modelos de StarCoder ofrecen características únicas que se adaptan perfectamente a las soluciones autohospedadas de la empresa:

  • Resultados de finalización de código de última generación: consulta las pruebas de referencia en el documento y la tabla de clasificación de evaluación de código multilingüe
  • Diseñado para un rendimiento de inferencia: un modelo con 15 mil millones de parámetros con optimizaciones de código, Atención Multi-Query para reducir la huella de memoria y Atención Flash para escalar a un contexto de hasta 8,192 tokens.
  • Entrenado en el Stack, un conjunto de datos de código fuente abierto y éticamente obtenido que contiene solo código con licencia comercialmente permisible, con un mecanismo de exclusión voluntaria para los desarrolladores desde el principio, refinado a través de esfuerzos intensivos de eliminación y deduplicación de PII.

Nota: Si bien StarCoder es la inspiración y el modelo que impulsa la versión inicial de SafeCoder, un beneficio importante de construir una solución LLM sobre modelos de código abierto es que puede adaptarse a los últimos y mejores modelos de código abierto disponibles. En el futuro, SafeCoder podría ofrecer otros modelos de código abierto comercialmente permisibles similares, construidos sobre conjuntos de datos éticamente obtenidos y transparentes, como base LLM disponible para el ajuste.

Privacidad y seguridad como principios fundamentales

Para cualquier empresa, la base de código interna es uno de sus activos intelectuales más importantes y valiosos. Un principio fundamental de SafeCoder es que la base de código interna del cliente nunca será accesible para ninguna tercera parte (incluido Hugging Face) durante el entrenamiento o la inferencia.

En la fase inicial de configuración de SafeCoder, el equipo de Hugging Face proporciona contenedores, scripts y ejemplos para trabajar en conjunto con el cliente y seleccionar, extraer, preparar, duplicar y desidentificar los datos de la base de código interna para crear un conjunto de datos de entrenamiento que se utilizará en un contenedor de entrenamiento proporcionado por Hugging Face y configurado para la infraestructura de hardware disponible para el cliente.

En la fase de implementación de SafeCoder, el cliente implementa contenedores proporcionados por Hugging Face en su propia infraestructura para exponer puntos finales privados internos dentro de su VPC. Estos contenedores están configurados para la configuración exacta de hardware disponible para el cliente, incluidas las GPUs NVIDIA, las GPUs AMD Instinct, las CPUs Intel Xeon, los aceleradores AWS Inferentia2 o Habana Gaudi.

Cumplimiento como principio fundamental

A medida que el marco regulatorio en torno a los modelos y conjuntos de datos de aprendizaje automático aún se está redactando en todo el mundo, las empresas globales deben asegurarse de que las soluciones que utilizan minimicen los riesgos legales.

Las fuentes de datos, la gobernanza de datos, la gestión de datos con derechos de autor son solo algunas de las áreas de cumplimiento más importantes a considerar. BigScience, el hermano mayor e inspiración de BigCode, abordó estas áreas en grupos de trabajo antes de que fueran ampliamente reconocidas por el proyecto de ley de la UE sobre IA y, como resultado, fue clasificado como el proveedor de modelos fundacionales más cumplidor en un estudio CRFM de Stanford.

BigCode amplió este trabajo implementando técnicas novedosas para el dominio de código y construyendo The Stack con el cumplimiento como principio fundamental, como el filtrado de licencias comercialmente permitido, mecanismos de consentimiento (los desarrolladores pueden averiguar fácilmente si su código está presente y solicitar ser excluidos del conjunto de datos) y una amplia documentación y herramientas para inspeccionar los datos fuente y mejorar el conjunto de datos (como la deduplicación y la eliminación de información de identificación personal).

Todos estos esfuerzos se traducen en la minimización de riesgos legales para los usuarios de los modelos StarCoder y los clientes de SafeCoder. Y para los usuarios de SafeCoder, estos esfuerzos se traducen en características de cumplimiento: cuando los desarrolladores de software obtienen completados de código, estas sugerencias se verifican en The Stack, por lo que los usuarios saben si el código sugerido coincide con el código existente en el conjunto de datos fuente y cuál es la licencia. Los clientes pueden especificar qué licencias prefieren y mostrar esas preferencias a sus usuarios.

¿Cómo funciona?

SafeCoder es una solución comercial completa, que incluye servicio, software y soporte.

Entrenamiento de su propio modelo de SafeCoder

StarCoder fue entrenado en más de 80 lenguajes de programación y ofrece un rendimiento de última generación en múltiples pruebas. Para ofrecer mejores sugerencias de código específicamente para un cliente de SafeCoder, comenzamos la colaboración con una fase de entrenamiento opcional, donde el equipo de Hugging Face trabaja directamente con el equipo del cliente para guiarlos a través de los pasos para preparar y construir un conjunto de datos de código de entrenamiento y crear su propio modelo de generación de código mediante el ajuste fino, sin exponer nunca su base de código a terceros o a internet.

El resultado final es un modelo adaptado a los lenguajes de código, estándares y prácticas del cliente. A través de este proceso, los clientes de SafeCoder aprenden el proceso y construyen un flujo de trabajo para crear y actualizar sus propios modelos, asegurando que no hay dependencia de proveedores y manteniendo el control de sus capacidades de IA.

Implementación de SafeCoder

Durante la fase de configuración, los clientes de SafeCoder y Hugging Face diseñan y proporcionan la infraestructura óptima para admitir la concurrencia requerida y ofrecer una excelente experiencia para los desarrolladores. Luego, Hugging Face construye contenedores de inferencia de SafeCoder que están acelerados por hardware y optimizados para el rendimiento, para que el cliente los implemente en su propia infraestructura.

La inferencia de SafeCoder admite varios tipos de hardware para brindar a los clientes una amplia gama de opciones: GPUs NVIDIA Ampere, GPUs AMD Instinct, Habana Gaudi2, AWS Inferentia 2, CPUs Intel Xeon Sapphire Rapids y más.

Uso de SafeCoder

Una vez que SafeCoder está implementado y sus puntos finales están activos dentro de la VPC del cliente, los desarrolladores pueden instalar complementos compatibles de SafeCoder IDE para obtener sugerencias de código mientras trabajan. Actualmente, SafeCoder es compatible con IDE populares, incluyendo VSCode, IntelliJ y se esperan más complementos de nuestros socios.

¿Cómo puedo obtener SafeCoder?

Hoy, anunciamos SafeCoder en colaboración con VMware en la conferencia VMware Explore y ponemos SafeCoder a disposición de los clientes empresariales de VMware. Trabajar con VMware ayuda a garantizar que la implementación de SafeCoder en la infraestructura de nube de VMware de los clientes tenga éxito, ya sea en la nube, en las instalaciones o en un entorno de infraestructura híbrida preferido por el cliente. Además de utilizar SafeCoder, VMware ha publicado una arquitectura de referencia con ejemplos de código para permitir el tiempo de valor más rápido posible al implementar y operar SafeCoder en la infraestructura de VMware. La Arquitectura de Referencia de IA Privada de VMware facilita que las organizaciones aprovechen rápidamente proyectos populares de código abierto como ray y kubeflow para implementar servicios de IA junto con sus conjuntos de datos privados, al tiempo que trabajan con Hugging Face para garantizar que las organizaciones mantengan la flexibilidad para aprovechar lo último y lo mejor en modelos de código abierto. Todo esto sin comprometer el costo total de propiedad ni el rendimiento.

“Nuestra colaboración con Hugging Face en torno a SafeCoder se alinea totalmente con el objetivo de VMware de permitir a los clientes elegir soluciones al tiempo que mantienen la privacidad y el control de sus datos comerciales. De hecho, hemos estado utilizando SafeCoder internamente durante meses y hemos obtenido excelentes resultados. Lo mejor de todo es que nuestra colaboración con Hugging Face recién está comenzando y estoy emocionado de llevar nuestra solución a cientos de miles de clientes en todo el mundo”, dice Chris Wolf, vicepresidente de VMware AI Labs. Obtenga más información sobre la IA privada y la diferenciación de VMware en este espacio emergente aquí.


Si estás interesado en SafeCoder para tu empresa, por favor contáctanos aquí – nuestro equipo se pondrá en contacto contigo para discutir tus requisitos!