Aspose::Words::AI::GoogleAiModel class
Contents
[
Hide
]GoogleAiModel class
Class representing Google AI Models (Gemini) integration within Aspose.Words.
class GoogleAiModel : public Aspose::Words::AI::AiModel
Methods
| Method | Description |
|---|---|
| virtual CheckGrammar(System::SharedPtr<Aspose::Words::Document>, System::SharedPtr<Aspose::Words::AI::CheckGrammarOptions>) | Checks grammar of the provided document. This operation leverages the connected AI model for checking grammar of document. |
| static Create(Aspose::Words::AI::AiModelType) | Creates a new instance of AiModel class. |
| get_Timeout() const | Gets or sets the number of milliseconds to wait before the request to AI model times out. The default value is 100,000 milliseconds (100 seconds). |
| get_Url() override | Gets a URL of the model. The default value is “https://generativelanguage.googleapis.com/v1beta/models/". |
| GetType() const override | |
| GoogleAiModel(const System::String&) | Initializes a new instance of GoogleAiModel class. |
| GoogleAiModel(const System::String&, const System::String&) | Initializes a new instance of GoogleAiModel class. |
| Is(const System::TypeInfo&) const override | |
| set_Timeout(int32_t) | Setter for Aspose::Words::AI::AiModel::get_Timeout. |
| set_Url(System::String) override | Sets a URL of the model. The default value is “https://generativelanguage.googleapis.com/v1beta/models/". |
| Summarize(System::SharedPtr<Aspose::Words::Document>, System::SharedPtr<Aspose::Words::AI::SummarizeOptions>) override | Summarizes specified Document object. |
| Summarize(System::ArrayPtr<System::SharedPtr<Aspose::Words::Document>>, System::SharedPtr<Aspose::Words::AI::SummarizeOptions>) override | Summarizes specified Document objects. |
| Translate(System::SharedPtr<Aspose::Words::Document>, Aspose::Words::AI::Language) override | Translates a specified document. |
| static Type() | |
| WithApiKey(const System::String&) | Sets a specified API key to the model. |
Examples
Shows how to summarize text using OpenAI and Google models.
auto firstDoc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Big document.docx");
auto secondDoc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Document.docx");
System::String apiKey = System::Environment::GetEnvironmentVariable(u"API_KEY");
// Use OpenAI or Google generative language models.
System::SharedPtr<Aspose::Words::AI::AiModel> model = (System::ExplicitCast<Aspose::Words::AI::OpenAiModel>(Aspose::Words::AI::AiModel::Create(Aspose::Words::AI::AiModelType::Gpt4OMini)->WithApiKey(apiKey)))->WithOrganization(u"Organization")->WithProject(u"Project");
auto options = System::MakeObject<Aspose::Words::AI::SummarizeOptions>();
options->set_SummaryLength(Aspose::Words::AI::SummaryLength::Short);
System::SharedPtr<Aspose::Words::Document> oneDocumentSummary = model->Summarize(firstDoc, options);
oneDocumentSummary->Save(get_ArtifactsDir() + u"AI.AiSummarize.One.docx");
options->set_SummaryLength(Aspose::Words::AI::SummaryLength::Long);
System::SharedPtr<Aspose::Words::Document> multiDocumentSummary = model->Summarize(System::MakeArray<System::SharedPtr<Aspose::Words::Document>>({firstDoc, secondDoc}), options);
multiDocumentSummary->Save(get_ArtifactsDir() + u"AI.AiSummarize.Multi.docx");
Shows how to use google AI model.
System::String apiKey = System::Environment::GetEnvironmentVariable(u"API_KEY");
auto model = System::MakeObject<Aspose::Words::AI::GoogleAiModel>(u"gemini-flash-latest", apiKey);
auto doc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Big document.docx");
auto summarizeOptions = System::MakeObject<Aspose::Words::AI::SummarizeOptions>();
summarizeOptions->set_SummaryLength(Aspose::Words::AI::SummaryLength::VeryShort);
System::SharedPtr<Aspose::Words::Document> summary = model->Summarize(doc, summarizeOptions);
See Also
- Class AiModel
- Namespace Aspose::Words::AI
- Library Aspose.Words for C++