Instalação¶
llama-crab é distribuído no crates.io
e também pode ser compilado a partir de um checkout do Git. As
features padrão compilam o backend CPU (OpenMP) e — em Apple Silicon —
Metal, então a maioria dos usuários pode adicionar a dependência
e começar a compilar.
1. Adicione a dependência¶
Fixe a versão do llama.cpp
O crate fixa o llama.cpp em um commit específico, então dois
builds da mesma versão de llama-crab sempre produzem a mesma
biblioteca nativa. Você pode ver o commit fixado no badge do
README ou através de cargo tree -p llama-crab-sys.
2. Escolha um backend¶
As features padrão lhe dão um binário funcional nas plataformas mais comuns, mas em produção você quase sempre quer ser explícito:
Veja a referência de features do Cargo para a lista completa de features e o que cada uma ativa.
3. Requisitos do sistema¶
O script de build compila o llama.cpp a partir do código-fonte.
Certifique-se de que o seguinte está disponível antes de rodar
cargo build:
O primeiro build é lento
Compilar todos os backends do llama.cpp leva ~3 minutos em uma máquina de 16 cores na primeira vez. Builds subsequentes ficam em cache. Para reduzir o build a frio, desabilite os backends que você não precisa — veja o passo 2.
4. Verifique a toolchain¶
Após a instalação, rode um cargo build rápido para garantir que
o CMake, o compilador e a biblioteca padrão C++ estão todos
acessíveis:
cargo new hello-crab --bin
cd hello-crab
# Adicione a dependência mostrada no passo 1, depois:
cargo build --release
Um build bem-sucedido imprime algo como:
Compiling llama-crab-sys v0.1.300 (...)
Compiling llama-crab v0.1.300 (...)
Finished `release` profile [optimized] [..]
Você está pronto para escrever seu primeiro programa.
Opcional: baixe um modelo¶
O resto do guia assume que você tem um arquivo GGUF no disco. A maneira mais fácil de obter um que sabemos que funciona é o script helper:
Veja scripts/download_models.sh
para a lista completa de alvos suportados.
Próximos passos¶
- Siga o Seu primeiro programa — um
main.rsde 50 linhas que exercita os caminhos mais comuns. - Dê uma olhada na referência de features do Cargo para saber o que vem habilitado por padrão e o que ativar para seu alvo.
- Vá direto para um guia de funcionalidade que combine com o que você quer construir.