All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Orchestrator can now be launched with a grpc web proxy using the
COGMENT_WEB_PROXY_PORT
environment variable.- All grpc-web traffic recevied on that port will be forwarded to the orchestrator's actor service port.
- If the trial lifecycle service is on the same port as the actor service, both will be accessible via the proxy.
- Setting
COGMENT_ORCHESTRATOR_VARIANT=debug
will launch the orchestrator's debug executable.
- Change warning to debug for expected (under special circumstances) exeptions
- Properly manage forced termination of pending trials
- Stricter control of streams to limit gRPC problems
- Better management of config: differentiate between absence of config and empty config
-
Implement cogment api 2.0.0, in particular follow a new streaming model for actors & environments.
-
Rename environment variables
TRIAL_LIFECYCLE_PORT
,TRIAL_ACTOR_PORT
&PROMETHEUS_PORT
toCOGMENT_LIFECYCLE_PORT
,COGMENT_ACTOR_PORT
&COGMENT_ORCHESTRATOR_PROMETHEUS_PORT
. -
The
cogment.yaml
file is now optional and needs to be provided with the--params
command line argument or theCOGMENT_DEFAULT_PARAMS_FILE
environment variable, only thetrial_params
is take into account. -
Add the ability to provide a list of pretrial hook endpoints with the
--pre_trial_hooks
comand line argument or theCOGMENT_PRE_TRIAL_HOOKS
environment variable. -
Remove dependencies to easygrpc.
-
General refactor and cleanup.
- Add Prometheus metrics for trial garbage collection, trial duration and tick duration
- Add the ability to disable Prometheus server by setting its port to 0 in
PROMETHEUS_PORT
or with the--prometheus-port
CLI flag
- Fix several memory leaks that was causing the memory to grow with each trial execution
- Update copyright notice to use the legal name of AI Redefined Inc.
- Use strings everywhere for trial id
- Order of state recording in datalog sample (to be the state at the end of the tick).
- Cleanup logs and add trace logs
- Fix environment message sending (to only send when there are messages)
- Add SIGSEGV trapping and reporting
- Add log file output option
- Initial public release.
- Environment can now receive messages
- The parameter
max_steps
now works
- Add implementation for the GetTrialInfo function
- Fill in missing API data in the datalog
DatalogSample.TrialData
protobuf class - Fix timing problems causing various issues
- Fixed the problem where the last rewards from the environment would get to the actors too late
- Fixed the filling of DatalogSample (actions, rewards and messages were missing)
- Fixed one deadlock with actor responses
- Initial beta release, no more breaking changes should be introduced.
- Rename ActorClass
id
toname
- Technical release, updating dependencies to fixed versions.
- Log exporter is now available: trials param, observations, rewards, messages of every trials are sent to the log exporter service.
- Tick ID management centralized in orchestrator
- Watch trials is now supported
- Add support for messages and rewrads, they can be sent from the actor client.
- Addition for tls communication
- Add support for messages and rewrads, they can be sent from the actor client.
- Fix a crash occuring at the end of trials.
- Fix occasional crash when employing prehooks.
- Add support for messages, they can be sent between actors and the environment.
- Add dispatch of immediate rewards to actors.
- Fix the logging levels, making the default less verbose.
- Initial alpha release, expect some breaking changes.