feat: Support for Replicate.com #4779
                
     Open
            
            
          
  Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
This PR adds support for Replicate.com as described in #4728
Replicate is a provider for various AI Models for text generation, image/video/audio, embeddings and more.
As the models differ in their input and output parameters, the challenge was to provide generalized Classes to be flexible but still abstract the details.
My idea was to provide four main models: Chat, Classifier, Media and Structured Output (like Embeddings) for easy usage.
Key Changes
spring-ai-replicateWhy this Implementation
The structure differs from provider-specific model interfaces due to replicate being a host of hundreds of different models with varying input/output schemas.
So instead of having hundreds of implementations i provided four flexible adapters.
I am more than happy to iterate on this based on feedback and would be excited to contribute this to Spring AI
I use this a lot in my personal projects and think this would be a great addition.
Closes #4728