Skip to main content

Modular Python tool library for AI agents in Brazilian government applications

Project description

Agents4GovApps

Laboratory of Computational Intelligence (LABIC – ICMC/USP)

Overview

Agents4Gov is a research and development project from LABIC – Institute of Mathematics and Computer Sciences (ICMC/USP) focused on building LLM-based tools to support and modernize public sector services. The project emphasizes local Large Language Models (LLMs) for privacy, data anonymization, and the development and evaluation of tools for use in government and institutional environments.

Installation

# Base package
pip install agents4gov-apps

# With OpenML tools
pip install agents4gov-apps[openml]

# With browser-based tools (Lattes)
pip install agents4gov-apps[browser]

# With GNews collector
pip install agents4gov-apps[gnews]

Quick start

from agents4gov_apps import load_tool_instance
import json

# OpenAlex
tool = load_tool_instance("openalex_doi")
result = json.loads(tool.get_openalex_metadata_by_doi(doi="10.1038/s41586-021-03819-2"))

# GNews (async, with per-window progress log)
import asyncio, logging
from agents4gov_apps.gnews_collector import console_emitter
logging.basicConfig(level=logging.INFO)
tool = load_tool_instance("gnews_collector")
result = asyncio.run(tool.collect_general_news(
    query='"ICMC USP"',
    start_year_month="2023-01",
    end_year_month="2024-12",
    __event_emitter__=console_emitter(),
))

Research pipelines

End-to-end scripts that drive the bundled tools for concrete research tasks. They use only the public API (load_tool_instance + the tool's documented methods) so they keep working with any pip install agents4gov-apps version.

Gender-violence news monitoring (10-year window)

Crawls Brazilian Portuguese news for a curated list of gender-violence queries (read from an Excel file with query + categoria da query columns), then produces initial indicators: frequency by category over time, top publishers, spike detection.

Pipeline files (under scripts/):

  • collect_violencia_genero.py — drives gnews_collector.collect_general_news one query at a time across monthly windows. Idempotent (skips parquets already on disk via the library's built-in checkpoint), supports SerpAPI primary + gnews fallback, and exports an Excel workbook with one sheet per category.
  • analyze_violencia_genero.py — reads the parquets, joins the category from the queries Excel, and writes a report workbook with freq_yearly, freq_monthly, top_publishers, top_publishers_por_cat, and spikes sheets, plus optional PNG/SVG plots.

Usage:

pip install agents4gov-apps[gnews] openpyxl python-dotenv matplotlib

# 1) Smoke test (one query, one month)
SERPAPI_KEY=... python3 scripts/collect_violencia_genero.py \
    --auto-fallback --limit-queries 1 --start 2024-01 --end 2024-01

# 2) Full collection (81 queries × 121 months, ~10-14h on SerpAPI)
SERPAPI_KEY=... python3 scripts/collect_violencia_genero.py --auto-fallback \
    2>&1 | tee collect.log

# 3) Indicators
python3 scripts/analyze_violencia_genero.py \
    --output-dir ./gnews_output_violencia_genero \
    --queries-xlsx ./gnews_queries_violencia_genero.xlsx

The collector is resumable — interrupt with Ctrl+C and re-run; it skips every window whose parquet is already on disk.

Adapt the same shape to other query sets by replacing the Excel file (any two-column query + categoria da query workbook works).

Documentation

  • Developer Guide — architecture, standard interface, how to create and use tools across Open WebUI, LangChain, OpenAI, and other frameworks
  • Tool Protocol — quick-reference packaging contract
  • Available Tools — full list of tools with source links

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

agents4gov_apps-0.2.0.tar.gz (65.5 kB view details)

Uploaded Source

Built Distribution

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

agents4gov_apps-0.2.0-py3-none-any.whl (45.8 kB view details)

Uploaded Python 3

File details

Details for the file agents4gov_apps-0.2.0.tar.gz.

File metadata

  • Download URL: agents4gov_apps-0.2.0.tar.gz
  • Upload date:
  • Size: 65.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for agents4gov_apps-0.2.0.tar.gz
Algorithm Hash digest
SHA256 66686d7e0467cb4c9e21faf62355d32676bd6b69f0d1a224866ea0f7010a6aaf
MD5 b9e0c5d1ca1e6d024c40d6c7e7fe789c
BLAKE2b-256 7c488ad79df867518268d0c86d5c4f23dd88f2229ba536f2cf2fddd9abb2c52f

See more details on using hashes here.

Provenance

The following attestation bundles were made for agents4gov_apps-0.2.0.tar.gz:

Publisher: publish.yml on Labic-ICMC-USP/Agents4GovApps

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agents4gov_apps-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: agents4gov_apps-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 45.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for agents4gov_apps-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f61a9eed8481e12cac25ae1e747006c4c2e5e6d3e38e2dc4b1383f706ad03afd
MD5 2c38b08c806ae44d9bff01dddfcbdc2f
BLAKE2b-256 feec7680fd6207776c1a9dd21a9e968f4ec4710ae258990481588c4221977cd3

See more details on using hashes here.

Provenance

The following attestation bundles were made for agents4gov_apps-0.2.0-py3-none-any.whl:

Publisher: publish.yml on Labic-ICMC-USP/Agents4GovApps

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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