GoogleAiModel
Inheritance: java.lang.Object, com.aspose.words.AiModel
public class GoogleAiModel extends AiModel
Class representing Google AI Models (Gemini) integration within Aspose.Words.
Remarks:
Please refer to https://ai.google.dev/gemini-api/docs/models for Gemini models details.
Examples:
Shows how to use google AI model.
String apiKey = System.getenv("API_KEY");
GoogleAiModel model = new GoogleAiModel("gemini-flash-latest", apiKey);
Document doc = new Document(getMyDir() + "Big document.docx");
SummarizeOptions summarizeOptions = new SummarizeOptions(); { summarizeOptions.setSummaryLength(SummaryLength.VERY_SHORT); }
Document summary = model.summarize(doc, summarizeOptions);
Shows how to summarize text using OpenAI and Google models.
Document firstDoc = new Document(getMyDir() + "Big document.docx");
Document secondDoc = new Document(getMyDir() + "Document.docx");
String apiKey = System.getenv("API_KEY");
// Use OpenAI or Google generative language models.
AiModel model = ((OpenAiModel)AiModel.create(AiModelType.GPT_4_O_MINI).withApiKey(apiKey)).withOrganization("Organization").withProject("Project");
SummarizeOptions options = new SummarizeOptions();
options.setSummaryLength(SummaryLength.SHORT);
Document oneDocumentSummary = model.summarize(firstDoc, options);
oneDocumentSummary.save(getArtifactsDir() + "AI.AiSummarize.One.docx");
options.setSummaryLength(SummaryLength.LONG);
Document multiDocumentSummary = model.summarize(new Document[] { firstDoc, secondDoc }, options);
multiDocumentSummary.save(getArtifactsDir() + "AI.AiSummarize.Multi.docx");
Constructors
| Constructor | Description |
|---|---|
| GoogleAiModel(String name) | Initializes a new instance of GoogleAiModel class. |
| GoogleAiModel(String name, String apiKey) | Initializes a new instance of GoogleAiModel class. |
Methods
| Method | Description |
|---|---|
| checkGrammar(Document sourceDocument, CheckGrammarOptions options) | Checks grammar of the provided document. |
| create(int modelType) | |
| getTimeout() | Gets the number of milliseconds to wait before the request to AI model times out. |
| getUrl() | Gets a URL of the model. |
| setTimeout(int value) | Sets the number of milliseconds to wait before the request to AI model times out. |
| setUrl(String value) | Sets a URL of the model. |
| summarize(Document doc) | |
| summarize(Document doc, SummarizeOptions options) | Summarizes specified Document object. |
| summarize(Document[] docs) | |
| summarize(Document[] docs, SummarizeOptions options) | Summarizes specified Document objects. |
| translate(Document doc, int language) | |
| withApiKey(String apiKey) | Sets a specified API key to the model. |
GoogleAiModel(String name)
public GoogleAiModel(String name)
Initializes a new instance of GoogleAiModel class.
Examples:
Shows how to use google AI model.
String apiKey = System.getenv("API_KEY");
GoogleAiModel model = new GoogleAiModel("gemini-flash-latest", apiKey);
Document doc = new Document(getMyDir() + "Big document.docx");
SummarizeOptions summarizeOptions = new SummarizeOptions(); { summarizeOptions.setSummaryLength(SummaryLength.VERY_SHORT); }
Document summary = model.summarize(doc, summarizeOptions);
Parameters:
| Parameter | Type | Description |
|---|---|---|
| name | java.lang.String | The name of the model. For example, gemini-2.5-flash. |
GoogleAiModel(String name, String apiKey)
public GoogleAiModel(String name, String apiKey)
Initializes a new instance of GoogleAiModel class.
Examples:
Shows how to use google AI model.
String apiKey = System.getenv("API_KEY");
GoogleAiModel model = new GoogleAiModel("gemini-flash-latest", apiKey);
Document doc = new Document(getMyDir() + "Big document.docx");
SummarizeOptions summarizeOptions = new SummarizeOptions(); { summarizeOptions.setSummaryLength(SummaryLength.VERY_SHORT); }
Document summary = model.summarize(doc, summarizeOptions);
Parameters:
| Parameter | Type | Description |
|---|---|---|
| name | java.lang.String | The name of the model. For example, gemini-2.5-flash. |
| apiKey | java.lang.String | The API key to use the Gemini API. Please refer to https://ai.google.dev/gemini-api/docs/api-key for details. |
checkGrammar(Document sourceDocument, CheckGrammarOptions options)
public Document checkGrammar(Document sourceDocument, CheckGrammarOptions options)
Checks grammar of the provided document. This operation leverages the connected AI model for checking grammar of document.
Examples:
Shows how to check the grammar of a document.
Document doc = new Document(getMyDir() + "Big document.docx");
String apiKey = System.getenv("API_KEY");
// Use OpenAI generative language models.
AiModel model = AiModel.create(AiModelType.GPT_4_O_MINI).withApiKey(apiKey);
CheckGrammarOptions grammarOptions = new CheckGrammarOptions();
grammarOptions.setImproveStylistics(true);
Document proofedDoc = model.checkGrammar(doc, grammarOptions);
proofedDoc.save(getArtifactsDir() + "AI.AiGrammar.docx");
Parameters:
| Parameter | Type | Description |
|---|---|---|
| sourceDocument | Document | The document being checked for grammar. |
| options | CheckGrammarOptions | Optional settings to control how grammar will be checked. |
Returns: Document - A new Document with checked grammar.
create(int modelType)
public static AiModel create(int modelType)
Parameters:
| Parameter | Type | Description |
|---|---|---|
| modelType | int |
Returns: AiModel
getTimeout()
public int getTimeout()
Gets the number of milliseconds to wait before the request to AI model times out. The default value is 100,000 milliseconds (100 seconds).
Examples:
Shows how to change model default timeout.
String apiKey = System.getenv("API_KEY");
AiModel model = AiModel.create(AiModelType.GPT_4_O_MINI).withApiKey(apiKey);
// Default value 100000ms.
model.setTimeout(250000);
Returns: int - The number of milliseconds to wait before the request to AI model times out.
getUrl()
public String getUrl()
Gets a URL of the model. The default value is “https://generativelanguage.googleapis.com/v1beta/models/".
Returns: java.lang.String - A URL of the model.
setTimeout(int value)
public void setTimeout(int value)
Sets the number of milliseconds to wait before the request to AI model times out. The default value is 100,000 milliseconds (100 seconds).
Examples:
Shows how to change model default timeout.
String apiKey = System.getenv("API_KEY");
AiModel model = AiModel.create(AiModelType.GPT_4_O_MINI).withApiKey(apiKey);
// Default value 100000ms.
model.setTimeout(250000);
Parameters:
| Parameter | Type | Description |
|---|---|---|
| value | int | The number of milliseconds to wait before the request to AI model times out. |
setUrl(String value)
public void setUrl(String value)
Sets a URL of the model. The default value is “https://generativelanguage.googleapis.com/v1beta/models/".
Parameters:
| Parameter | Type | Description |
|---|---|---|
| value | java.lang.String | A URL of the model. |
summarize(Document doc)
public Document summarize(Document doc)
Parameters:
| Parameter | Type | Description |
|---|---|---|
| doc | Document |
Returns: Document
summarize(Document doc, SummarizeOptions options)
public Document summarize(Document doc, SummarizeOptions options)
Summarizes specified Document object.
Parameters:
| Parameter | Type | Description |
|---|---|---|
| doc | Document | |
| options | SummarizeOptions |
Returns: Document
summarize(Document[] docs)
public Document summarize(Document[] docs)
Parameters:
| Parameter | Type | Description |
|---|---|---|
| docs | Document[] |
Returns: Document
summarize(Document[] docs, SummarizeOptions options)
public Document summarize(Document[] docs, SummarizeOptions options)
Summarizes specified Document objects.
Parameters:
| Parameter | Type | Description |
|---|---|---|
| docs | Document[] | |
| options | SummarizeOptions |
Returns: Document
translate(Document doc, int language)
public Document translate(Document doc, int language)
Parameters:
| Parameter | Type | Description |
|---|---|---|
| doc | Document | |
| language | int |
Returns: Document
withApiKey(String apiKey)
public AiModel withApiKey(String apiKey)
Sets a specified API key to the model.
Examples:
Shows how to summarize text using OpenAI and Google models.
Document firstDoc = new Document(getMyDir() + "Big document.docx");
Document secondDoc = new Document(getMyDir() + "Document.docx");
String apiKey = System.getenv("API_KEY");
// Use OpenAI or Google generative language models.
AiModel model = ((OpenAiModel)AiModel.create(AiModelType.GPT_4_O_MINI).withApiKey(apiKey)).withOrganization("Organization").withProject("Project");
SummarizeOptions options = new SummarizeOptions();
options.setSummaryLength(SummaryLength.SHORT);
Document oneDocumentSummary = model.summarize(firstDoc, options);
oneDocumentSummary.save(getArtifactsDir() + "AI.AiSummarize.One.docx");
options.setSummaryLength(SummaryLength.LONG);
Document multiDocumentSummary = model.summarize(new Document[] { firstDoc, secondDoc }, options);
multiDocumentSummary.save(getArtifactsDir() + "AI.AiSummarize.Multi.docx");
Parameters:
| Parameter | Type | Description |
|---|---|---|
| apiKey | java.lang.String |
Returns: AiModel