Las empresas de hoy en día están explorando cada vez más formas de aprovechar los grandes modelos de lenguaje (LLM) para aumentar la productividad y crear aplicaciones inteligentes. Sin embargo, muchas de las opciones de LLM disponibles son modelos genéricos que no están adaptados para necesidades empresariales especializadas como el análisis de datos, la codificación y la automatización de tareas. Entonces, entra Snowflake Arctic – un modelo LLM de vanguardia diseñado y optimizado específicamente para casos de uso empresariales básicos.
Desarrollado por el equipo de investigación de inteligencia artificial de Snowflake, Arctic amplía los límites de lo que es posible con un entrenamiento eficiente, una rentabilidad y un nivel de apertura sin precedentes. Este modelo revolucionario sobresale en los benchmarks empresariales clave mientras requiere mucha menos potencia de cómputo en comparación con los LLM existentes. Analicemos qué hace que Arctic sea un juego cambiable para la inteligencia artificial empresarial.
Inteligencia empresarial redefinida En su núcleo, Arctic se centra en ofrecer un rendimiento excepcional en las métricas que realmente importan para las empresas – codificación, consultas SQL, seguimiento de instrucciones complejas y generación de resultados basados en hechos. Snowflake ha combinado estas capacidades críticas en una nueva métrica de “inteligencia empresarial“.
Los resultados hablan por sí mismos. Arctic cumple o supera modelos como LLAMA 7B y LLAMA 70B en los benchmarks de inteligencia empresarial mientras utiliza menos de la mitad del presupuesto de cómputo para el entrenamiento. De manera notable, a pesar de utilizar 17 veces menos recursos de cómputo que LLAMA 70B, Arctic logra la paridad en pruebas especializadas como codificación (HumanEval+, MBPP+), generación de SQL (Spider) y seguimiento de instrucciones (IFEval).
Pero la habilidad de Arctic va más allá de simplemente aprobar los benchmarks empresariales. Mantiene un rendimiento sólido en la comprensión general del lenguaje, el razonamiento y la aptitud matemática en comparación con modelos entrenados con presupuestos de cómputo exponencialmente más altos como DBRX. Esta capacidad holística hace que Arctic sea una opción insuperable para abordar las diversas necesidades de inteligencia artificial de una empresa.
La innovación
Arquitectura híbrida de transformador Dense-MoE ¿Cómo logró el equipo de Snowflake construir un LLM tan capaz y eficiente? La respuesta se encuentra en la arquitectura de transformador híbrido Dense Mixture-of-Experts (MoE) de Arctic.
Los modelos de transformador denso tradicionales se vuelven cada vez más costosos de entrenar a medida que crece su tamaño, con requisitos computacionales que aumentan linealmente. El diseño MoE ayuda a sortear esto al utilizar múltiples redes feed-forward paralelas (expertos) y solo activar un subconjunto para cada token de entrada.
Sin embargo, simplemente utilizar una arquitectura MoE no es suficiente – Arctic combina ingeniosamente las fortalezas de los componentes densos y MoE. Empareja un codificador de transformador denso de 10 mil millones de parámetros con una capa MoE de perceptrón multicapa residual de 128 expertos. Este modelo híbrido denso-MoE totaliza 480 mil millones de parámetros pero solo 17 mil millones están activos en cualquier momento dado utilizando la puerta de top-2.
Las implicaciones son profundas – Arctic logra una calidad y capacidad de modelo sin precedentes mientras permanece notablemente eficiente en términos de cómputo durante el entrenamiento y la inferencia. Por ejemplo, Arctic tiene 50% menos parámetros activos que modelos como DBRX durante la inferencia.
Pero la arquitectura del modelo es solo una parte de la historia. La excelencia de Arctic es el resultado de varias técnicas y conocimientos pioneros desarrollados por el equipo de investigación de Snowflake:
- Plan de datos de capacitación enfocado en la empresa A través de una experimentación extensa, el equipo descubrió que las habilidades genéricas como el razonamiento común deben aprenderse al principio, mientras que las especializaciones más complejas como la codificación y el SQL se adquieren mejor más adelante en el proceso de entrenamiento. El plan de datos de Arctic sigue un enfoque de tres etapas que imita los progresos de aprendizaje humanos.
Los primeros teratokens se centran en construir una base general amplia. Los siguientes 1,5 teratokens se concentran en desarrollar habilidades empresariales a través de datos adaptados para SQL, tareas de codificación y más. Los últimos teratokens refinan aún más las especializaciones de Arctic utilizando conjuntos de datos refinados.
- Elección óptima de arquitectura Mientras que los MoE prometen una mejor calidad por cómputo, elegir las configuraciones correctas es crucial pero poco entendido. A través de una investigación detallada, Snowflake optó por una arquitectura que emplea 128 expertos con puerta de top-2 en cada capa después de evaluar los intercambios de calidad y eficiencia.
Aumentar el número de expertos proporciona más combinaciones, mejorando la capacidad del modelo. Sin embargo, esto también aumenta los costos de comunicación, por lo que Snowflake optó por 128 expertos “condensados” diseñados con cuidado activados a través de la puerta de top-2 como el equilibrio óptimo.
- Diseño de sistema coherente Pero incluso una arquitectura de modelo óptima puede ser socavada por cuellos de botella del sistema. Así que el equipo de Snowflake innovó aquí también – diseñando la arquitectura del modelo de la mano con los sistemas subyacentes de entrenamiento y inferencia.
Para un entrenamiento eficiente, los componentes densos y MoE se estructuraron para permitir la superposición de la comunicación y el cálculo, ocultando las sobrecargas de comunicación sustanciales. En el lado de la inferencia, el equipo aprovechó las innovaciones de NVIDIA para permitir una implementación altamente eficiente a pesar de la escala de Arctic.
Técnicas como la cuantificación FP8 permiten ajustar el modelo completo en un solo nodo de GPU para la inferencia interactiva. Los lotes más grandes aprovechan las capacidades de paralelismo de Arctic en varios nodos mientras siguen siendo impresionantemente eficientes en términos de cómputo gracias a sus 17 mil millones de parámetros activos compactos.
Con una licencia Apache 2.0, los pesos y el código de Arctic están disponibles sin restricciones para cualquier uso personal, de investigación o comercial. Pero Snowflake ha ido mucho más allá, publicando en código abierto sus recetas de datos completas, implementaciones de modelos, consejos y los profundos conocimientos de investigación que impulsan a Arctic.
La “Receta de Arctic” es una base de conocimientos integral que cubre todos los aspectos de la construcción y optimización de un modelo MoE grande como Arctic. Destila los conocimientos clave en diversas áreas como la fuente de datos, el diseño de la arquitectura del modelo, el diseño de sistema coherente, los esquemas de entrenamiento e inferencia optimizados y más.
Desde la identificación de planes de datos óptimos hasta la arquitectura de MoE mientras se co-optimizan compiladores, programadores y hardware – este extenso cuerpo de conocimiento democratiza habilidades que anteriormente estaban confinadas a laboratorios de inteligencia artificial de élite. La Receta de Arctic acelera las curvas de aprendizaje y capacita a empresas, investigadores y desarrolladores en todo el mundo para crear sus propios LLM personalizados y rentables para prácticamente cualquier caso de uso.
Comenzar con Arctic
Para las empresas interesadas en aprovechar Arctic, Snowflake ofrece múltiples caminos para comenzar rápidamente:
Inferencia sin servidor: Los clientes de Snowflake pueden acceder al modelo Arctic de forma gratuita en Snowflake Cortex, la plataforma de inteligencia artificial completamente administrada de la empresa. Más allá de eso, Arctic está disponible en todos los catálogos de modelos principales como AWS, Microsoft Azure, NVIDIA y más.
Comenzar desde cero: Los pesos del modelo y las implementaciones de código abierto permiten a los desarrolladores integrar directamente a Arctic en sus aplicaciones y servicios. El repositorio de Arctic proporciona muestras de código, tutoriales de implementación, recetas de ajuste fino y más.
Construir modelos personalizados: Gracias a las guías exhaustivas de la Receta de Arctic, los desarrolladores pueden construir sus propios modelos MoE personalizados desde cero, optimizados para cualquier caso de uso especializado utilizando los conocimientos de la creación de Arctic.
Una nueva era de inteligencia artificial empresarial abierta Arctic es más que solo otro modelo de lenguaje poderoso – anuncia una nueva era de capacidades de inteligencia artificial especializadas y rentables, diseñadas específicamente para la empresa.
Desde la revolución del análisis de datos y la productividad de codificación hasta la potenciación de la automatización de tareas y aplicaciones más inteligentes, el ADN empresarial de Arctic lo convierte en una opción insuperable sobre los LLM genéricos. Y al publicar en código abierto no solo el modelo sino todo el proceso de investigación y desarrollo detrás de él, Snowflake está fomentando una cultura de colaboración que elevará todo el ecosistema de inteligencia artificial.
A medida que las empresas adoptan cada vez más la inteligencia artificial generativa, Arctic ofrece un modelo audaz para desarrollar modelos objetivamente superiores para cargas de trabajo de producción y entornos empresariales. Su confluencia de investigación de vanguardia, eficiencia sin precedentes y una ética de apertura inquebrantable establece un nuevo estándar en la democratización del potencial transformador de la inteligencia artificial.
Prácticas con Arctic
Ahora que hemos cubierto lo que hace que Arctic sea verdaderamente innovador, analicemos cómo los desarrolladores y científicos de datos pueden comenzar a utilizar este modelo poderoso.
Arctic está disponible precargado y listo para implementar a través de centros de modelos principales como Hugging Face y plataformas de inteligencia artificial asociadas. Pero su verdadero poder emerge cuando se personaliza y se ajusta para sus casos de uso específicos.
La licencia Apache 2.0 de Arctic proporciona la total libertad de integrarlo en sus aplicaciones, servicios o flujos de trabajo de inteligencia artificial personalizados. Analicemos algunos ejemplos de código utilizando la biblioteca de transformadores para comenzar:
Inferencia básica con Arctic
Para casos de uso de generación de texto rápido, podemos cargar Arctic y ejecutar la inferencia básica muy fácilmente:
from transformers import AutoTokenizer, AutoModelForCausalLM
# Cargar el tokenizador y el modelo
tokenizer = AutoTokenizer.from_pretrained("Snowflake/snowflake-arctic-instruct")
model = AutoModelForCausalLM.from_pretrained("Snowflake/snowflake-arctic-instruct")
# Crear una entrada simple y generar texto
input_text = "Aquí hay una pregunta básica: ¿Cuál es la capital de Francia?"
input_ids = tokenizer.encode(input_text, return_tensors="pt")
# Generar respuesta con Arctic
output = model.generate(input_ids, max_length=150, do_sample=True, top_k=50, top_p=0.95, num_return_sequences=1)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(generated_text)
Esto debería producir algo como:
“La capital de Francia es París. París es la ciudad más grande de Francia y el centro económico, político y cultural del país. Es hogar de famosos lugares como la Torre Eiffel, el museo del Louvre y la catedral de Notre-Dame.”
Como puede ver, Arctic entiende sin esfuerzo la consulta y proporciona una respuesta detallada y basada en hechos que aprovecha su sólida comprensión del lenguaje.
Ajuste fino para tareas especializadas
Mientras que es impresionante fuera de la caja, Arctic realmente brilla cuando se personaliza y se ajusta en sus propios datos para tareas especializadas. Snowflake ha proporcionado recetas extensas que cubren:
- Curar datos de entrenamiento de alta calidad adaptados para su caso de uso
- Implementar currículos de entrenamiento personalizados de múltiples etapas
- Aprovechar enfoques de ajuste fino eficientes como LoRA, P-Tuning o FactorizedFusion
- Optimizaciones para discernir habilidades SQL, codificación u otras habilidades empresariales clave
Aquí hay un ejemplo de cómo ajustar Arctic en sus propios conjuntos de datos de codificación utilizando LoRA y las recetas de Snowflake:
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import LoraConfig, get_peft_model, prepare_model_for_int8_training
# Cargar el modelo base de Arctic
tokenizer = AutoTokenizer.from_pretrained("Snowflake/snowflake-arctic-instruct")
model = AutoModelForCausalLM.from_pretrained("Snowflake/snowflake-arctic-instruct", load_in_8bit=True)
# Inicializar configuraciones de LoRA
lora_config = LoraConfig(
r=8,
lora_alpha=16,
target_modules=["query_key_value"],
lora_dropout=0.05,
bias="none",
task_type="CAUSAL_LM"
)
# Preparar modelo para el ajuste fino de LoRA
model = prepare_model_for_int8_training(model)
model = get_peft_model(model, lora_config)
# Sus conjuntos de datos de codificación
data = load_coding_datasets()
# Ajuste fino con las recetas de Snowflake
train(model, data, ...)
Este código ilustra cómo puede cargar Arctic, inicializar una configuración LoRA adaptada para la generación de código y luego ajustar el modelo en sus propios conjuntos de datos de codificación aprovechando la orientación de Snowflake.
Personalizado y ajustado, Arctic se convierte en una potencia privada sintonizada para ofrecer un rendimiento sin precedentes en sus flujos de trabajo empresariales y necesidades de partes interesadas.