Files
ruvnet--RuView/vendor/ruvector/crates/ruvllm/src/training/mod.rs
T

78 lines
2.6 KiB
Rust

//! # Training Module
//!
//! This module provides training data generation and fine-tuning utilities
//! for RuvLTRA models, including Claude Flow task datasets and MCP tool training.
//!
//! ## Submodules
//!
//! - [`claude_dataset`]: Task routing dataset generation
//! - [`grpo`]: GRPO (Group Relative Policy Optimization) for RL
//! - [`tool_dataset`]: MCP tool calling dataset generation (140+ tools)
//! - [`mcp_tools`]: MCP tool trainer with GRPO-based fine-tuning
//!
//! ## Example: Tool Use Fine-Tuning
//!
//! ```rust,ignore
//! use ruvllm::training::{McpToolTrainer, McpTrainingConfig, ToolDatasetConfig};
//!
//! // Create trainer
//! let config = McpTrainingConfig::default();
//! let mut trainer = McpToolTrainer::new(config)?;
//! trainer.load_tool_definitions()?;
//!
//! // Generate training data
//! let dataset = trainer.generate_tool_dataset(ToolDatasetConfig::comprehensive())?;
//! println!("Generated {} examples", dataset.len());
//!
//! // Evaluate baseline
//! let metrics = trainer.evaluate_tool_accuracy(&dataset.examples)?;
//! println!("Baseline accuracy: {:.2}%", metrics.tool_accuracy * 100.0);
//! ```
pub mod claude_dataset;
pub mod contrastive;
pub mod grpo;
pub mod mcp_tools;
pub mod real_trainer;
pub mod tool_dataset;
#[cfg(test)]
mod tests;
// Claude dataset exports
pub use claude_dataset::{
AugmentationConfig, ClaudeTaskDataset, ClaudeTaskExample, ComplexityLevel, DatasetConfig,
DatasetGenerator, DatasetStats, DomainType, TaskCategory, TaskMetadata,
};
// GRPO optimizer exports
pub use grpo::{
GrpoBatch, GrpoConfig, GrpoOptimizer, GrpoSample, GrpoStats, GrpoUpdateResult, SampleGroup,
};
// MCP tool training exports
pub use mcp_tools::{
EvaluationMetrics, McpToolTrainer, McpTrainingConfig, StepBuilder, ToolTrajectory,
TrainingCheckpoint, TrainingResult, TrainingStats, TrajectoryBuilder, TrajectoryMetadata,
TrajectoryStep,
};
// Tool dataset exports
pub use tool_dataset::{
DifficultyLevel, DifficultyWeights, McpToolDef, ParamType, ToolCallDataset, ToolCallExample,
ToolCategory as McpToolCategory, ToolDatasetConfig, ToolDatasetStats, ToolParam,
};
// Contrastive learning exports
pub use contrastive::{
AgentEmbedding, ContrastiveConfig, ContrastiveTrainer, TrainingResult as ContrastiveResult,
TrainingStats as ContrastiveStats, TrainingTriplet, AGENT_DESCRIPTIONS,
};
// Real trainer exports (Candle-based with GGUF export)
pub use real_trainer::{
run_training_pipeline, EpochStats, GgufExportMetadata, GgufExportResult, GrpoEvaluator,
GrpoFeedback, LayerMetadata, RealContrastiveTrainer, RealTrainingConfig, RealTrainingResult,
TrainingConfigMeta,
};