BitTransformerLM / NEW_CODEX_TASK.md
WCNegentropy's picture
🤖 Updated BitTransformerLM from development space
36c78b1 verified
|
raw
history blame
3.6 kB

DEPRECATED

All tasks in this file have been implemented (Stages 1–5). The document remains for historical reference only.

Stage 1: Compression Algorithm Implementation

Task 1: Choose Compression Method

Prompt:

Codex: Provide a concise PyTorch-compatible implementation of lossless binary compression and decompression (e.g., RLE, Huffman, or LZ-based) suitable for binary input sequences represented as tensors of bits.

Task 2: Implement Compression Functions

Prompt:

Codex: Implement PyTorch functions compress_bits(input_tensor) and decompress_bits(compressed_tensor) that accept and return PyTorch tensors (dtype=torch.bool or torch.uint8). Ensure compress → decompress cycle perfectly reconstructs original data, and include simple unit tests.

Stage 2: Encoder/Decoder Integration

Task 3: Add Compression to Encoder Input

Prompt:

Codex: Modify BitTransformerLM’s input pipeline by wrapping the existing model forward pass with a forward_compressed(bits_tensor) method. This method should decompress incoming compressed bit tensors before embedding. Ensure it returns identical outputs as existing uncompressed inputs for verification.

Task 4: Add Decompression to Decoder Output

Prompt:

Codex: Implement a PyTorch-compatible function model_output_decompress(output_bits_tensor) to decompress bit sequences output by BitTransformerLM. Integrate this function as an optional post-processing step after the model’s bitstream generation.

Stage 3: Training and Evaluation Enhancements

Task 5: Toggle Compression During Training

Prompt:

Codex: Modify the existing training loop to randomly compress input bit sequences with a configurable probability (compress_prob=0.5). Ensure that when compression is on, inputs are compressed and decompressed transparently, and when off, inputs bypass compression.

Task 6: Evaluate Compressed vs Raw Performance

Prompt:

Codex: Extend the current training evaluation metrics to separately track loss, accuracy, and compression ratio for both compressed and raw sequences. Log these metrics clearly in the training output.

Stage 4: Advanced Integration (Optional)

Task 7: Multi-task Training for Compression Learning

Prompt:

Codex: Implement an optional multi-task training mode where the model occasionally sees compressed inputs directly without decompression. Add a separate loss calculation to monitor its performance on these compressed inputs. Track and log separately from normal next-bit prediction loss.

Task 8: Compression-aware Safety Telemetry

Prompt:

Codex: Adjust the existing BitTransformerLM telemetry (K, C, and S metrics) to handle compressed sequences appropriately. Modify telemetry calculations to optionally apply metrics to decompressed outputs instead of raw bitstream when compression is enabled.

Stage 5: Dashboard and Runtime Integration

Task 9: Dashboard Compression UI Toggle

Prompt:

Codex: Add a simple UI toggle labeled “Enable Compression” to the existing BitTransformerLM dashboard, controlling whether inputs and outputs are automatically compressed and decompressed. Display compression ratio metrics when enabled.

Task 10: Error Handling and User Feedback

Prompt:

Codex: Implement graceful error handling in the dashboard for compression and decompression failures. Provide clear user-facing feedback in the UI if decompression fails, along with suggestions or fallbacks.

These ten tasks enable incremental, testable integration of binary compression/decompression into BitTransformerLM without fundamentally altering the core transformer model itself.