Descripción general de LiteRT-LM

LiteRT-LM es un framework de inferencia de código abierto listo para producción diseñado para ofrecer implementaciones de LLM de alto rendimiento y multiplataforma en dispositivos perimetrales.

  • Compatibilidad multiplataforma: Se ejecuta en Android, iOS, la Web, computadoras de escritorio y IoT (p.ej., Raspberry Pi).
  • Aceleración de hardware: Obtén el máximo rendimiento y la estabilidad del sistema aprovechando los aceleradores de GPU y NPU en diversos hardware.
  • Multimodalidad: Compila con LLMs que tienen compatibilidad con visión y audio.
  • Uso de herramientas: Compatibilidad con llamadas a funciones para flujos de trabajo de agentes con decodificación restringida para mejorar la precisión.
  • Amplia compatibilidad con modelos: Ejecuta Gemma, Llama, Phi-4, Qwen y mucho más.

Demostración de IA generativa integrada en el dispositivo

Captura de pantalla de la galería de Google AI Edge

La Galería de Google AI Edge es una app experimental diseñada para mostrar las capacidades de IA generativa integrada en el dispositivo que se ejecutan por completo sin conexión con LiteRT-LM.

Perfil del dispositivo Modo Completado previamente (tk/s) Decode (tk/s)
MacBook Pro 2023 M3 CPU 233 28
MacBook Pro 2024 M4 GPU 2265 48
Samsung S24 (Ultra) CPU 111 16
GPU 816 16

Comienza a desarrollar

En los siguientes fragmentos, se muestra cómo comenzar a usar la CLI de LiteRT-LM, así como las APIs de Python, Kotlin y C++.

CLI

litert-lm run model.litertlm --prompt="What is the capital of France?"

Python

engine = litert_lm.Engine("model.litertlm")

with engine.create_conversation() as conversation:
    response = conversation.send_message("What is the capital of France?")
    print(f"Response: {response['content'][0]['text']}")

Kotlin

val engineConfig = EngineConfig(
    modelPath = "/path/to/your/model.litertlm",
    backend = Backend.CPU(),
)

val engine = Engine(engineConfig)
engine.initialize()

val conversation = engine.createConversation()
print(conversation.sendMessage("What is the capital of France?"))  

C++

auto model_assets = ModelAssets::Create(model_path);
CHECK_OK(model_assets);

auto engine_settings = EngineSettings::CreateDefault(
    model_assets,
    /*backend=*/litert::lm::Backend::CPU);

absl::StatusOr<std::unique_ptr<Engine>> engine = Engine::CreateEngine(engine_settings);
CHECK_OK(engine);

auto conversation_config = ConversationConfig::CreateDefault(**engine);
CHECK_OK(conversation_config);
absl::StatusOr<std::unique_ptr<Conversation>> conversation = Conversation::Create(**engine, *conversation_config);
CHECK_OK(conversation);

absl::StatusOr<Message> model_message = (*conversation)->SendMessage(
    JsonMessage{
        {"role", "user"},
        {"content", "What is the capital of France?"}
    });
CHECK_OK(model_message);

std::cout << *model_message << std::endl;
Idioma Estado Ideal para... Documentación
CLI 🚀
Versión preliminar anticipada
Comienza a usar LiteRT-LM en menos de 1 minuto. Guía de la CLI
Python
Estable
Prototipado y desarrollo rápidos en computadoras de escritorio y Raspberry Pi. Guía de Python
Kotlin
Estable
Apps nativas para Android y herramientas de escritorio basadas en JVM. Optimizado para corrutinas. Guía de Kotlin
C++
Estable
Lógica central multiplataforma de alto rendimiento y sistemas integrados. Guía de C++
Swift 🚀
En desarrollo
Integración nativa de iOS y macOS con compatibilidad especializada con Metal. Próximamente

Plataformas y backends compatibles

Aceleración Android iOS macOS Windows Linux IoT
CPU
GPU -
NPU - - - - -

Modelos compatibles

En la siguiente tabla, se enumeran los modelos compatibles con LiteRT-LM. Para obtener números de rendimiento y tarjetas de modelo más detallados, visita la comunidad de LiteRT en Hugging Face.

Modelo Tipo Tamaño (MB) Vínculo de descarga Dispositivo Completado previamente de CPU (tk/s) Decode de CPU (tk/s) Completado previamente de GPU (tk/s) Decode de GPU (tk/s)
Gemma3-1B Chat 1005 Tarjeta de modelo Samsung S24 Ultra 177 33 1,191 24
Gemma-3n-E2B Chat 2965 Tarjeta de modelo MacBook Pro M3 233 28 - -
Samsung S24 Ultra 111 16 816 16
Gemma-3n-E4B Chat 4235 Tarjeta de modelo MacBook Pro M3 170 20 - -
Samsung S24 Ultra 74 9 548 9
FunctionGemma Base 289 Tarjeta de modelo Samsung S25 Ultra 2238 154 - -
phi-4-mini Chat 3906 Tarjeta de modelo Samsung S24 Ultra 67 7 314 10
Qwen2.5-1.5B Chat 1598 Tarjeta de modelo Samsung S25 Ultra 298 34 1668 31
Qwen3-0.6B Chat 586 Tarjeta de modelo Vivo X300 Pro 165 9 580 21
Qwen2.5-0.5B Chat 521 Tarjeta de modelo Samsung S24 Ultra 251 30 - -

Informar problemas

Si encuentras un error o tienes una solicitud de función, infórmalo en Problemas de LiteRT-LM en GitHub.