spring-projects / spring-projects/spring-batch

AI-driven, agentic batch processing with Spring Batch and Spring AI

Open
#4,820 2 comments 7 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

type: feature
Dominant language
Java
Stars
3k
Forks
2.5k
Avg merge
6d 53m
Merged PRs (30d)
3

Description

This issue is to explore the (crazy?) idea of introducing a new paradigm of how we instruct machines to perform data processing tasks in batch mode: AI-driven, agentic batch processing. Based on the following definition from Wikipedia - Agentic AI:

The core concept of agentic AI is the use of AI agents to perform automated tasks but without human intervention.

Automating tasks without human intervention is nothing more than batch processing if the tasks are data processing tasks. So
the idea here is to leverage AI agents to perform data processing tasks (ie steps) and use Spring Batch to orchestrate them in workflows (ie jobs).

Technically speaking, this would require a new implementation of the Step interface, let's say AiStep, which expects as input a configurable, clearly defined set of instructions in human language that an AI agent can perform. The step implementation would periodically save the progress state in the job repository to be able to restart the agent from where it left off in case of failure/restart. All the mechanics of state management that Spring Batch excels at still apply. AI steps could be mixed with classic (code-based) steps in the same workflow. This new feature could be shipped in a new module spring-batch-ai based on the excellent Spring AI project.

The main concern here would be determinism: How deterministic an AI agent can perform a data processing task based on a clearly defined set of instructions? In my experience with the latest models, AI agents are pretty mind-blowing good at following instructions when the prompt is precise enough.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the Spring Batch Step interface and the job repository state-management mechanics mentioned in the issue, then review the Spring AI project and the proposed spring-batch-ai module boundary. The issue does not define acceptance criteria or a concrete done condition; those would need to be established before implementation begins.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spring
Domain
ai, backend, data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.