feat(tracking): integrate changes need for the rllm-ui#402
Merged
Conversation
- Add UILogger and TeeStream classes for sending metrics, episodes, trajectory groups, and stdout/stderr to rllm-ui backend - Add heartbeat daemon thread (30s interval) for server-side crash detection via stale heartbeat timeout - Add source_extraction utility for extracting workflow/agent source - Wire UILogger into Tracking class as "ui" backend - Pass source_metadata and episodes/trajectory_groups from unified trainer to logger - Add [ui] optional dependency (httpx, python-multipart)
- Use Episode.to_dict() instead of manual dict construction - Strip heavy step fields (prompt_ids, logprobs, etc.) for lighter payloads - Remove unused _serialize_trajectory method - Drop unused correct_count/total_count from trajectory group data - Fix metadata episode_id construction using task_id:rollout_idx
- Read RLLM_UI_API_KEY env var and attach as X-API-Key header
- Auto-default to https://api.rllm-project.com when RLLM_API_KEY is set - Fall back to http://localhost:3000 when no API key is configured - RLLM_UI_URL still takes priority when explicitly set
- Replace api.rllm-project.com with ui.rllm-project.com in UILogger
- Add rllm-ui.md with Features, Cloud Setup, and Self-hosted Setup - Remove redundant env var sections; each setup path is self-contained - Move Database and AI Agent under Self-hosted as subsections - Add architecture diagram asset - Add rLLM UI nav entry to mkdocs.yml
38e8d3e to
cd820d9
Compare
Collaborator
|
Looks good for me, also thanks for the great doc @Chanbinski |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
UILoggeras a new"ui"backend forTracking, sending metrics, episodes, trajectory groups, and stdout/stderr logs to the rllm-ui server via HTTPsource_extractionutility to extract workflow/agent/reward source code and sent it to rllm-uiTeeStreamto capture stdout/stderr without disrupting terminal outputsource_metadataandepisodes/trajectory_groupsthroughunified_trainer→Tracking.log()→UILogger[ui]optional dependency (httpx,python-multipart)RLLM_API_KEYsupport for authenticating training data ingestion to the cloud server (sent as X-API-Key header). WhenRLLM_API_KEYis set,RLLM_UI_URLdefaults tohttps://api.rllm-project.com/; otherwise it defaults tohttp://localhost:3000for local dev.Usage
Then add "ui" to the trainer's logger list in the Hydra config.