- AICI - Artificial Intelligence Controller Interface
- Permite criar controladores que restringem e instruem a saída de grandes modelos de linguagem (LLMs) em tempo real
- Os controladores permitem decodificação restrita, edição dinâmica de prompts e do texto gerado, e coordenação entre gerações paralelas
- Os controladores integram lógica personalizada durante a decodificação token a token e mantêm estado ao longo da solicitação ao LLM
- O objetivo do AICI é permitir criar e experimentar com facilidade estratégias de controle existentes e novas
- Ao abstrair os detalhes de implementação dos mecanismos subjacentes de inferência e serving de LLMs
- simplificar o desenvolvimento de controladores,
- facilitar a escrita de controladores rápidos, e
- tornar mais fácil a compatibilidade entre mecanismos de inferência e serving de LLMs
- O AICI foi projetado (eventualmente) para execução local e em nuvem, incluindo implantações multi-tenant de LLMs
- Os controladores são implementados como módulos leves de WebAssembly (Wasm) executados no mesmo sistema que o mecanismo de inferência de LLM, usando a CPU enquanto a GPU está ocupada gerando tokens
- O AICI é uma camada da pilha de inferência, projetada para que bibliotecas de controle como Guidance, LMQL e outras rodem sobre ele e obtenham tanto portabilidade entre mecanismos de inferência e serviço de LLM quanto ganhos de eficiência e desempenho
- O AICI é
- flexível: os controladores podem ser escritos em qualquer linguagem que possa ser compilada para Wasm (Rust, C, C++, ...) ou interpretada dentro de Wasm (Python, JavaScript, ...)
- seguro: os controladores são executados em sandbox e não podem acessar o sistema de arquivos, a rede ou outros recursos
- rápido: os módulos Wasm são compilados para código nativo e executados em paralelo com o mecanismo de inferência de LLM, gerando apenas um overhead mínimo no processo de geração
- Protótipo projetado e desenvolvido pelo Microsoft Research
Ainda não há comentários.