Inicio rápido | Documentación | Guía de cero a héroe
Llama Stack define y estandariza el conjunto de componentes básicos necesarios para llevar al mercado aplicaciones de IA generativa. Estos componentes básicos se presentan en forma de API interoperables con un amplio conjunto de proveedores de servicios que proporcionan sus implementaciones.
Nuestro objetivo es proporcionar implementaciones preempaquetadas que puedan operarse en una variedad de entornos de implementación: los desarrolladores comienzan a iterar con computadoras de escritorio o sus dispositivos móviles y pueden realizar una transición sin problemas a implementaciones locales o de nube pública. En cada punto de esta transición, está disponible el mismo conjunto de API y la misma experiencia de desarrollador.
⚠️ Nota Las API de Stack están mejorando rápidamente, pero todavía hay mucho trabajo en progreso y solicitamos comentarios y contribuciones directas.
Actualmente tenemos implementaciones funcionales de las siguientes API:
Inferencia
Seguridad
Memoria
Agentes
evaluar
Telemetria
Además de estas API, también relacionamos API para operar con recursos asociados (ver Conceptos):
Modelos
Escudos
Bancos de memoria
Tareas de evaluación
Conjuntos de datos
Funciones de puntuación
También estamos trabajando en las siguientes API que se lanzarán pronto:
Después del entrenamiento
Generación de datos sintéticos
Puntuación de recompensa
Cada una de las API en sí es una colección de puntos finales REST.
A diferencia de otros marcos, Llama Stack está construido con un enfoque orientado a servicios y centrado en la API REST. Un diseño de este tipo no solo permite transiciones fluidas de implementaciones locales a remotas, sino que también obliga al diseño a ser más declarativo. Creemos que esta restricción puede dar como resultado una experiencia de desarrollador mucho más simple y sólida. Esto necesariamente tendrá un equilibrio con la expresividad; sin embargo, si conseguimos las API correctas, puede conducir a una plataforma muy poderosa.
Esperamos que el conjunto de API que diseñamos sea componible. Un agente depende de manera abstracta de las API {Inferencia, Memoria, Seguridad} pero no le importan los detalles de implementación reales. La seguridad en sí misma puede requerir inferencia del modelo y, por lo tanto, puede depender de la API de inferencia.
Esperamos ofrecer soluciones llave en mano para escenarios de implementación populares. Debería ser fácil implementar un servidor Llama Stack en AWS o en un centro de datos privado. Cualquiera de estos debería permitir a un desarrollador comenzar con potentes aplicaciones agentes, evaluaciones de modelos o servicios de ajuste en cuestión de minutos. Todos deberían dar como resultado la misma observabilidad uniforme y la misma experiencia de desarrollador.
Como proyecto iniciado por Meta, comenzamos centrándonos explícitamente en la serie de modelos Llama de Meta. Apoyar el amplio conjunto de modelos abiertos no es una tarea fácil y queremos comenzar con los modelos que mejor entendemos.
Existe un ecosistema vibrante de proveedores que brindan inferencia eficiente o almacenes de vectores escalables o potentes soluciones de observabilidad. Queremos asegurarnos de que sea fácil para los desarrolladores elegir las mejores implementaciones para sus casos de uso. También queremos asegurarnos de que sea fácil para los nuevos proveedores incorporarse y participar en el ecosistema.
Además, hemos diseñado cada elemento de la pila de manera que las API y los recursos (como los modelos) puedan federarse.
Creador de proveedores de API | Ambientes | Agentes | Inferencia | Memoria | Seguridad | Telemetria |
---|---|---|---|---|---|---|
Metareferencia | Nodo único | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Fuegos artificiales | Alojado | ✔️ | ✔️ | ✔️ | ||
Base de AWS | Alojado | ✔️ | ✔️ | |||
Juntos | Alojado | ✔️ | ✔️ | ✔️ | ||
Ollama | Nodo único | ✔️ | ||||
TGI | Nodo alojado y único | ✔️ | ||||
croma | Nodo único | ✔️ | ||||
Vector de página | Nodo único | ✔️ | ||||
PyTorch Ejecutorch | iOS en el dispositivo | ✔️ | ✔️ |
Distribución | Docker de pila de llamas | Iniciar esta distribución |
---|---|---|
Metareferencia | llamastack/distribución-meta-referencia-gpu | Guía |
Meta referencia cuantificada | llamastack/distribución-meta-referencia-gpu-cuantizada | Guía |
Ollama | llamastack/distribución-ollama | Guía |
TGI | llamastack/distribución-tgi | Guía |
Juntos | llamastack/distribución-juntos | Guía |
Fuegos artificiales | llamastack/distribución-fuegos artificiales | Guía |
Tienes dos formas de instalar este repositorio:
Instalar como paquete : puede instalar el repositorio directamente desde PyPI ejecutando el siguiente comando:
instalación de pip llama-stack
Instalar desde el código fuente : si prefieres instalar desde el código fuente, sigue estos pasos:
mkdir -p ~/cd local ~/local git clone [email protected]:meta-llama/llama-stack.git conda crear -n pila python = 3.10 conda activar pila cd llama-stack $CONDA_PREFIX/bin/pip install -e .
Consulte nuestra página de documentación para obtener más detalles.
Referencia CLI
Guía sobre el uso de llama
CLI para trabajar con modelos de Llama (descarga, indicaciones de estudio) y creación/inicio de una distribución de Llama Stack.
Empezando
Guía rápida para iniciar un servidor Llama Stack.
Cuaderno de Jupyter para explicar cómo utilizar las API llama_stack_client de inferencia de visión y texto simple
El cuaderno completo de Colab de la lección Llama Stack del nuevo curso Llama 3.2 en Deeplearning.ai.
Una guía de cero a héroe que lo guiará a través de todos los componentes clave de llama stack con ejemplos de código.
Contribuyendo
Agregar un nuevo proveedor de API para ver cómo agregar un nuevo proveedor de API.
Idioma | SDK del cliente | Paquete |
---|---|---|
Pitón | llama-stack-cliente-python | |
Rápido | llama-stack-cliente-swift | |
Nodo | nodo-cliente-pila-llama | |
Kotlin | llama-stack-cliente-kotlin |
Consulte los SDK de nuestros clientes para conectarse al servidor Llama Stack en su idioma preferido. Puede elegir entre los lenguajes de programación Python, Node, Swift y Kotlin para crear rápidamente sus aplicaciones.
Puede encontrar más scripts de ejemplo con SDK de cliente para comunicarse con el servidor Llama Stack en nuestro repositorio llama-stack-apps.