π€ Model Card for dia-intent-sequencer-robot-arm-adapter
π§ Model Details
This model is a parameter-efficient fine-tuning (PEFT) LoRA adapter, designed as a demonstration and testbed to evaluate intent sequencing using the DIA DSL module with a custom robotic arm I built for experimentation. It fine-tunes microsoft/Phi-4-mini-instruct
to act as an intent sequencer for controlling that arm as it manages an inventory of screws.
Specifically, the adapter evaluates the model's capability to:
- π Attempt to dynamically resolve missing or ambiguous parameters using runtime-accessible context
- π§ Clarify intent through multi-turn interaction
- π Map natural language instructions to executable tool calls for physical actions
It is provided for demonstration and experimentation purposes only.
- Model type: LoRA adapter (PEFT)
- Language(s): English
- License: MIT
- Finetuned from model:
microsoft/Phi-4-mini-instruct
πΊ Here's a short demo video:
π Uses
This adapter fine-tunes Phi-4-mini-instruct
to convert user commands for controlling my custom robotic arm, which manages an inventory of screws, into structured tool calls using the DIA DSL.
For an example of how this model can be used in a demo environment, see robot_arm.py
.
ποΈ Training Details
Trained on a6188466/dia-intent-sequencer-robot-arm-dataset using the dsl
adapter from fifo-tool-datasets
and fine_tune.py
.
- Dataset: 210 curated examples designed for my custom robotic arm handling an inventory of screws
- Epochs: 42
- Batch size: 1
- Precision: bf16
- Framework:
transformers
,peft
,trl
(SFTTrainer)
βοΈ Training Hyperparameters
{
"num_train_epochs": 42,
"train_batch_size": 1,
"learning_rate": 5e-06,
"lr_scheduler_type": "cosine",
"warmup_ratio": 0.2,
"bf16": true,
"seed": 0
}
π Training Results
{
"mean_token_accuracy": 0.9903121322393418,
"total_flos": 5.500569475886285e+16,
"train_loss": 0.2587171609439547,
"train_runtime": 2130.5227,
"train_samples_per_second": 4.14,
"train_steps_per_second": 4.14,
"final_learning_rate": 2.4779503893235247e-13
}
β Evaluation
Two types of evaluation were performed:
- Live evaluation on the robot
Intent-to-action translation was tested directly on my robot. The goal was to verify that the generated DSL produced the expected behavior by comparing the robot's actual actions to expected outcomes. - Held-out test set
Since DSL evaluation normally requires execution or simulation on the robot, the toolrobot_arm_eval_performance.py
was used to process the test set and compare DSL outputs. Manual review was conducted for mismatches to assess functional equivalence.
- Live evaluation on the robot
Results:
- On the held-out test set (26 examples covering my robotic arm functions and inventory logic):
- β 20 were exactly as expected
- π 3 were functionally equivalent and resulted in the same execution path
- β οΈ 3 were functionally equivalent but used a suboptimal execution path
- Live evaluation demonstrated acceptable performance
- On the held-out test set (26 examples covering my robotic arm functions and inventory logic):
These results suggest that the DIA DSL has potential for controlling my custom robotic arm that manages a screw inventory.
β οΈ Disclaimer & Limitations
This adapter is intended solely as a demonstration and testbed for the DIA DSL module, showcasing its potential for controlling my custom robotic arm that manages a screw inventory. It should not be used beyond that scope.
This adapter is provided as is, without warranties or guarantees of any kind. It is intended for demonstration and experimentation only.
πͺͺ License
MIT License. See LICENSE for details.
π¬ Contact
For questions, feedback, or bug reports, please open an issue on GitHub or start a discussion on the Hugging Face Hub.
- Downloads last month
- 8
Model tree for a6188466/dia-intent-sequencer-robot-arm-adapter
Base model
microsoft/Phi-4-mini-instruct