googleapis / googleapis/google-cloud-java
Add built-in support for exposing the response schema as a structured object map
- Lingua principale
- Java
- Stelle
- 2.1k
- Fork
- 1.2k
- Merge medio
- 1g 23h
- PR unite (30g)
- 154
Descrizione
**Is your feature request related to a problem? Please describe.**
Currently, when using the Java Vertex AI SDK’s `generateContent()` (e.g. via `ContentMaker`), we only get back a raw JSON string. Client code must separately construct a JSON Schema, attach it in `GenerationConfig`, then manually parse the returned JSON—either via Jackson’s `ObjectMapper` or via Protobuf’s `JsonFormat`. This boilerplate is brittle, error-prone, and hides what fields the model will actually return.
**Describe the solution you’d like**
1. Expose the active response schema programmatically. For example:
```java
Schema schema = model.getResponseSchema();
```
or as metadata on `GenerateContentResponse`.
2. Provide a one-step parser that binds the response into a POJO, Map, or Protobuf message, e.g.
```java
MyResult result = response.getTypedContent(MyResult.class);
```
under the hood handling all JSON Schema validation and mapping.
**Describe alternatives you’ve considered**
* Continuing to manually wire up JSON Schema definitions + `GenerationConfig`.
* Writing custom helper utilities in each codebase to wrap `ObjectMapper` or `JsonFormat`.
* Using generic `Map` parsing and then casting fields at runtime.
**Additional context**
* Sample desired usage:
```java
Schema schema = model.getResponseSchema();
MyResponse resp = model.generateContent(prompt, config)
.getTypedContent(MyResponse.class);
```
* This would eliminate repetitive boilerplate, reduce parsing errors, and let developers discover response fields at compile time.
Guida per i contributori
Apri la guida per i contributori
Valutazione
Questa issue non è ancora stata valutata.