Skip to main content

LLM plugin for iaedu.pt API — no adapter required

Project description

llm-iaedu

Plugin for LLM that enables using the iaedu.pt API as a model — no adapter, no Docker.

Quick Start

Linux / macOS

# Install
pip install llm-iaedu

# Configure credentials (Endpoint, API Key, Channel ID)
llm-iaedu configure

# Ask anything
llm -m iaedu "What is the capital of Portugal?"

Ubuntu / Debian (PEP 668)

Ubuntu 23.04+ blocks system-wide pip install. Use one of:

Option 1: pipx (if you already pipx install llm):

pipx inject llm llm-iaedu
# Configure credentials manually:
mkdir -p ~/.config/iaedu
cat > ~/.config/iaedu/env << EOF
IAEDU_ENDPOINT=https://api.iaedu.pt/agent-chat/api/v1/agent/YOUR-AGENT-ID/stream
IAEDU_CHANNEL_ID=your-channel-id
IAEDU_API_KEY=your-api-key
EOF
llm -m iaedu "What is the capital of Portugal?"

Option 2: Virtual environment:

python3 -m venv venv
source venv/bin/activate
pip install llm-iaedu
llm-iaedu configure
llm -m iaedu "What is the capital of Portugal?"

Option 3: From git clone:

git clone https://github.com/rodolfomatos/llm-iaedu.git
cd llm-iaedu
make ubuntu-setup   # shows instructions
make configure      # interactive credential setup
make check          # verify everything works

Setup

Quick (interactive)

# From git clone (has Makefile):
make configure

# From pip install (no repo):
llm-iaedu configure

Paste the three values from iaedu.pt (Endpoint URL, API Key, Channel ID) when prompted. The script creates ~/.config/iaedu/env with everything needed — works from any directory.

Manual

Create ~/.config/iaedu/env:

IAEDU_ENDPOINT=https://api.iaedu.pt/agent-chat/api/v1/agent/your-agent-id/stream
IAEDU_CHANNEL_ID=your-channel-id
IAEDU_API_KEY=your-api-key

Or place a .env in any project directory for local config.

Config Precedence

  1. Current shell (export IAEDU_*)
  2. ./.env (local)
  3. ~/.config/iaedu/env (global)
  4. ~/.iaedu.env (legacy)

Usage

# One-off
llm -m iaedu "What is the capital of Portugal?"

# Default model (just skip -m)
llm models default iaedu
llm "What is the capital of Portugal?"

# Interactive chat
llm chat -m iaedu

# Pipe input
cat file.txt | llm -m iaedu

Development

git clone https://github.com/rodolfomatos/llm-iaedu.git
cd llm-iaedu

# Standard
make setup
# ... or Ubuntu/Debian:
make ubuntu-setup
# ... or pipx:
make pipx-setup

make configure
make check

How it works

The plugin calls the iaedu.pt API directly — no adapter server required. It loads config from environment variables or .env files, sends prompts as multipart form data, and streams token responses.

Requirements

  • Python 3.8+
  • llm CLI
  • iaedu.pt account with API key, channel ID, and agent ID

Project

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

llm_iaedu-0.3.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

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

llm_iaedu-0.3-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file llm_iaedu-0.3.tar.gz.

File metadata

  • Download URL: llm_iaedu-0.3.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for llm_iaedu-0.3.tar.gz
Algorithm Hash digest
SHA256 244433603e247bc604386cb69665d8ac3a91e928059dba1e2ef019ea7078f104
MD5 e3b1a21a1161685dac435f7186b6b866
BLAKE2b-256 c5d2a128d849a9523e3afa779ae90d975a4dd549b9cf1d49c7efe700716634eb

See more details on using hashes here.

File details

Details for the file llm_iaedu-0.3-py3-none-any.whl.

File metadata

  • Download URL: llm_iaedu-0.3-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for llm_iaedu-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 76a2fe6f75efb59189953beb9ef934c71d2d291a670c0c269f5c1f5d6e2e148e
MD5 151b833a768a45f1ee5e02656034da5e
BLAKE2b-256 0c7ac0beda500f1f7fdf36312c7d37041d4af8bd40db0b68dc7b6af68138b79d

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