Skip to main content

AG2 agent development kit using Ollama and Firecrawl scraping.

Project description

Gemma Firecrawl Agent

Small Python ADK-style scaffold for an AG2 agent that talks to a local Ollama model and can call Firecrawl to scrape web pages into LLM-ready text.

Setup

After this project is published to PyPI:

pip install gemma-firecrawl-agent

For local development from source:

python -m venv .venv
source .venv/bin/activate
pip install -e .
cp .env.example .env

Edit .env:

FIRECRAWL_API_KEY=fc-your-key
OLLAMA_MODEL=gemma3:4b
OLLAMA_VLM_MODEL=qwen3-vl:8b
OLLAMA_HOST=http://127.0.0.1:11434
LLAMA_CPP_MODEL=llama-cpp
LLAMA_CPP_BASE_URL=http://127.0.0.1:8080/v1
LLAMA_CPP_API_KEY=sk-no-key-required

Make sure Ollama is running and the model is pulled:

ollama pull gemma3:4b
ollama pull qwen3-vl:8b
ollama serve

Run

gemma-firecrawl-agent "Scrape https://example.com and summarize the page."

Use the VLM provider profile:

gemma-firecrawl-agent --provider vlm "Scrape https://example.com and summarize the page."

Use a local llama.cpp server:

llama-server -m /path/to/model.gguf --host 127.0.0.1 --port 8080
gemma-firecrawl-agent --provider llama-cpp "Scrape https://example.com and summarize the page."

Use structured output when you want a JSON object:

gemma-firecrawl-agent --structured "Scrape https://example.com and summarize the page."

Structured output also works with the VLM provider:

gemma-firecrawl-agent --provider vlm --structured "Scrape https://example.com and summarize the page."

And with llama.cpp:

gemma-firecrawl-agent --provider llama-cpp --structured "Scrape https://example.com and summarize the page."

Sample structured output shape:

{
  "title": "Short page or task title",
  "url": "https://example.com",
  "summary": "One concise paragraph.",
  "key_points": [
    "First important point",
    "Second important point"
  ],
  "source_status": "scraped"
}

Print the sample shape from the CLI:

gemma-firecrawl-agent --show-structured-shape

You can also run the module directly:

python -m gemma_firecrawl_agent.cli "Scrape https://example.com and list the key facts."

Publishing

Release steps live in PUBLISHING.md. The short version is:

pip install -e ".[dev]"
python -m build
python -m twine check dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gemma_firecrawl_agent-0.1.0.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gemma_firecrawl_agent-0.1.0-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file gemma_firecrawl_agent-0.1.0.tar.gz.

File metadata

  • Download URL: gemma_firecrawl_agent-0.1.0.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for gemma_firecrawl_agent-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9c1cdcc5b97a31820fb7441e6b098e304095473efe623eebf6d515d485676233
MD5 86bd4c63d72cb23f96bb7b0684cf15bd
BLAKE2b-256 92e5f8f00f69d925b2b3d390270e1eb7046c72e7d8c1da2b955ec91f72a6ab03

See more details on using hashes here.

File details

Details for the file gemma_firecrawl_agent-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for gemma_firecrawl_agent-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b2859becae40a32045f6f333d8a41db92343e85910d72a0623117cd7a367c0ac
MD5 85af8f0e3a78cfac46aeec6b29ad2fdd
BLAKE2b-256 8c6ffd76ce058b601a9336459dd8bf095c0cc3bdeb6ec61542cf7709ca59debd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page