Package org.mockserver.llm.codec
Class GeminiCodec
java.lang.Object
org.mockserver.llm.codec.GeminiCodec
- All Implemented Interfaces:
ProviderCodec
Codec for Google Gemini generateContent API (version v1beta-2025).
Encodes MockServer Completion objects into Gemini-format HTTP responses
for both non-streaming and streaming (SSE) paths.
Gemini uses candidates with content.parts instead of
the OpenAI choices structure. Streaming sends SSE data:
chunks each containing a partial candidates array.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondecode(HttpRequest request) encode(Completion completion, String model) encodeEmbedding(EmbeddingResponse embedding, String input) Encodes a GeminiembedContentresponse (POST /v1beta/models/{model}:embedContent).encodeStreaming(Completion completion, String model, StreamingPhysics physics) provider()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.mockserver.llm.ProviderCodec
encodeEmbedding, encodeRerank, streamingFormat
-
Constructor Details
-
GeminiCodec
public GeminiCodec()
-
-
Method Details
-
provider
- Specified by:
providerin interfaceProviderCodec
-
apiVersion
- Specified by:
apiVersionin interfaceProviderCodec
-
encode
- Specified by:
encodein interfaceProviderCodec
-
encodeStreaming
public List<SseEvent> encodeStreaming(Completion completion, String model, StreamingPhysics physics) - Specified by:
encodeStreamingin interfaceProviderCodec
-
decode
- Specified by:
decodein interfaceProviderCodec
-
encodeEmbedding
Encodes a GeminiembedContentresponse (POST /v1beta/models/{model}:embedContent). The response carries a singleembeddingobject with avaluesarray ({"embedding":{"values":[...]}}). The Gemini default dimensionality fortext-embedding-004is 768.- Specified by:
encodeEmbeddingin interfaceProviderCodec
-