frondori-engine
Le contrat commun des environnements de recherche de Frondori, au format PettingZoo.
Ce paquet ne contient aucun environnement. Chacun est un paquet à part, dans son propre dépôt, qu'on installe seulement s'il nous intéresse :
| Paquet | Environnement |
|---|---|
frondori-football |
football-v0 — football 2D, duel (moteur Rust) |
frondori-kitchen |
kitchen-v0 — cuisine coopérative |
Installation
pip install frondori-engine frondori-kitchen
(Pas encore publiés sur PyPI : depuis un clone, pip install -e . dans
chaque dépôt.)
Utilisation
import frondori_engine
print(frondori_engine.registered_ids()) # les environnements installés
env = frondori_engine.make("kitchen-v0") # un pettingzoo.ParallelEnv
observations, infos = env.reset(seed=42)
while env.agents:
actions = {agent: env.action_space(agent).sample() for agent in env.agents}
observations, rewards, terminations, truncations, infos = env.step(actions)
Sans serveur, sans réseau, sans token. Compatible avec l'écosystème qui parle
PettingZoo (RLlib, TorchRL, CleanRL, SuperSuit...). Pour jouer un match en
local dans les conditions de la compétition, ou contre d'autres agents sur
le serveur, voir le SDK (frondori-sdk) : Agent(..., local=True).
Ce que contient ce paquet
frondori_engine.make/registered_ids/register: le registre. Les environnements installés sont découverts automatiquement par leur entry point (groupefrondori.environments).frondori_engine.scene: le format de rendu commun (render_mode="scene").frondori_engine.wire: le format des spaces et des valeurs sur le réseau.frondori_engine.worker: exécute un environnement pour le serveur de compétition (un processus par match).frondori_engine.testing: les tests du contrat, à appeler depuis les tests de chaque environnement (check_environment("mon-jeu-v0")).
Créer un environnement
Un paquet Python qui dépend de frondori-engine et se déclare dans son
pyproject.toml :
[project.entry-points."frondori.environments"]
"mon-jeu-v0" = "mon_paquet:MonJeuEnv"
Guide complet, avec un exemple vérifié : Documentation > Create an
Environment, sur le site. L'exemple de ce guide (tests/rps.py) sert aussi
d'environnement de test à ce paquet.
Développer / tester
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
python -m pytest
Publier une version
- Mettre à jour
versiondanspyproject.tomlet commiter. - Pousser un tag du même numéro :
git tag v0.1.0 && git push origin v0.1.0.
La CI (.github/workflows/ci.yml) teste, construit et publie sur PyPI ; elle
refuse un tag qui ne correspond pas à la version. Publication par Trusted
Publishing, sans token : à configurer une fois sur PyPI (projet frondori-engine >
Publishing > trusted publisher GitHub : ce dépôt, workflow ci.yml,
environnement pypi).
À publier EN PREMIER : les environnements et le SDK en dépendent.
Licence : MIT.
Metadata
Release files for frondori-engine 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| frondori_engine-0.4.0.tar.gz | 15.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| frondori_engine-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.4 kB
Release files / frondori_engine-0.4.0.tar.gz
| Download URL | frondori_engine-0.4.0.tar.gz |
|---|---|
| Size | 15.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3ccc5668eb7a1ceb4796e3a5f8027f5ebcfe45ea13fa244ae60ae9860c95f999
|
|
BLAKE2b-256 checksum How to use checksums |
af90d1a943cb693d5063362ef6ce15c9addb48f4d40feac225a92161010f7324
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency logRelease files / frondori_engine-0.4.0-py3-none-any.whl
| Download URL | frondori_engine-0.4.0-py3-none-any.whl |
|---|---|
| Size | 13.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e4e4966f1aa731b0a1ec647dca40fa3b24cd0c0d12dab460272cacf2a8dbb5f5
|
|
BLAKE2b-256 checksum How to use checksums |
c290049f302e31eff076529d9ac593a6e76e3d5919052956272440f79cbaa32e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.
Transparency log