Introdução geral
O LlamaEdge é um projeto de código aberto desenvolvido para simplificar o processo de execução e ajuste fino de LLMs (Large Language Models) em dispositivos locais ou de borda. O projeto é compatível com a família de modelos Llama2 e oferece serviços de API compatíveis com OpenAI que permitem aos usuários criar e executar facilmente aplicativos de raciocínio LLM. O LlamaEdge aproveita as pilhas de tecnologia Rust e Wasm para oferecer alternativas eficientes para o raciocínio de IA. Os usuários podem colocar os modelos em funcionamento rapidamente com operações simples de linha de comando e podem ajustá-los e ampliá-los conforme necessário.
Lista de funções
- Executando o LLM localmenteSuporte para a execução de modelos da série Llama2 em dispositivos locais ou de borda.
- Serviços de API compatíveis com OpenAIAPI OpenAI: fornece pontos de extremidade de serviço compatíveis com a API OpenAI que oferecem suporte a bate-papo, conversão de fala em texto, conversão de texto em fala, geração de imagens e muito mais.
- Suporte a várias plataformasSuporte a uma ampla variedade de dispositivos de CPU e GPU e fornece aplicativos Wasm multiplataforma.
- Início rápidoModelos: Os modelos podem ser baixados e executados rapidamente por meio de operações simples de linha de comando.
- Ajuste fino e expansãoOs usuários podem modificar e estender o código-fonte conforme necessário para atender a necessidades específicas.
- Documentação e tutoriaisDocumentação oficial detalhada e tutoriais são fornecidos para ajudar os usuários a começar rapidamente.
Usando a Ajuda
Processo de instalação
- Instalação do WasmEdge: Em primeiro lugar, você precisa instalar o WasmEdge, o que pode ser feito por meio da seguinte linha de comando:
curl -sSf https://raw.githubusercontent.com/WasmEdge/WasmEdge/master/utils/install_v2.sh | bash
- Faça o download dos arquivos do modelo LLMExemplo: Pegue o modelo Meta Llama 3.2 1B como exemplo e faça o download usando o seguinte comando:
curl -LO https://huggingface.co/second-state/Llama-3.2-1B-Instruct-GGUF/resolve/main/Llama-3.2-1B-Instruct-Q5_K_M.gguf
- Baixar o aplicativo de bate-papo CLI do LlamaEdgeUse o seguinte comando para baixar o aplicativo Wasm de plataforma cruzada:
curl -LO https://github.com/second-state/LlamaEdge/releases/latest/download/llama-chat.wasm
- Executar o aplicativo de bate-papoUse o seguinte comando para conversar com o LLM:
wasmedge --dir . :. --nn-preload default:GGML:AUTO:Llama-3.2-1B-Instruct-Q5_K_M.gguf llama-chat.wasm -p llama-3-chat
Função Fluxo de operação
- Iniciando o serviço de APIO serviço de API pode ser iniciado com o seguinte comando:
wasmedge --dir . :. --env API_KEY=sua_chave_api llama-api-server.wasmedge ---model-name llama-3.2-1B --prompt-template llama-chat --reverse-prompt "[INST]" --ctx- tamanho 32000
- Interagir com o LLM usando a interface da WebApós iniciar o serviço de API, você pode interagir com o LLM local por meio da interface da Web.
- Criação de serviços de API personalizadosEndpoints de serviços de API personalizados podem ser criados conforme necessário, como conversão de fala em texto, conversão de texto em fala, geração de imagens e assim por diante.
- Ajuste fino e expansãoOs usuários podem modificar os arquivos de configuração e os parâmetros no código-fonte para atender a requisitos funcionais específicos.
LlamaEdge Execução rápida da destilação em um laptop DeepSeek-R1
O DeepSeek-R1 é um modelo de IA avançado e versátil que desafia participantes estabelecidos, como a OpenAI, com seus recursos avançados de inferência, custo-benefício e disponibilidade de código aberto. Embora tenha algumas limitações, sua abordagem inovadora e seu desempenho robusto fazem dele uma ferramenta inestimável para desenvolvedores, pesquisadores e empresas. Para os interessados em explorar seus recursos, o modelo e sua versão lite estão disponíveis em plataformas como Hugging Face e GitHub.
Treinado por uma equipe chinesa com restrições de GPU, ele é excelente em matemática, codificação e até mesmo em raciocínio bastante complexo. O mais interessante é que ele é um modelo "lite", o que significa que é menor e mais eficiente do que o modelo gigante no qual se baseia. Isso é importante porque torna mais prático para as pessoas usá-lo e construí-lo de fato.
Neste artigo, apresentaremos
- Como executar código aberto em seu próprio dispositivo DeepSeek modelagem
- Como criar um serviço de API compatível com OpenAI usando o modelo DeepSeek mais recente
Usaremos o LlamaEdge (pilha de tecnologia Rust + Wasm) para desenvolver e implantar aplicativos para esse modelo. Não há necessidade de instalar pacotes Python complexos ou cadeias de ferramentas C++! Saiba por que escolhemos essa tecnologia.
Execute o modelo DeepSeek-R1-Distill-Llama-8B em seu próprio equipamento!
Etapa 1: Instale o WasmEge por meio da seguinte linha de comando.
curl -sSf https://raw.githubusercontent.com/WasmEdge/WasmEdge/master/utils/install_v2.sh | bash -s -- -v 0.14.1
Etapa 2: Faça o download do arquivo do modelo DeepSeek-R1-Distill-Llama-8B-GGUF quantificado.
Isso pode levar algum tempo, pois o tamanho do modelo é de 5,73 GB.
curl -LO https://huggingface.co/second-state/DeepSeek-R1-Distill-Llama-8B-GGUF/resolve/main/DeepSeek-R1-Distill-Llama-8B-Q5_K_M.gguf `
Etapa 3: Faça o download do aplicativo do servidor LlamaEdge API.
Ele também é um aplicativo Wasm portátil e multiplataforma que é executado em vários dispositivos de CPU e GPU.
curl -LO https://github.com/LlamaEdge/LlamaEdge/releases/latest/download/llama-api-server.wasm
Etapa 4: Faça o download da interface do usuário do chatbot
para interagir com o modelo DeepSeek-R1-Distill-Llama-8B em um navegador.
curl -LO https://github.com/LlamaEdge/chatbot-ui/releases/latest/download/chatbot-ui.tar.gz tar xzf chatbot-ui.tar.gz rm chatbot-ui.tar.gz
Em seguida, inicie o servidor da API do LlamaEdge usando o seguinte modelo de comportamento de comando.
wasmedge --dir . :. --nn-preload default:GGML:AUTO:DeepSeek-R1-Distill-Llama-8B-Q5_K_M.gguf \ llama-api-server.wasm \ --prompt-template llama-3-chat \ --ctx-size 8096
Em seguida, abra seu navegador e acesse http://localhost:8080 para começar a conversar! Ou você pode enviar uma solicitação de API para o modelo.
curl -X POST http://localhost:8080/v1/chat/completions \ -H 'accept:application/json' \\ -H 'Content-Type: application/json' \\\ -d '{"messages":[{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "What is the capital of France?"}], " model": "DeepSeek-R1-Distill-Llama-8B"}' {"id": "chatcmpl-68158f69-8577-4da2-a24b-ae8614f88fea", "object": "chat.completion", "created":1737533170, "model": "default", "choices". [{"index":0, "message":{"content": "A capital da França é Paris.\n\n\nA capital da França é Paris.", "role":" assistente"}, "finish_reason": "stop", "logprobs":null}], "usage":{"prompt_tokens":34, "completion_tokens":18, "total_tokens":52}}
Criação de serviços de API compatíveis com OpenAI para DeepSeek-R1-Distill-Llama-8B
O LlamaEdge é leve e não requer nenhum daemon ou processo sudo para ser executado. Ele pode ser facilmente incorporado em seus próprios aplicativos! Com suporte para bate-papo e modelos de incorporação, o LlamaEdge pode ser uma alternativa à API OpenAI dentro de aplicativos em sua máquina local!
Em seguida, mostraremos como adicionar uma nova função ao DeepSeek-R1 e o modelo de incorporação para iniciar o servidor de API completo. O servidor de API terá o modelo chat/complementos
responder cantando incorporações
Pontos de extremidade. Além das etapas da seção anterior, precisamos:
Etapa 5: Faça o download do modelo de incorporação.
curl -LO https://huggingface.co/second-state/Nomic-embed-text-v1.5-Embedding-GGUF/resolve/main/nomic-embed-text-v1.5.f16.gguf
Em seguida, podemos iniciar o servidor da API do LlamaEdge com modelos de bate-papo e incorporação usando a seguinte linha de comando. Para obter instruções mais detalhadas, consulte a documentação - Starting the LlamaEdge API Service (Iniciando o serviço da API do LlamaEdge).
wasmedge --dir . :. \ --nn-preload default:GGML:AUTO:DeepSeek-R1-Distill-Llama-8B-Q5_K_M.gguf \ --nn-preload embedding:GGML:AUTO:nomic-embed-text-v1.5.f16.gguf \ llama-api-server.wasm -p llama-3-chat,embedding \ --model-name DeepSeek-R1-Distill-Llama-8B,nomic-embed-text-v1.5.f16 \ --ctx-size 8192,8192 \ ---tamanho do lote 128,8192 \ --log-prompts --log-stat
Por fim, você pode seguir estes tutoriais para integrar o servidor de API do LlamaEdge a outras estruturas de agente como substituto do OpenAI. Especificamente, substitua a API do OpenAI pelos seguintes valores na configuração do seu aplicativo ou agente.
Opção de configuração | (ter) valor |
---|---|
URL da API básica | http://localhost:8080/v1 |
Nome do modelo (modelo grande) | DeepSeek-R1-Distill-Llama-8B |
Nome do modelo (incorporação de texto) | incorporação nômica |
É isso aí! Visite o repositório do LlamaEdge agora e crie seu primeiro agente de IA! Se você achar interessante, marque nosso repositório aqui. Se tiver alguma dúvida sobre a execução desse modelo, acesse o repositório para fazer perguntas ou agende uma demonstração conosco para executar seu próprio LLM em todos os dispositivos!