Skip to main content

A collection of different transformer-based RL agents.

Project description

alectors

alectors is a library providing transformer-based rl agents for nlp tasks, that is extremely customizable, but also comes with sane defaults.

source code: erga.apotheke.earth/aethrvmn/alectors

license: Source First License 1.1
learn more about sourcefirst here

Why "alectors"?

The word lector has deep roots in language and learning. Derived from the Latin legere ("to read"), it originally referred to someone who reads aloud—whether to an audience, to students, or in religious ceremonies. Throughout history, lectors played a vital role as intermediaries between text and audience. In medieval times, a lector was a scholar who interpreted sacred or philosophical texts. In cigar factories of the 19th century, lectors read newspapers and novels aloud to entertain workers, bridging knowledge and communication. Even today, in languages like Greek (λέκτορας), English (lecturer), French (lecteur), and Polish (lektor), the term retains its connection to reading and narration.

In many ways, an NLP agent is a modern lector; processing, interpreting, and generating language to make text more accessible, structured, and meaningful. Just as historical lectors gave voice to the written word, these agents bring understanding and coherence to natural language.

However, adding the prefix a- changes the word's meaning entirely. alector (ἀλέκτωρ) means "cock" (rooster) in Greek. I find the juxtaposition funny, hence the name.

Reasoning

Modern NLP solutions like GPTs and BERTs have made great strides in language processing and generation, however they come with serious limitations. As an example, even though a large language model can describe or make a game of chess, and even justify moves made, it is unable to play it, since there is no underlying mechanism for decision-making or reward incentives during training. Transformers rely on static token distributions without real-time feedback, limiting their capacity to actively learn.

alectors tries to address this gap by shifting the focus to active learning through reinforcement. An alector doesn’t just passively learn to generate language; it learns through interaction.

Supported Architectures

The currently supported architecture is PPO. Plans exist to include SAC, GRPO, and maybe DDQN.

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

alectors-1.1.1.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

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

alectors-1.1.1-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

Details for the file alectors-1.1.1.tar.gz.

File metadata

  • Download URL: alectors-1.1.1.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.13.2 Linux/6.13.7-200.fc41.x86_64

File hashes

Hashes for alectors-1.1.1.tar.gz
Algorithm Hash digest
SHA256 b18f757c0d063e7d76eeaadff57846d99a006a6d3ae6e90cbacb37c61b6ecb11
MD5 1096d8b6c72b9a067e3818365521e414
BLAKE2b-256 55a5f21c6bc0232c2b20c628fe95381372f6b95c114784de1a06bd68b07f813e

See more details on using hashes here.

File details

Details for the file alectors-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: alectors-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 14.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.13.2 Linux/6.13.7-200.fc41.x86_64

File hashes

Hashes for alectors-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a3e8fc2847b037e019055a34e0f436ba7229769349e2cb7d5ed2e2c08c441dae
MD5 1345c7277a7042c971058982314c6c26
BLAKE2b-256 27fcf4d3671babc62709122b8f03450f8876b54dbc4361b02d3d0294aee8604f

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