2.7.0 (2026-10-06)
Features Added
- Added
EvaluatorsClientandEvaluatorsAsyncClient, built directly through
AIProjectClientBuilder.buildEvaluatorsClient()andbuildEvaluatorsAsyncClient(), for generally available
evaluator-version management and rubric-generation jobs. Preview evaluator definitions such as
EndpointBasedEvaluatorDefinitionrequireallowPreview(true).BetaEvaluatorsClientand
BetaEvaluatorsAsyncClientretain preview pending-upload and credential operations. - Evaluation data generation graduated to general availability on
DatasetsClientandDatasetsAsyncClient.
Added scenario-specific input and result models for evaluation, supervised fine-tuning, and reinforcement
fine-tuning. Fine-tuning scenarios remain in preview and requireallowPreview(true); their output configurations
support merge-file IDs. - Added
ConnectionType.OPEN_API(OpenAPI) andConnectionType.REMOTE_A2A(RemoteA2A) for listing and identifying
OpenAPI and remote agent-to-agent connections. - Added
ApiError.getMisalignment()to expose structured misalignment details using the OpenAI
ErrorObject.Misalignmentmodel.
Breaking Changes
- Removed
BetaDatasetsClient,BetaDatasetsAsyncClient, and their beta-builder methods. UseDatasetsClient/
DatasetsAsyncClient, built directly throughAIProjectClientBuilder, for data generation job operations.
Default requests do not send a preview feature header; setallowPreview(true)for preview data generation. - Moved evaluator-version CRUD, listing, and evaluator-generation job operations from
BetaEvaluatorsClient/
BetaEvaluatorsAsyncClienttoEvaluatorsClient/EvaluatorsAsyncClient. Build the new clients directly through
AIProjectClientBuilder; generally available operations no longer require theEvaluations=V1Previewheader. - Data generation creation methods now accept
DataGenerationJobInputsinstead ofDataGenerationJob. Construct
EvaluationDataGenerationJobInputs,SupervisedFineTuningDataGenerationJobInputs, or
ReinforcementFineTuningDataGenerationJobInputswith a name, sources, and generation configuration.
DataGenerationJobis now an immutable response model with top-levelgetName(),getSources(), and
getGenerationConfiguration()properties; its no-argument constructor andgetInputs()/setInputs(...)were
removed. - Renamed
DataGenerationJobOptionsand itsSimpleQnA,SimulationSeed,ToolUseFineTuning, andTracessubtypes to
the corresponding*DataGenerationJobConfigurationtypes.DataGenerationJobInputs.getOptions()was replaced by
getGenerationConfiguration().DataGenerationJobOutputOptionsand thegetOutputOptions()/
setOutputOptions(...)accessors were replaced by scenario-specific*DataGenerationJobOutputConfigurationtypes
andgetOutputConfiguration()/setOutputConfiguration(...)accessors on concrete input models. - Renamed
DataGenerationJobScenario.SUPERVISED_FINETUNINGandREINFORCEMENT_FINETUNINGto
SUPERVISED_FINETUNING_PREVIEWandREINFORCEMENT_FINETUNING_PREVIEW. Their wire values now use the
supervised_finetuning_previewandreinforcement_finetuning_previewdiscriminator values. - Renamed
DataGenerationJobResult.getGeneratedSamples()togetGeneratedSampleCount(). - Evaluator generation creation methods now accept
EvaluatorGenerationInputsinstead ofEvaluatorGenerationJob.
EvaluatorGenerationJobis now an immutable response model with top-level source, model, and evaluator-name
properties; its no-argument constructor andgetInputs()/setInputs(...)were removed. - Changed public constructors on polymorphic base models to protected:
DataGenerationJobInputs,
DataGenerationJobSource,EvaluationTaxonomyInput,EvaluatorDefinition,EvaluatorGenerationJobSource,
InsightRequest,RecurrenceSchedule,RoutineAction,RoutineDispatchPayload,RoutineTrigger,ScheduleTask,
TargetConfig, andTrigger. The renamedDataGenerationJobConfigurationbase also has a protected constructor.
Construct concrete subtypes instead; deserialization of unknown discriminator values remains supported.
Bugs Fixed
- Fixed OpenAI clients built from
AIProjectClientBuilderto acquire bearer tokens through the Azure HTTP pipeline.
Asynchronous clients now use asynchronous token acquisition instead of callingTokenCredential.getTokenSync(...);
synchronous clients continue to use synchronous token acquisition. - Fixed skill file uploads to omit an unset
defaultflag instead of sending the literal textnull.
Other Changes
- Organized Java samples into feature-specific folders, with synchronous and asynchronous samples together.
- Added synchronous and asynchronous evaluation samples for inline data, uploaded JSONL datasets, and native OpenAI graders.
- Added synchronous and asynchronous evaluator catalog and rubric generation samples, including metadata updates, version review, evaluation runs, and cleanup.
- Updated data generation samples for the scenario-specific input, configuration, and output models.
- Regenerated the client from the updated TypeSpec specification.
Dependency Updates
- Updated
azure-ai-agentsfrom2.6.0to2.7.0. - Updated
openai-javafrom4.45.0to4.69.0.