Pi Agent: Multi-Platform Deployment & llama.cpp

Última atualização: 2026-08-31

--- title: "Deploy Multi-Plataforma e llama.cpp" description: "Domine o deploy do Pi Agent em multiplas plataformas e configure llama.cpp para rodar modelos locais." order: 18 lang: pt-br

APIs em nuvem são convenientes mas caras; modelos locais são grátis mas precisam de configuração — esta lição cobre ambos.


1. Visão Geral de Deploy Multi-Plataforma

Plataforma Método Melhor Para
Desenvolvimento local Execução direta Desenvolvimento e depuração
Docker Containerização CI/CD, compartilhamento em equipe
Servidor em nuvem systemd/supervisor Produção
Serverless Funções em nuvem Chamadas de baixa frequência
Modelos locais llama.cpp/Ollama Privacidade, offline

2. Deploy de Desenvolvimento Local

(1) Ambiente Virtual

BASH
python -m venv .venv
source .venv/bin/activate  # macOS/Linux
# .venv\Scripts\activate   # Windows

pip install pi-agent

(2) Integração com Projeto

PYTHON
from pi_agent import Agent

agent = Agent(name="app_agent", config_file=".pi-agent.yaml")

def process_request(user_input: str) -> str:
    return agent.chat(user_input)

3. Deploy com Docker

(1) Dockerfile

DOCKERFILE
FROM python:3.11-slim

WORKDIR /app

COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY . .

ENV PI_DEEPSEEK_API_KEY=""
ENV PI_DEFAULT_PROVIDER=deepseek

CMD ["python", "agent_service.py"]

(2) docker-compose.yaml

YAML
version: "3.8"
services:
  pi-agent:
    build: .
    ports:
      - "8000:8000"
    environment:
      - PI_DEEPSEEK_API_KEY=${PI_DEEPSEEK_API_KEY}
    volumes:
      - ./sessions:/app/sessions
    restart: unless-stopped

4. Deploy em Servidor em Nuvem

INI
# /etc/systemd/system/pi-agent.service
[Unit]
Description=Pi Agent Service
After=network.target

[Service]
Type=simple
User=piagent
WorkingDirectory=/opt/pi-agent
Environment=PI_DEEPSEEK_API_KEY=sk-xxxxxxxx
ExecStart=/opt/pi-agent/.venv/bin/python agent_service.py
Restart=always

[Install]
WantedBy=multi-user.target

5. Modelos Locais com llama.cpp

(1) Instalar

BASH
# macOS
brew install llama.cpp

# Linux
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp && make

(2) Baixar Modelo

BASH
# Download GGUF format models from Hugging Face
wget https://huggingface.co/Qwen/Qwen2.5-7B-Instruct-GGUF/resolve/main/qwen2.5-7b-instruct-q4_k_m.gguf

(3) Configuração do Pi Agent

YAML
providers:
  local:
    type: llama_cpp
    model_path: "./models/qwen2.5-7b-instruct-q4_k_m.gguf"
    n_gpu_layers: -1
    n_ctx: 4096
    temperature: 0.7

default_provider: local

6. Integração com Ollama

(1) Instalar

BASH
curl -fsSL https://ollama.com/install.sh | sh

(2) Baixar Modelos

BASH
ollama pull qwen2.5:7b
ollama pull llama3:8b

(3) Configuração do Pi Agent

YAML
providers:
  ollama:
    type: ollama
    base_url: "http://localhost:11434"
    model: "qwen2.5:7b"

Exemplo: Comparação de Modelos Locais (Dificuldade: ⭐⭐)

PYTHON
from pi_agent import Agent

models = {
    "qwen2.5-7b": Agent(provider="ollama", model="qwen2.5:7b"),
    "llama3-8b": Agent(provider="ollama", model="llama3:8b"),
}

question = "Implement quicksort in Python"

for name, agent in models.items():
    print(f"=== {name} ===")
    result = agent.chat(question)
    print(result[:200])

❓ Perguntas Frequentes

P: Requisitos de hardware para modelos locais? R: Modelos 7B precisam de ~8GB RAM/VRAM, 13B precisam de ~16GB, 70B precisam de ~40GB+. Chips Apple M-series têm bom desempenho. P: llama.cpp ou Ollama? R: Ollama é mais simples (um comando para rodar). llama.cpp é mais flexível (ajuste fino de parâmetros). Iniciantes devem usar Ollama. P: Gap de qualidade entre modelos locais e API? R: Modelos locais 7B têm ~70-80% da capacidade de modelos API. Gap menor para geração de código, maior para escrita criativa.


❓ Resumo


📝 Exercícios

  1. Básico (Dificuldade: ⭐): Faça deploy do Pi Agent com Docker, verifique que consegue conversar normalmente.
  2. Intermediário (Dificuldade: ⭐⭐): Instale Ollama, baixe um modelo, configure Pi Agent para inferência local.
  3. Avançado (Dificuldade: ⭐⭐⭐): Construa um deploy híbrido — perguntas simples via modelo local, complexas trocam automaticamente para API.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%