Native reinforcement learning SDK for AI agents. An in-process learner optimizes a small, interpretable policy over discrete agent choices (e.g., "take action A", "take action B", "take action C") using AI Evaluation scores as the reward signal.
The SDK improves agents without LLM weight fine-tuning. There are no GPU fine-tune jobs and no opaque update cycles — just three pieces that run in your existing Python process:
-
The policy is a softmax distribution over
Ndiscrete actions (e.g., "take action A", "take action B", "take action C"). It lives in Python and updates in milliseconds.
-
Each episode is evaluated by three AI Evaluation evaluators —
IntentResolutionEvaluator,TaskAdherenceEvaluator, andTaskCompletionEvaluator— whose scores are combined into a single scalar reward.
-
A Reinforce-with-baseline learner updates the policy logits directly from stored episodes. Updates are tiny gradient steps that run on local compute and persist through a pluggable store — in-memory or local files by default, with Azure Cosmos DB optional.
Every episode, reward, run, and deployment is captured by the configured store — in-memory or local files by default, or Azure Cosmos DB — giving you a complete lineage and audit trail of how the policy evolved over time.
For a Python-independent installation, download agent-learn.exe or the
standalone installer from the
latest GitHub release.
The installer can add its installation directory to your user PATH, so
agent-learn works from PowerShell or Command Prompt without Python or pip.
agent-learn.exe --helpReleased versions are published to PyPI: https://pypi.org/project/agents-learning-sdk/.
py -m pip install agents-learning-sdk
agent-learn.exe --helppip installs agent-learn.exe into the active Python environment's
Scripts directory.
The agent-learn CLI provides the current task-learning-loop operations:
agent-learn list
agent-learn tasks-list <agent_id>
agent-learn task-episodes-count <agent_id> [--task-id <task_id>]
agent-learn task-episodes-list <agent_id> [--task-id <task_id>] [--limit <1-500>] [--include-incomplete]
agent-learn task-policy-init --agent-id <agent_id> --task-id <task_id> --actions ./actions.json
agent-learn score --agent-id <agent_id> [--task-id <task_id>] [--limit <1-500>]
agent-learn train --agent-id <agent_id> [--task-id <task_id>] [--limit <1-500>] [--start-date <date>] [--end-date <date>] [--skip-scoring]
agent-learn task-policy --agent-id <agent_id> --task-id <task_id>