SkillOpt  by microsoft

Text-space optimization for LLM agent skills

Created 1 month ago
5,683 stars

Top 8.8% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

SkillOpt optimizes reusable natural-language skills for frozen LLM agents. It enables self-evolving agent capabilities by training skills via trajectory-driven edits and validation gates, without modifying core model weights. This approach benefits researchers and engineers seeking to enhance LLM agent performance and adaptability.

How It Works

SkillOpt treats agent skill training akin to neural network training, employing concepts like epochs, batch sizes, and learning rates. Its core innovation lies in "trajectory-driven edits" and "validation-gated updates" to refine skills. This method allows for iterative improvement and the generation of deployable best_skill.md artifacts without altering the underlying LLM's weights, promoting efficient skill acquisition.

Quick Start & Requirements

  • Installation requires Python 3.10+ and a standard pip install -e . after cloning the repository.
  • Configuration involves setting up API credentials for LLM providers (Azure OpenAI, OpenAI, Anthropic, Qwen) via a .env file.
  • Data preparation is crucial: users must provide data in a split_dir containing train/, val/, and test/ subdirectories, each with a JSON file formatted according to benchmark specifications. Benchmark datasets are not included.
  • An optional ALFWorld benchmark installation and WebUI dashboard are available.
  • A demo video is linked.

Highlighted Details

  • Supports training and evaluation across six benchmarks: SearchQA, ALFWorld, DocVQA, LiveMathematicianBench, Spreadsheet
Health Check
Last Commit

2 days ago

Responsiveness

Inactive

Pull Requests (30d)
22
Issues (30d)
17
Star History
5,709 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.